Merge "Update InputMethodPanel when locale was changed." into honeycomb
This commit is contained in:
@@ -75,6 +75,7 @@ public class InputMethodsPanel extends LinearLayout implements StatusBarPanel, O
|
|||||||
private LinearLayout mInputMethodMenuList;
|
private LinearLayout mInputMethodMenuList;
|
||||||
private PackageManager mPackageManager;
|
private PackageManager mPackageManager;
|
||||||
private String mEnabledInputMethodAndSubtypesCacheStr;
|
private String mEnabledInputMethodAndSubtypesCacheStr;
|
||||||
|
private String mLastSystemLocaleString;
|
||||||
private View mConfigureImeShortcut;
|
private View mConfigureImeShortcut;
|
||||||
|
|
||||||
private class InputMethodComparator implements Comparator<InputMethodInfo> {
|
private class InputMethodComparator implements Comparator<InputMethodInfo> {
|
||||||
@@ -335,8 +336,10 @@ public class InputMethodsPanel extends LinearLayout implements StatusBarPanel, O
|
|||||||
getEnabledInputMethodAndSubtypeList() {
|
getEnabledInputMethodAndSubtypeList() {
|
||||||
String newEnabledIMIs = Settings.Secure.getString(
|
String newEnabledIMIs = Settings.Secure.getString(
|
||||||
mContext.getContentResolver(), Settings.Secure.ENABLED_INPUT_METHODS);
|
mContext.getContentResolver(), Settings.Secure.ENABLED_INPUT_METHODS);
|
||||||
if (mEnabledInputMethodAndSubtypesCacheStr == null
|
String currentSystemLocaleString =
|
||||||
|| !mEnabledInputMethodAndSubtypesCacheStr.equals(newEnabledIMIs)
|
mContext.getResources().getConfiguration().locale.toString();
|
||||||
|
if (!TextUtils.equals(mEnabledInputMethodAndSubtypesCacheStr, newEnabledIMIs)
|
||||||
|
|| !TextUtils.equals(mLastSystemLocaleString, currentSystemLocaleString)
|
||||||
|| mPackageChanged) {
|
|| mPackageChanged) {
|
||||||
mEnabledInputMethodAndSubtypesCache.clear();
|
mEnabledInputMethodAndSubtypesCache.clear();
|
||||||
final List<InputMethodInfo> imis = mImm.getEnabledInputMethodList();
|
final List<InputMethodInfo> imis = mImm.getEnabledInputMethodList();
|
||||||
@@ -346,6 +349,7 @@ public class InputMethodsPanel extends LinearLayout implements StatusBarPanel, O
|
|||||||
}
|
}
|
||||||
mEnabledInputMethodAndSubtypesCacheStr = newEnabledIMIs;
|
mEnabledInputMethodAndSubtypesCacheStr = newEnabledIMIs;
|
||||||
mPackageChanged = false;
|
mPackageChanged = false;
|
||||||
|
mLastSystemLocaleString = currentSystemLocaleString;
|
||||||
}
|
}
|
||||||
return mEnabledInputMethodAndSubtypesCache;
|
return mEnabledInputMethodAndSubtypesCache;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user