Update the subtype icon properly.
Change-Id: Ib89959d1ea13f1e6f56e6280f90532e6695c4a00
diff --git a/services/java/com/android/server/StatusBarManagerService.java b/services/java/com/android/server/StatusBarManagerService.java
index 0eeef38..596db57 100644
--- a/services/java/com/android/server/StatusBarManagerService.java
+++ b/services/java/com/android/server/StatusBarManagerService.java
@@ -263,19 +263,20 @@
if (SPEW) Slog.d(TAG, (visible?"showing":"hiding") + " IME Button");
synchronized(mLock) {
- if (mIMEButtonVisible != visible) {
- mIMEButtonVisible = visible;
- mHandler.post(new Runnable() {
- public void run() {
- if (mBar != null) {
- try {
- mBar.setIMEButtonVisible(visible);
- } catch (RemoteException ex) {
- }
+ // In case of IME change, we need to call up setIMEButtonVisible() regardless of
+ // mIMEButtonVisible because mIMEButtonVisible may not have been set to false when the
+ // previous IME was destroyed.
+ mIMEButtonVisible = visible;
+ mHandler.post(new Runnable() {
+ public void run() {
+ if (mBar != null) {
+ try {
+ mBar.setIMEButtonVisible(visible);
+ } catch (RemoteException ex) {
}
}
- });
- }
+ }
+ });
}
}