diff options
author | Michael Gernoth <michael@gernoth.net> | 2015-05-07 16:08:46 +0200 |
---|---|---|
committer | Adnan Begovic <adnan@cyngn.com> | 2015-10-29 17:36:31 -0700 |
commit | 5a0870b86f0ea1c6b327f9b7c42fd5c3e4b3b2d7 (patch) | |
tree | 6ffd7ae8a33dc93cd28b1393e5ad583abdea982f | |
parent | ba4c43f77699721dff7c2536ee61c0f8c18ea446 (diff) | |
download | packages_apps_Settings-5a0870b86f0ea1c6b327f9b7c42fd5c3e4b3b2d7.zip packages_apps_Settings-5a0870b86f0ea1c6b327f9b7c42fd5c3e4b3b2d7.tar.gz packages_apps_Settings-5a0870b86f0ea1c6b327f9b7c42fd5c3e4b3b2d7.tar.bz2 |
Revert "Remove non-functional hardware keyboard options."
The removed options are actually functional on QWERTY-phones and allow
users to disable auto-correction, auto-capitalization and auto-
punctuation when the hw-keyboard is used. So get these settings back
and change the CheckBox to a Switch while doing that. Also add
back the search-indexes for the options.
This reverts commits 572f90bdf8183e42c522fdf041b20b064ffc8549 and
bf55863b41efc3ad29c752f133f8739aac35d103.
Change-Id: I4cc37d1c0cde638b50a2ed532c37d031b5ed73d2
-rw-r--r-- | res/xml/language_settings.xml | 28 | ||||
-rw-r--r-- | src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java | 54 |
2 files changed, 82 insertions, 0 deletions
diff --git a/res/xml/language_settings.xml b/res/xml/language_settings.xml index 5cd619d..d4bcdfc 100644 --- a/res/xml/language_settings.xml +++ b/res/xml/language_settings.xml @@ -57,6 +57,34 @@ android:persistent="false"> <!-- Additional preference screens are inserted here programmatically with low order values to set the key map of each attached keyboard. --> + + <SwitchPreference + android:key="auto_replace" + android:title="@string/auto_replace" + android:summaryOn="@string/auto_replace_summary" + android:summaryOff="@string/auto_replace_summary" + android:order="1000" + android:persistent="false" + /> + + <SwitchPreference + android:key="auto_caps" + android:title="@string/auto_caps" + android:summaryOn="@string/auto_caps_summary" + android:summaryOff="@string/auto_caps_summary" + android:order="1001" + android:persistent="false" + /> + + <SwitchPreference + android:key="auto_punctuate" + android:title="@string/auto_punctuate" + android:summaryOn="@string/auto_punctuate_summary" + android:summaryOff="@string/auto_punctuate_summary" + android:order="1002" + android:persistent="false" + /> + </PreferenceCategory> <com.android.settings.cyanogenmod.SystemSettingSwitchPreference diff --git a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java index 03e8cb5..e1aed8c 100644 --- a/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java +++ b/src/com/android/settings/inputmethod/InputMethodAndLanguageSettings.java @@ -99,6 +99,14 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment // false: on ICS or later private static final boolean SHOW_INPUT_METHOD_SWITCHER_SETTINGS = false; + private static final String[] sSystemSettingNames = { + System.TEXT_AUTO_REPLACE, System.TEXT_AUTO_CAPS, System.TEXT_AUTO_PUNCTUATE, + }; + + private static final String[] sHardKeyboardKeys = { + "auto_replace", "auto_caps", "auto_punctuate", + }; + private int mDefaultInputMethodSelectorVisibility = 0; private ListPreference mShowInputMethodSelectorPref; private SwitchPreference mStylusIconEnabled; @@ -348,6 +356,16 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment } } + // Hard keyboard + if (!mHardKeyboardPreferenceList.isEmpty()) { + for (int i = 0; i < sHardKeyboardKeys.length; ++i) { + SwitchPreference swPref = (SwitchPreference) + mHardKeyboardCategory.findPreference(sHardKeyboardKeys[i]); + swPref.setChecked( + System.getInt(getContentResolver(), sSystemSettingNames[i], 1) > 0); + } + } + updateInputDevices(); // Refresh internal states in mInputMethodSettingValues to keep the latest @@ -411,6 +429,15 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment pref.isChecked() ? 1 : 0); return true; } + if (!mHardKeyboardPreferenceList.isEmpty()) { + for (int i = 0; i < sHardKeyboardKeys.length; ++i) { + if (pref == mHardKeyboardCategory.findPreference(sHardKeyboardKeys[i])) { + System.putInt(getContentResolver(), sSystemSettingNames[i], + pref.isChecked() ? 1 : 0); + return true; + } + } + } } else if (preference == mHighTouchSensitivity) { return mCmHardwareManager.set(CmHardwareManager.FEATURE_HIGH_TOUCH_SENSITIVITY, mHighTouchSensitivity.isChecked()); @@ -896,6 +923,33 @@ public class InputMethodAndLanguageSettings extends SettingsPreferenceFragment R.string.builtin_keyboard_settings_title); indexable.screenTitle = screenTitle; indexables.add(indexable); + + // Auto replace. + indexable = new SearchIndexableRaw(context); + indexable.key = "auto_replace"; + indexable.title = context.getString(R.string.auto_replace); + indexable.summaryOn = context.getString(R.string.auto_replace_summary); + indexable.summaryOff = context.getString(R.string.auto_replace_summary); + indexable.screenTitle = screenTitle; + indexables.add(indexable); + + // Auto caps. + indexable = new SearchIndexableRaw(context); + indexable.key = "auto_caps"; + indexable.title = context.getString(R.string.auto_caps); + indexable.summaryOn = context.getString(R.string.auto_caps_summary); + indexable.summaryOff = context.getString(R.string.auto_caps_summary); + indexable.screenTitle = screenTitle; + indexables.add(indexable); + + // Auto punctuate. + indexable = new SearchIndexableRaw(context); + indexable.key = "auto_punctuate"; + indexable.title = context.getString(R.string.auto_punctuate); + indexable.summaryOn = context.getString(R.string.auto_punctuate_summary); + indexable.summaryOff = context.getString(R.string.auto_punctuate_summary); + indexable.screenTitle = screenTitle; + indexables.add(indexable); } // Text-to-speech. |