summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author satok <satok@google.com> 2011-01-28 12:16:31 +0900
committer satok <satok@google.com> 2011-01-28 12:54:10 +0900
commitcf5f6d107a50f8b859158adc00254df72a1aec7e (patch)
treeb791d746af0c798f1eb205396aa268f3eff4ffd2
parent07520feb6d908930be19d1a93d5a35f64b5a62ab (diff)
Update InputMethodPanel when locale was changed.
Bug: 3400950 Change-Id: I2229f175ec03084dd689fbd0f0c5a187b78ead33
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/tablet/InputMethodsPanel.java8
1 files changed, 6 insertions, 2 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/InputMethodsPanel.java b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/InputMethodsPanel.java
index a1cc274ef99c..474ef456c37c 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/InputMethodsPanel.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/InputMethodsPanel.java
@@ -75,6 +75,7 @@ public class InputMethodsPanel extends LinearLayout implements StatusBarPanel, O
private LinearLayout mInputMethodMenuList;
private PackageManager mPackageManager;
private String mEnabledInputMethodAndSubtypesCacheStr;
+ private String mLastSystemLocaleString;
private View mConfigureImeShortcut;
private class InputMethodComparator implements Comparator<InputMethodInfo> {
@@ -335,8 +336,10 @@ public class InputMethodsPanel extends LinearLayout implements StatusBarPanel, O
getEnabledInputMethodAndSubtypeList() {
String newEnabledIMIs = Settings.Secure.getString(
mContext.getContentResolver(), Settings.Secure.ENABLED_INPUT_METHODS);
- if (mEnabledInputMethodAndSubtypesCacheStr == null
- || !mEnabledInputMethodAndSubtypesCacheStr.equals(newEnabledIMIs)
+ String currentSystemLocaleString =
+ mContext.getResources().getConfiguration().locale.toString();
+ if (!TextUtils.equals(mEnabledInputMethodAndSubtypesCacheStr, newEnabledIMIs)
+ || !TextUtils.equals(mLastSystemLocaleString, currentSystemLocaleString)
|| mPackageChanged) {
mEnabledInputMethodAndSubtypesCache.clear();
final List<InputMethodInfo> imis = mImm.getEnabledInputMethodList();
@@ -346,6 +349,7 @@ public class InputMethodsPanel extends LinearLayout implements StatusBarPanel, O
}
mEnabledInputMethodAndSubtypesCacheStr = newEnabledIMIs;
mPackageChanged = false;
+ mLastSystemLocaleString = currentSystemLocaleString;
}
return mEnabledInputMethodAndSubtypesCache;
}