diff options
4 files changed, 31 insertions, 37 deletions
diff --git a/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodAndSubtypeUtil.java b/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodAndSubtypeUtil.java index 057123bcd224..1712a6b67e2f 100644 --- a/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodAndSubtypeUtil.java +++ b/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodAndSubtypeUtil.java @@ -419,8 +419,8 @@ public class InputMethodAndSubtypeUtil { return configurationLocale; } - public static boolean isValidSystemNonAuxAsciiCapableIme(InputMethodInfo imi) { - if (imi.isAuxiliaryIme() || !imi.isSystem()) { + public static boolean isValidNonAuxAsciiCapableIme(InputMethodInfo imi) { + if (imi.isAuxiliaryIme()) { return false; } final int subtypeCount = imi.getSubtypeCount(); diff --git a/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodPreference.java b/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodPreference.java index 120acd3bcc52..55b6cda5548c 100644 --- a/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodPreference.java +++ b/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodPreference.java @@ -125,7 +125,7 @@ public class InputMethodPreference extends RestrictedSwitchPreference implements } mInputMethodSettingValues = InputMethodSettingValuesWrapper.getInstance(context); mHasPriorityInSorting = imi.isSystem() - && InputMethodAndSubtypeUtil.isValidSystemNonAuxAsciiCapableIme(imi); + && InputMethodAndSubtypeUtil.isValidNonAuxAsciiCapableIme(imi); setOnPreferenceClickListener(this); setOnPreferenceChangeListener(this); } diff --git a/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodSettingValuesWrapper.java b/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodSettingValuesWrapper.java index b6786d424e6f..13c1b823cb85 100644 --- a/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodSettingValuesWrapper.java +++ b/packages/SettingsLib/src/com/android/settingslib/inputmethod/InputMethodSettingValuesWrapper.java @@ -77,25 +77,25 @@ public class InputMethodSettingValuesWrapper { return true; } - final int enabledValidSystemNonAuxAsciiCapableImeCount = - getEnabledValidSystemNonAuxAsciiCapableImeCount(); + final int enabledValidNonAuxAsciiCapableImeCount = + getEnabledValidNonAuxAsciiCapableImeCount(); - return enabledValidSystemNonAuxAsciiCapableImeCount <= 1 - && !(enabledValidSystemNonAuxAsciiCapableImeCount == 1 && !isEnabled) + return enabledValidNonAuxAsciiCapableImeCount <= 1 + && !(enabledValidNonAuxAsciiCapableImeCount == 1 && !isEnabled) && imi.isSystem() - && InputMethodAndSubtypeUtil.isValidSystemNonAuxAsciiCapableIme(imi); + && InputMethodAndSubtypeUtil.isValidNonAuxAsciiCapableIme(imi); } - private int getEnabledValidSystemNonAuxAsciiCapableImeCount() { + private int getEnabledValidNonAuxAsciiCapableImeCount() { int count = 0; final List<InputMethodInfo> enabledImis = getEnabledInputMethodList(); for (final InputMethodInfo imi : enabledImis) { - if (InputMethodAndSubtypeUtil.isValidSystemNonAuxAsciiCapableIme(imi)) { + if (InputMethodAndSubtypeUtil.isValidNonAuxAsciiCapableIme(imi)) { ++count; } } if (count == 0) { - Log.w(TAG, "No \"enabledValidSystemNonAuxAsciiCapableIme\"s found."); + Log.w(TAG, "No \"enabledValidNonAuxAsciiCapableIme\"s found."); } return count; } diff --git a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/inputmethod/InputMethodAndSubtypeUtilTest.java b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/inputmethod/InputMethodAndSubtypeUtilTest.java index 84606b4e4502..5171dda9bff7 100644 --- a/packages/SettingsLib/tests/robotests/src/com/android/settingslib/inputmethod/InputMethodAndSubtypeUtilTest.java +++ b/packages/SettingsLib/tests/robotests/src/com/android/settingslib/inputmethod/InputMethodAndSubtypeUtilTest.java @@ -192,53 +192,47 @@ public class InputMethodAndSubtypeUtilTest { } @Test - public void isValidSystemNonAuxAsciiCapableIme() { - // System IME w/ no subtype - assertThat(InputMethodAndSubtypeUtil.isValidSystemNonAuxAsciiCapableIme( - createDummyIme(true, false))) + public void isValidNonAuxAsciiCapableIme() { + // IME w/ no subtype + assertThat(InputMethodAndSubtypeUtil.isValidNonAuxAsciiCapableIme( + createDummyIme(false))) .isFalse(); - // System IME w/ non-Aux and non-ASCII-capable "keyboard" subtype - assertThat(InputMethodAndSubtypeUtil.isValidSystemNonAuxAsciiCapableIme( - createDummyIme(true, false, createDummySubtype("keyboard", false, false)))) + // IME w/ non-Aux and non-ASCII-capable "keyboard" subtype + assertThat(InputMethodAndSubtypeUtil.isValidNonAuxAsciiCapableIme( + createDummyIme(false, createDummySubtype("keyboard", false, false)))) .isFalse(); - // System IME w/ non-Aux and ASCII-capable "keyboard" subtype - assertThat(InputMethodAndSubtypeUtil.isValidSystemNonAuxAsciiCapableIme( - createDummyIme(true, false, createDummySubtype("keyboard", false, true)))) + // IME w/ non-Aux and ASCII-capable "keyboard" subtype + assertThat(InputMethodAndSubtypeUtil.isValidNonAuxAsciiCapableIme( + createDummyIme(false, createDummySubtype("keyboard", false, true)))) .isTrue(); - // System IME w/ Aux and ASCII-capable "keyboard" subtype - assertThat(InputMethodAndSubtypeUtil.isValidSystemNonAuxAsciiCapableIme( - createDummyIme(true, true, createDummySubtype("keyboard", true, true)))) + // IME w/ Aux and ASCII-capable "keyboard" subtype + assertThat(InputMethodAndSubtypeUtil.isValidNonAuxAsciiCapableIme( + createDummyIme(true, createDummySubtype("keyboard", true, true)))) .isFalse(); - // System IME w/ non-Aux and ASCII-capable "voice" subtype - assertThat(InputMethodAndSubtypeUtil.isValidSystemNonAuxAsciiCapableIme( - createDummyIme(true, false, createDummySubtype("voice", false, true)))) + // IME w/ non-Aux and ASCII-capable "voice" subtype + assertThat(InputMethodAndSubtypeUtil.isValidNonAuxAsciiCapableIme( + createDummyIme(false, createDummySubtype("voice", false, true)))) .isFalse(); - // System IME w/ non-Aux and non-ASCII-capable subtype + Non-Aux and ASCII-capable subtype - assertThat(InputMethodAndSubtypeUtil.isValidSystemNonAuxAsciiCapableIme( - createDummyIme(true, false, + // IME w/ non-Aux and non-ASCII-capable subtype + Non-Aux and ASCII-capable subtype + assertThat(InputMethodAndSubtypeUtil.isValidNonAuxAsciiCapableIme( + createDummyIme(false, createDummySubtype("keyboard", false, true), createDummySubtype("keyboard", false, false)))) .isTrue(); - - // Non-system IME w/ non-Aux and ASCII-capable "keyboard" subtype - assertThat(InputMethodAndSubtypeUtil.isValidSystemNonAuxAsciiCapableIme( - createDummyIme(false, false, createDummySubtype("keyboard", false, true)))) - .isFalse(); } - private static InputMethodInfo createDummyIme(boolean isSystem, boolean isAuxIme, + private static InputMethodInfo createDummyIme(boolean isAuxIme, InputMethodSubtype... subtypes) { final ResolveInfo ri = new ResolveInfo(); final ServiceInfo si = new ServiceInfo(); final ApplicationInfo ai = new ApplicationInfo(); ai.packageName = "com.example.android.dummyime"; ai.enabled = true; - ai.flags |= (isSystem ? ApplicationInfo.FLAG_SYSTEM : 0); si.applicationInfo = ai; si.enabled = true; si.packageName = "com.example.android.dummyime"; |