aboutsummaryrefslogtreecommitdiffstats
path: root/java/src
diff options
context:
space:
mode:
authorTadashi G. Takaoka <takaoka@google.com>2011-01-17 17:52:15 +0900
committerTadashi G. Takaoka <takaoka@google.com>2011-01-17 17:52:15 +0900
commitdc64b138b5e3fb3706c0818d0a308fe6e36985b0 (patch)
treed879ba2c4a56bdac7116e366bbaf7e3717d06917 /java/src
parent9d446fc13ff57c05c1944054605299a727ae8a9b (diff)
downloadlatinime-dc64b138b5e3fb3706c0818d0a308fe6e36985b0.tar.gz
latinime-dc64b138b5e3fb3706c0818d0a308fe6e36985b0.tar.xz
latinime-dc64b138b5e3fb3706c0818d0a308fe6e36985b0.zip
Revert I432be8f7 partially
This change reverts removing SubtypeSwitcher.onConfigurationChanged by careless in I432be8f7. Bug: 3290290 Change-Id: I796ea01877d61eb750dabdeb3fdbf87666646c56
Diffstat (limited to 'java/src')
-rw-r--r--java/src/com/android/inputmethod/latin/LatinIME.java1
-rw-r--r--java/src/com/android/inputmethod/latin/SubtypeSwitcher.java17
2 files changed, 18 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/latin/LatinIME.java b/java/src/com/android/inputmethod/latin/LatinIME.java
index bea44eef2..4a78c2e7a 100644
--- a/java/src/com/android/inputmethod/latin/LatinIME.java
+++ b/java/src/com/android/inputmethod/latin/LatinIME.java
@@ -444,6 +444,7 @@ public class LatinIME extends InputMethodService implements KeyboardActionListen
@Override
public void onConfigurationChanged(Configuration conf) {
+ mSubtypeSwitcher.onConfigurationChanged(conf);
// If orientation changed while predicting, commit the change
if (conf.orientation != mOrientation) {
InputConnection ic = getCurrentInputConnection();
diff --git a/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java b/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java
index 968495b8e..21c99fe09 100644
--- a/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java
+++ b/java/src/com/android/inputmethod/latin/SubtypeSwitcher.java
@@ -370,6 +370,23 @@ public class SubtypeSwitcher {
}
}
+ public void onConfigurationChanged(Configuration conf) {
+ final Locale systemLocale = conf.locale;
+ // If system configuration was changed, update all parameters.
+ if (!TextUtils.equals(systemLocale.toString(), mSystemLocale.toString())) {
+ if (mConfigUseSpacebarLanguageSwitcher) {
+ // If the system locale changes and is different from the saved
+ // locale (mSystemLocale), then reload the input locale list from the
+ // latin ime settings (shared prefs) and reset the input locale
+ // to the first one.
+ mLanguageSwitcher.loadLocales(mPrefs);
+ mLanguageSwitcher.setSystemLocale(systemLocale);
+ } else {
+ updateAllParameters();
+ }
+ }
+ }
+
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
if (mConfigUseSpacebarLanguageSwitcher) {
if (Settings.PREF_SELECTED_LANGUAGES.equals(key)) {