diff --git a/java/res/values/strings.xml b/java/res/values/strings.xml index 10cfc786b9940439bdc8e4ce60650ecb5562a039..673e9dd5a42e9c36ea28051c31d2b3a9ddedf26b 100644 --- a/java/res/values/strings.xml +++ b/java/res/values/strings.xml @@ -107,6 +107,9 @@ <!-- Description for option to enable auto capitalization of sentences --> <string name="auto_cap_summary">Capitalize the first word of each sentence</string> + <!-- Option to edit personal dictionary. [CHAR_LIMIT=30]--> + <string name="edit_personal_dictionary">Personal dictionary</string> + <!-- Option to configure dictionaries --> <string name="configure_dictionaries_title">Add-on dictionaries</string> <!-- Name of the main dictionary, as opposed to auxiliary dictionaries (medical/entertainment/sports...) --> diff --git a/java/res/xml/prefs.xml b/java/res/xml/prefs.xml index 1581e5fa18a1d813af748c677fc8c9ff4f096ef3..6de95f48e81eed4806633b71864a6f31303b76f2 100644 --- a/java/res/xml/prefs.xml +++ b/java/res/xml/prefs.xml @@ -53,6 +53,11 @@ <PreferenceCategory android:title="@string/correction_category" android:key="correction_settings"> + <PreferenceScreen + android:key="edit_personal_dictionary" + android:title="@string/edit_personal_dictionary"> + <intent android:action="android.settings.USER_DICTIONARY_SETTINGS" /> + </PreferenceScreen> <PreferenceScreen android:key="configure_dictionaries_key" android:title="@string/configure_dictionaries_title"> diff --git a/java/src/com/android/inputmethod/latin/Settings.java b/java/src/com/android/inputmethod/latin/Settings.java index 72e08700ae636eee07e089cc4aca6c64f1c91b3e..f5155d10b2107cb616e0463d38da1cb8e16f8d7c 100644 --- a/java/src/com/android/inputmethod/latin/Settings.java +++ b/java/src/com/android/inputmethod/latin/Settings.java @@ -36,6 +36,7 @@ public final class Settings implements SharedPreferences.OnSharedPreferenceChang public static final String PREF_POPUP_ON = "popup_on"; public static final String PREF_VOICE_MODE = "voice_mode"; public static final String PREF_CORRECTION_SETTINGS = "correction_settings"; + public static final String PREF_EDIT_PERSONAL_DICTIONARY = "edit_personal_dictionary"; public static final String PREF_CONFIGURE_DICTIONARIES_KEY = "configure_dictionaries_key"; public static final String PREF_AUTO_CORRECTION_THRESHOLD = "auto_correction_threshold"; public static final String PREF_SHOW_SUGGESTIONS_SETTING = "show_suggestions_setting"; diff --git a/java/src/com/android/inputmethod/latin/SettingsFragment.java b/java/src/com/android/inputmethod/latin/SettingsFragment.java index 79036c2766bac1f7a9127658f80182b9d35a16c8..6c856ba7ec75a7163d2e29693775a312eff27083 100644 --- a/java/src/com/android/inputmethod/latin/SettingsFragment.java +++ b/java/src/com/android/inputmethod/latin/SettingsFragment.java @@ -20,6 +20,8 @@ import android.app.backup.BackupManager; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; +import android.content.pm.PackageManager; +import android.content.pm.ResolveInfo; import android.content.res.Resources; import android.media.AudioManager; import android.os.Bundle; @@ -29,6 +31,7 @@ import android.preference.Preference; import android.preference.Preference.OnPreferenceClickListener; import android.preference.PreferenceGroup; import android.preference.PreferenceScreen; +import android.util.Log; import android.view.inputmethod.InputMethodSubtype; import com.android.inputmethod.dictionarypack.DictionarySettingsActivity; @@ -38,6 +41,8 @@ import com.android.inputmethodcommon.InputMethodSettingsFragment; public final class SettingsFragment extends InputMethodSettingsFragment implements SharedPreferences.OnSharedPreferenceChangeListener { + private static final String TAG = SettingsFragment.class.getSimpleName(); + private ListPreference mVoicePreference; private ListPreference mShowCorrectionSuggestionsPreference; private ListPreference mAutoCorrectionThresholdPreference; @@ -183,6 +188,16 @@ public final class SettingsFragment extends InputMethodSettingsFragment textCorrectionGroup.removePreference(dictionaryLink); } + final Preference editPersonalDictionary = + findPreference(Settings.PREF_EDIT_PERSONAL_DICTIONARY); + final Intent editPersonalDictionaryIntent = editPersonalDictionary.getIntent(); + final ResolveInfo ri = context.getPackageManager().resolveActivity( + editPersonalDictionaryIntent, PackageManager.MATCH_DEFAULT_ONLY); + if (ri == null) { + // TODO: Set a intent that invokes our own edit personal dictionary activity. + Log.w(TAG, "No activity that responds to " + editPersonalDictionaryIntent.getAction()); + } + if (!Settings.readFromBuildConfigIfGestureInputEnabled(res)) { removePreference(Settings.PREF_GESTURE_SETTINGS, getPreferenceScreen()); }