aboutsummaryrefslogtreecommitdiffstats
path: root/java/src/com/android/inputmethod/latin/RichInputMethodManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/src/com/android/inputmethod/latin/RichInputMethodManager.java')
-rw-r--r--java/src/com/android/inputmethod/latin/RichInputMethodManager.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/java/src/com/android/inputmethod/latin/RichInputMethodManager.java b/java/src/com/android/inputmethod/latin/RichInputMethodManager.java
index 630a03670..64cc562c8 100644
--- a/java/src/com/android/inputmethod/latin/RichInputMethodManager.java
+++ b/java/src/com/android/inputmethod/latin/RichInputMethodManager.java
@@ -20,6 +20,7 @@ import static com.android.inputmethod.latin.Constants.Subtype.KEYBOARD_MODE;
import android.content.Context;
import android.content.SharedPreferences;
+import android.os.Build;
import android.os.IBinder;
import android.preference.PreferenceManager;
import android.util.Log;
@@ -406,4 +407,24 @@ public final class RichInputMethodManager {
mSubtypeListCacheWithoutImplicitlySelectedSubtypes.clear();
mInputMethodInfoCache.clear();
}
+
+ public boolean shouldOfferSwitchingToNextInputMethod(final IBinder binder,
+ boolean defaultValue) {
+ // Use the default value instead on Jelly Bean MR2 and previous, where
+ // {@link InputMethodManager#shouldOfferSwitchingToNextInputMethod} isn't yet available.
+ if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.JELLY_BEAN_MR2) {
+ return defaultValue;
+ }
+ // Use the default value instead on KitKat as well, where
+ // {@link InputMethodManager#shouldOfferSwitchingToNextInputMethod} is still just a stub to
+ // return true always.
+ if (Build.VERSION.SDK_INT == Build.VERSION_CODES.KITKAT) {
+ // Make sure this is actually KitKat.
+ // TODO: Consider to remove this check once the *next* version becomes available.
+ if (Build.VERSION.CODENAME.equals("REL")) {
+ return defaultValue;
+ }
+ }
+ return mImmWrapper.shouldOfferSwitchingToNextInputMethod(binder);
+ }
}