diff options
author | satok <satok@google.com> | 2010-12-13 22:15:17 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-12-13 22:15:17 -0800 |
commit | 7a49e60eb37dd6326e7a567d89916068f30235b0 (patch) | |
tree | c0525b240fe9a66b0ad83bffca357957582157a7 /packages | |
parent | b7b7cdf46ada1af3c9dd89eb7912864bd57e51bb (diff) | |
parent | a84b8d94fbe20a2d51902da29ff00a57e1851dbe (diff) | |
download | frameworks_base-7a49e60eb37dd6326e7a567d89916068f30235b0.zip frameworks_base-7a49e60eb37dd6326e7a567d89916068f30235b0.tar.gz frameworks_base-7a49e60eb37dd6326e7a567d89916068f30235b0.tar.bz2 |
Merge "Hide ime switch icon when there are only one IME and no enabled subtypes"
Diffstat (limited to 'packages')
-rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/tablet/InputMethodButton.java | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/InputMethodButton.java b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/InputMethodButton.java index 66ed727..aa431bc 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/tablet/InputMethodButton.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/tablet/InputMethodButton.java @@ -157,6 +157,17 @@ public class InputMethodButton extends ImageView { return null; } + // Display IME switcher icon only when all of the followings are true: + // * There is only one enabled IME on the device. (Note that the IME should be the system IME) + // * There are no explicitly enabled (by the user) subtypes of the IME, or the IME doesn't have + // its subtypes at all + private boolean needsToShowIMEButton() { + List<InputMethodInfo> imis = mImm.getInputMethodList(); + final int size = imis.size(); + return size > 1 + || (size == 1 && mImm.getEnabledInputMethodSubtypeList(imis.get(0)).size() > 1); + } + private void refreshStatusIcon(boolean keyboardShown) { if (!keyboardShown) { setVisibility(View.INVISIBLE); @@ -187,7 +198,7 @@ public class InputMethodButton extends ImageView { public void setIMEButtonVisible(IBinder token, boolean visible) { mToken = token; - mKeyboardShown = visible; + mKeyboardShown = visible ? needsToShowIMEButton() : false; refreshStatusIcon(mKeyboardShown); } } |