diff options
author | Satoshi Kataoka <satok@android.com> | 2013-04-18 17:43:37 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2013-04-18 17:43:38 +0000 |
commit | 1a546dca77b47b86c87ddf4de7a76662ef8bd48b (patch) | |
tree | 3a7ddc39ba78d4c1671672a1dedcb3faf6898323 | |
parent | 6a67a38f46cafdb9a9cedf3351f7150140cf0bd7 (diff) | |
parent | 217fd2903d09d40cabcdade9f2a162dc6513f800 (diff) | |
download | base-1a546dca77b47b86c87ddf4de7a76662ef8bd48b.tar.gz |
Merge "Fixed the problem ime invisible status despite being the icon that appears in the statusbar."
-rw-r--r-- | core/java/android/inputmethodservice/InputMethodService.java | 2 | ||||
-rw-r--r-- | services/java/com/android/server/InputMethodManagerService.java | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/core/java/android/inputmethodservice/InputMethodService.java b/core/java/android/inputmethodservice/InputMethodService.java index 6f1cc942c965..d6b90c3f331e 100644 --- a/core/java/android/inputmethodservice/InputMethodService.java +++ b/core/java/android/inputmethodservice/InputMethodService.java @@ -424,7 +424,7 @@ public class InputMethodService extends AbstractInputMethodService { showWindow(true); } // If user uses hard keyboard, IME button should always be shown. - boolean showing = onEvaluateInputViewShown(); + boolean showing = isInputViewShown(); mImm.setImeWindowStatus(mToken, IME_ACTIVE | (showing ? IME_VISIBLE : 0), mBackDisposition); if (resultReceiver != null) { diff --git a/services/java/com/android/server/InputMethodManagerService.java b/services/java/com/android/server/InputMethodManagerService.java index a296d34498dc..72aa2031e735 100644 --- a/services/java/com/android/server/InputMethodManagerService.java +++ b/services/java/com/android/server/InputMethodManagerService.java @@ -1493,7 +1493,9 @@ public class InputMethodManagerService extends IInputMethodManager.Stub if (mStatusBar != null) { mStatusBar.setImeWindowStatus(token, vis, backDisposition); } - final boolean iconVisibility = (vis & InputMethodService.IME_ACTIVE) != 0; + final boolean iconVisibility = ((vis & (InputMethodService.IME_ACTIVE)) != 0) + && (mWindowManagerService.isHardKeyboardAvailable() + || (vis & (InputMethodService.IME_VISIBLE)) != 0); final InputMethodInfo imi = mMethodMap.get(mCurMethodId); if (imi != null && iconVisibility && needsToShowImeSwitchOngoingNotification()) { // Used to load label |