am 116e58c4: Remove autocorrection aggressiveness settings.
* commit '116e58c437526ea2503564317e2731b8126acaa4': Remove autocorrection aggressiveness settings.main
commit
3b08ef1d5b
|
@ -41,13 +41,11 @@
|
||||||
android:summary="@string/prefs_block_potentially_offensive_summary"
|
android:summary="@string/prefs_block_potentially_offensive_summary"
|
||||||
android:defaultValue="@bool/config_block_potentially_offensive"
|
android:defaultValue="@bool/config_block_potentially_offensive"
|
||||||
android:persistent="true" />
|
android:persistent="true" />
|
||||||
<ListPreference
|
<CheckBoxPreference
|
||||||
android:key="auto_correction_threshold"
|
android:key="pref_key_auto_correction"
|
||||||
android:title="@string/auto_correction"
|
android:title="@string/auto_correction"
|
||||||
android:summary="@string/auto_correction_summary"
|
android:summary="@string/auto_correction_summary"
|
||||||
android:entryValues="@array/auto_correction_threshold_mode_indexes"
|
android:defaultValue="true"
|
||||||
android:entries="@array/auto_correction_threshold_modes"
|
|
||||||
android:defaultValue="@string/auto_correction_threshold_mode_index_modest"
|
|
||||||
android:persistent="true" />
|
android:persistent="true" />
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:key="show_suggestions"
|
android:key="show_suggestions"
|
||||||
|
|
|
@ -57,7 +57,10 @@ public final class Settings implements SharedPreferences.OnSharedPreferenceChang
|
||||||
public static final String PREF_VOICE_INPUT_KEY = "pref_voice_input_key";
|
public static final String PREF_VOICE_INPUT_KEY = "pref_voice_input_key";
|
||||||
public static final String PREF_EDIT_PERSONAL_DICTIONARY = "edit_personal_dictionary";
|
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_CONFIGURE_DICTIONARIES_KEY = "configure_dictionaries_key";
|
||||||
public static final String PREF_AUTO_CORRECTION_THRESHOLD = "auto_correction_threshold";
|
// PREF_AUTO_CORRECTION_THRESHOLD_OBSOLETE is obsolete. Use PREF_AUTO_CORRECTION instead.
|
||||||
|
public static final String PREF_AUTO_CORRECTION_THRESHOLD_OBSOLETE =
|
||||||
|
"auto_correction_threshold";
|
||||||
|
public static final String PREF_AUTO_CORRECTION = "pref_key_auto_correction";
|
||||||
// PREF_SHOW_SUGGESTIONS_SETTING_OBSOLETE is obsolete. Use PREF_SHOW_SUGGESTIONS instead.
|
// PREF_SHOW_SUGGESTIONS_SETTING_OBSOLETE is obsolete. Use PREF_SHOW_SUGGESTIONS instead.
|
||||||
public static final String PREF_SHOW_SUGGESTIONS_SETTING_OBSOLETE = "show_suggestions_setting";
|
public static final String PREF_SHOW_SUGGESTIONS_SETTING_OBSOLETE = "show_suggestions_setting";
|
||||||
public static final String PREF_SHOW_SUGGESTIONS = "show_suggestions";
|
public static final String PREF_SHOW_SUGGESTIONS = "show_suggestions";
|
||||||
|
@ -139,6 +142,7 @@ public final class Settings implements SharedPreferences.OnSharedPreferenceChang
|
||||||
mRes = context.getResources();
|
mRes = context.getResources();
|
||||||
mPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
mPrefs = PreferenceManager.getDefaultSharedPreferences(context);
|
||||||
mPrefs.registerOnSharedPreferenceChangeListener(this);
|
mPrefs.registerOnSharedPreferenceChangeListener(this);
|
||||||
|
upgradeAutocorrectionSettings(mPrefs, mRes);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onDestroy() {
|
public void onDestroy() {
|
||||||
|
@ -207,11 +211,9 @@ public final class Settings implements SharedPreferences.OnSharedPreferenceChang
|
||||||
res.getBoolean(R.bool.config_default_vibration_enabled));
|
res.getBoolean(R.bool.config_default_vibration_enabled));
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean readAutoCorrectEnabled(final String currentAutoCorrectionSetting,
|
public static boolean readAutoCorrectEnabled(final SharedPreferences prefs,
|
||||||
final Resources res) {
|
final Resources res) {
|
||||||
final String autoCorrectionOff = res.getString(
|
return prefs.getBoolean(PREF_AUTO_CORRECTION, true);
|
||||||
R.string.auto_correction_threshold_mode_index_off);
|
|
||||||
return !currentAutoCorrectionSetting.equals(autoCorrectionOff);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public static float readPlausibilityThreshold(final Resources res) {
|
public static float readPlausibilityThreshold(final Resources res) {
|
||||||
|
@ -421,4 +423,21 @@ public final class Settings implements SharedPreferences.OnSharedPreferenceChang
|
||||||
final SharedPreferences prefs, final int defValue) {
|
final SharedPreferences prefs, final int defValue) {
|
||||||
return prefs.getInt(PREF_LAST_SHOWN_EMOJI_CATEGORY_ID, defValue);
|
return prefs.getInt(PREF_LAST_SHOWN_EMOJI_CATEGORY_ID, defValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void upgradeAutocorrectionSettings(final SharedPreferences prefs, final Resources res) {
|
||||||
|
final String thresholdSetting =
|
||||||
|
prefs.getString(PREF_AUTO_CORRECTION_THRESHOLD_OBSOLETE, null);
|
||||||
|
if (thresholdSetting != null) {
|
||||||
|
SharedPreferences.Editor editor = prefs.edit();
|
||||||
|
editor.remove(PREF_AUTO_CORRECTION_THRESHOLD_OBSOLETE);
|
||||||
|
final String autoCorrectionOff =
|
||||||
|
res.getString(R.string.auto_correction_threshold_mode_index_off);
|
||||||
|
if (thresholdSetting.equals(autoCorrectionOff)) {
|
||||||
|
editor.putBoolean(PREF_AUTO_CORRECTION, false);
|
||||||
|
} else {
|
||||||
|
editor.putBoolean(PREF_AUTO_CORRECTION, true);
|
||||||
|
}
|
||||||
|
editor.commit();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -135,9 +135,6 @@ public class SettingsValues {
|
||||||
mShowsVoiceInputKey = needsToShowVoiceInputKey(prefs, res)
|
mShowsVoiceInputKey = needsToShowVoiceInputKey(prefs, res)
|
||||||
&& mInputAttributes.mShouldShowVoiceInputKey
|
&& mInputAttributes.mShouldShowVoiceInputKey
|
||||||
&& Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN;
|
&& Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN;
|
||||||
final String autoCorrectionThresholdRawValue = prefs.getString(
|
|
||||||
Settings.PREF_AUTO_CORRECTION_THRESHOLD,
|
|
||||||
res.getString(R.string.auto_correction_threshold_mode_index_modest));
|
|
||||||
mIncludesOtherImesInLanguageSwitchList = Settings.ENABLE_SHOW_LANGUAGE_SWITCH_KEY_SETTINGS
|
mIncludesOtherImesInLanguageSwitchList = Settings.ENABLE_SHOW_LANGUAGE_SWITCH_KEY_SETTINGS
|
||||||
? prefs.getBoolean(Settings.PREF_INCLUDE_OTHER_IMES_IN_LANGUAGE_SWITCH_LIST, false)
|
? prefs.getBoolean(Settings.PREF_INCLUDE_OTHER_IMES_IN_LANGUAGE_SWITCH_LIST, false)
|
||||||
: true /* forcibly */;
|
: true /* forcibly */;
|
||||||
|
@ -148,7 +145,10 @@ public class SettingsValues {
|
||||||
mUseDoubleSpacePeriod = prefs.getBoolean(Settings.PREF_KEY_USE_DOUBLE_SPACE_PERIOD, true)
|
mUseDoubleSpacePeriod = prefs.getBoolean(Settings.PREF_KEY_USE_DOUBLE_SPACE_PERIOD, true)
|
||||||
&& inputAttributes.mIsGeneralTextInput;
|
&& inputAttributes.mIsGeneralTextInput;
|
||||||
mBlockPotentiallyOffensive = Settings.readBlockPotentiallyOffensive(prefs, res);
|
mBlockPotentiallyOffensive = Settings.readBlockPotentiallyOffensive(prefs, res);
|
||||||
mAutoCorrectEnabled = Settings.readAutoCorrectEnabled(autoCorrectionThresholdRawValue, res);
|
mAutoCorrectEnabled = Settings.readAutoCorrectEnabled(prefs, res);
|
||||||
|
final String autoCorrectionThresholdRawValue = mAutoCorrectEnabled
|
||||||
|
? res.getString(R.string.auto_correction_threshold_mode_index_modest)
|
||||||
|
: res.getString(R.string.auto_correction_threshold_mode_index_off);
|
||||||
mDoubleSpacePeriodTimeout = res.getInteger(R.integer.config_double_space_period_timeout);
|
mDoubleSpacePeriodTimeout = res.getInteger(R.integer.config_double_space_period_timeout);
|
||||||
mHasHardwareKeyboard = Settings.readHasHardwareKeyboard(res.getConfiguration());
|
mHasHardwareKeyboard = Settings.readHasHardwareKeyboard(res.getConfiguration());
|
||||||
mEnableMetricsLogging = prefs.getBoolean(Settings.PREF_ENABLE_METRICS_LOGGING, true);
|
mEnableMetricsLogging = prefs.getBoolean(Settings.PREF_ENABLE_METRICS_LOGGING, true);
|
||||||
|
|
|
@ -265,7 +265,7 @@ public class InputLogicTests extends InputTestsBase {
|
||||||
public void testDoubleSpacePeriod() {
|
public void testDoubleSpacePeriod() {
|
||||||
// Reset settings to default, else these tests will go flaky.
|
// Reset settings to default, else these tests will go flaky.
|
||||||
setBooleanPreference(Settings.PREF_SHOW_SUGGESTIONS, true, true);
|
setBooleanPreference(Settings.PREF_SHOW_SUGGESTIONS, true, true);
|
||||||
setStringPreference(Settings.PREF_AUTO_CORRECTION_THRESHOLD, "1", "1");
|
setBooleanPreference(Settings.PREF_AUTO_CORRECTION, true, true);
|
||||||
setBooleanPreference(Settings.PREF_KEY_USE_DOUBLE_SPACE_PERIOD, true, true);
|
setBooleanPreference(Settings.PREF_KEY_USE_DOUBLE_SPACE_PERIOD, true, true);
|
||||||
testDoubleSpacePeriodWithSettings(true /* expectsPeriod */);
|
testDoubleSpacePeriodWithSettings(true /* expectsPeriod */);
|
||||||
// "Suggestion visibility" to off
|
// "Suggestion visibility" to off
|
||||||
|
@ -277,18 +277,16 @@ public class InputLogicTests extends InputTestsBase {
|
||||||
testDoubleSpacePeriodWithSettings(false, Settings.PREF_KEY_USE_DOUBLE_SPACE_PERIOD, false);
|
testDoubleSpacePeriodWithSettings(false, Settings.PREF_KEY_USE_DOUBLE_SPACE_PERIOD, false);
|
||||||
|
|
||||||
// "Auto-correction" to "off"
|
// "Auto-correction" to "off"
|
||||||
testDoubleSpacePeriodWithSettings(true, Settings.PREF_AUTO_CORRECTION_THRESHOLD, "0");
|
testDoubleSpacePeriodWithSettings(true, Settings.PREF_AUTO_CORRECTION, false);
|
||||||
// "Auto-correction" to "modest"
|
// "Auto-correction" to "on"
|
||||||
testDoubleSpacePeriodWithSettings(true, Settings.PREF_AUTO_CORRECTION_THRESHOLD, "1");
|
testDoubleSpacePeriodWithSettings(true, Settings.PREF_AUTO_CORRECTION, true);
|
||||||
// "Auto-correction" to "very aggressive"
|
|
||||||
testDoubleSpacePeriodWithSettings(true, Settings.PREF_AUTO_CORRECTION_THRESHOLD, "3");
|
|
||||||
|
|
||||||
// "Suggestion visibility" to "always hide" and "Auto-correction" to "off"
|
// "Suggestion visibility" to "always hide" and "Auto-correction" to "off"
|
||||||
testDoubleSpacePeriodWithSettings(true, Settings.PREF_SHOW_SUGGESTIONS, false,
|
testDoubleSpacePeriodWithSettings(true, Settings.PREF_SHOW_SUGGESTIONS, false,
|
||||||
Settings.PREF_AUTO_CORRECTION_THRESHOLD, "0");
|
Settings.PREF_AUTO_CORRECTION, false);
|
||||||
// "Suggestion visibility" to "always hide" and "Auto-correction" to "off"
|
// "Suggestion visibility" to "always hide" and "Auto-correction" to "off"
|
||||||
testDoubleSpacePeriodWithSettings(false, Settings.PREF_SHOW_SUGGESTIONS, false,
|
testDoubleSpacePeriodWithSettings(false, Settings.PREF_SHOW_SUGGESTIONS, false,
|
||||||
Settings.PREF_AUTO_CORRECTION_THRESHOLD, "0",
|
Settings.PREF_AUTO_CORRECTION, false,
|
||||||
Settings.PREF_KEY_USE_DOUBLE_SPACE_PERIOD, false);
|
Settings.PREF_KEY_USE_DOUBLE_SPACE_PERIOD, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -58,7 +58,7 @@ public class InputTestsBase extends ServiceTestCase<LatinIMEForTests> {
|
||||||
|
|
||||||
// Default value for auto-correction threshold. This is the string representation of the
|
// Default value for auto-correction threshold. This is the string representation of the
|
||||||
// index in the resources array of auto-correction threshold settings.
|
// index in the resources array of auto-correction threshold settings.
|
||||||
private static final String DEFAULT_AUTO_CORRECTION_THRESHOLD = "1";
|
private static final boolean DEFAULT_AUTO_CORRECTION = true;
|
||||||
|
|
||||||
// The message that sets the underline is posted with a 500 ms delay
|
// The message that sets the underline is posted with a 500 ms delay
|
||||||
protected static final int DELAY_TO_WAIT_FOR_UNDERLINE_MILLIS = 500;
|
protected static final int DELAY_TO_WAIT_FOR_UNDERLINE_MILLIS = 500;
|
||||||
|
@ -77,7 +77,7 @@ public class InputTestsBase extends ServiceTestCase<LatinIMEForTests> {
|
||||||
protected MyEditText mEditText;
|
protected MyEditText mEditText;
|
||||||
protected View mInputView;
|
protected View mInputView;
|
||||||
protected InputConnection mInputConnection;
|
protected InputConnection mInputConnection;
|
||||||
private String mPreviousAutoCorrectSetting;
|
private boolean mPreviousAutoCorrectSetting;
|
||||||
|
|
||||||
// A helper class to ease span tests
|
// A helper class to ease span tests
|
||||||
public static class SpanGetter {
|
public static class SpanGetter {
|
||||||
|
@ -200,8 +200,8 @@ public class InputTestsBase extends ServiceTestCase<LatinIMEForTests> {
|
||||||
setupService();
|
setupService();
|
||||||
mLatinIME = getService();
|
mLatinIME = getService();
|
||||||
setDebugMode(true);
|
setDebugMode(true);
|
||||||
mPreviousAutoCorrectSetting = setStringPreference(Settings.PREF_AUTO_CORRECTION_THRESHOLD,
|
mPreviousAutoCorrectSetting = setBooleanPreference(Settings.PREF_AUTO_CORRECTION,
|
||||||
DEFAULT_AUTO_CORRECTION_THRESHOLD, DEFAULT_AUTO_CORRECTION_THRESHOLD);
|
DEFAULT_AUTO_CORRECTION, DEFAULT_AUTO_CORRECTION);
|
||||||
mLatinIME.onCreate();
|
mLatinIME.onCreate();
|
||||||
EditorInfo ei = new EditorInfo();
|
EditorInfo ei = new EditorInfo();
|
||||||
final InputConnection ic = mEditText.onCreateInputConnection(ei);
|
final InputConnection ic = mEditText.onCreateInputConnection(ei);
|
||||||
|
@ -230,8 +230,8 @@ public class InputTestsBase extends ServiceTestCase<LatinIMEForTests> {
|
||||||
mLatinIME.onFinishInput();
|
mLatinIME.onFinishInput();
|
||||||
runMessages();
|
runMessages();
|
||||||
mLatinIME.mHandler.removeAllMessages();
|
mLatinIME.mHandler.removeAllMessages();
|
||||||
setStringPreference(Settings.PREF_AUTO_CORRECTION_THRESHOLD, mPreviousAutoCorrectSetting,
|
setBooleanPreference(Settings.PREF_AUTO_CORRECTION, mPreviousAutoCorrectSetting,
|
||||||
DEFAULT_AUTO_CORRECTION_THRESHOLD);
|
DEFAULT_AUTO_CORRECTION);
|
||||||
setDebugMode(false);
|
setDebugMode(false);
|
||||||
mLatinIME.recycle();
|
mLatinIME.recycle();
|
||||||
super.tearDown();
|
super.tearDown();
|
||||||
|
|
Loading…
Reference in New Issue