diff --git a/src/com/android/settings/inputmethod/InputMethodAndSubtypeUtil.java b/src/com/android/settings/inputmethod/InputMethodAndSubtypeUtil.java index df58ec0c90d..cb4058f5fa7 100644 --- a/src/com/android/settings/inputmethod/InputMethodAndSubtypeUtil.java +++ b/src/com/android/settings/inputmethod/InputMethodAndSubtypeUtil.java @@ -317,9 +317,9 @@ public class InputMethodAndSubtypeUtil { } } setSubtypesPreferenceEnabled(context, inputMethodInfos, imiId, isEnabled); - updateSubtypesPreferenceChecked(context, inputMethodInfos, enabledSubtypes); } } + updateSubtypesPreferenceChecked(context, inputMethodInfos, enabledSubtypes); } public static void setSubtypesPreferenceEnabled(SettingsPreferenceFragment context, @@ -346,7 +346,8 @@ public class InputMethodAndSubtypeUtil { PreferenceScreen preferenceScreen = context.getPreferenceScreen(); for (InputMethodInfo imi : inputMethodProperties) { String id = imi.getId(); - HashSet enabledSubtypesSet = enabledSubtypes.get(id); + if (!enabledSubtypes.containsKey(id)) break; + final HashSet enabledSubtypesSet = enabledSubtypes.get(id); final int subtypeCount = imi.getSubtypeCount(); for (int i = 0; i < subtypeCount; ++i) { InputMethodSubtype subtype = imi.getSubtypeAt(i); diff --git a/src/com/android/settings/inputmethod/InputMethodPreference.java b/src/com/android/settings/inputmethod/InputMethodPreference.java index f222b88ae96..4ecdb8ecddd 100644 --- a/src/com/android/settings/inputmethod/InputMethodPreference.java +++ b/src/com/android/settings/inputmethod/InputMethodPreference.java @@ -226,6 +226,7 @@ public class InputMethodPreference extends CheckBoxPreference public void setChecked(boolean checked) { super.setChecked(checked); saveImeSettings(); + updateSummary(); } private void showSecurityWarnDialog(InputMethodInfo imi, final CheckBoxPreference chkPref) {