Loading services/core/java/com/android/server/inputmethod/InputMethodManagerInternal.java +9 −0 Original line number Diff line number Diff line Loading @@ -124,6 +124,11 @@ public abstract class InputMethodManagerInternal { */ public abstract void removeImeSurface(); /** * Updates the IME visibility, back disposition and show IME picker status for SystemUI. */ public abstract void updateImeWindowStatus(); /** * Fake implementation of {@link InputMethodManagerInternal}. All the methods do nothing. */ Loading Loading @@ -175,6 +180,10 @@ public abstract class InputMethodManagerInternal { @Override public void removeImeSurface() { } @Override public void updateImeWindowStatus() { } }; /** Loading services/core/java/com/android/server/inputmethod/InputMethodManagerService.java +19 −0 Original line number Diff line number Diff line Loading @@ -248,6 +248,7 @@ public class InputMethodManagerService extends IInputMethodManager.Stub static final int MSG_CREATE_SESSION = 1050; static final int MSG_REMOVE_IME_SURFACE = 1060; static final int MSG_REMOVE_IME_SURFACE_FROM_WINDOW = 1061; static final int MSG_UPDATE_IME_WINDOW_STATUS = 1070; static final int MSG_START_INPUT = 2000; Loading Loading @@ -2940,6 +2941,12 @@ public class InputMethodManagerService extends IInputMethodManager.Stub } } private void updateImeWindowStatus() { synchronized (mMethodMap) { updateSystemUiLocked(); } } void updateSystemUiLocked() { updateSystemUiLocked(mImeWindowVis, mBackDisposition); } Loading Loading @@ -4537,6 +4544,12 @@ public class InputMethodManagerService extends IInputMethodManager.Stub } return true; } case MSG_UPDATE_IME_WINDOW_STATUS: { synchronized (mMethodMap) { updateSystemUiLocked(); } return true; } // --------------------------------------------------------- case MSG_START_INPUT: { Loading Loading @@ -5202,6 +5215,12 @@ public class InputMethodManagerService extends IInputMethodManager.Stub public void removeImeSurface() { mService.mHandler.sendMessage(mService.mHandler.obtainMessage(MSG_REMOVE_IME_SURFACE)); } @Override public void updateImeWindowStatus() { mService.mHandler.sendMessage( mService.mHandler.obtainMessage(MSG_UPDATE_IME_WINDOW_STATUS)); } } @BinderThread Loading services/core/java/com/android/server/inputmethod/MultiClientInputMethodManagerService.java +4 −0 Original line number Diff line number Diff line Loading @@ -241,6 +241,10 @@ public final class MultiClientInputMethodManagerService { public void removeImeSurface() { reportNotSupported(); } @Override public void updateImeWindowStatus() { } }); } Loading services/core/java/com/android/server/wm/KeyguardController.java +2 −0 Original line number Diff line number Diff line Loading @@ -50,6 +50,7 @@ import android.util.SparseArray; import android.util.proto.ProtoOutputStream; import com.android.internal.policy.IKeyguardDismissCallback; import com.android.server.inputmethod.InputMethodManagerInternal; import com.android.server.policy.WindowManagerPolicy; import java.io.PrintWriter; Loading Loading @@ -191,6 +192,7 @@ class KeyguardController { // state when evaluating visibilities. updateKeyguardSleepToken(); mRootWindowContainer.ensureActivitiesVisible(null, 0, !PRESERVE_WINDOWS); InputMethodManagerInternal.get().updateImeWindowStatus(); } /** Loading Loading
services/core/java/com/android/server/inputmethod/InputMethodManagerInternal.java +9 −0 Original line number Diff line number Diff line Loading @@ -124,6 +124,11 @@ public abstract class InputMethodManagerInternal { */ public abstract void removeImeSurface(); /** * Updates the IME visibility, back disposition and show IME picker status for SystemUI. */ public abstract void updateImeWindowStatus(); /** * Fake implementation of {@link InputMethodManagerInternal}. All the methods do nothing. */ Loading Loading @@ -175,6 +180,10 @@ public abstract class InputMethodManagerInternal { @Override public void removeImeSurface() { } @Override public void updateImeWindowStatus() { } }; /** Loading
services/core/java/com/android/server/inputmethod/InputMethodManagerService.java +19 −0 Original line number Diff line number Diff line Loading @@ -248,6 +248,7 @@ public class InputMethodManagerService extends IInputMethodManager.Stub static final int MSG_CREATE_SESSION = 1050; static final int MSG_REMOVE_IME_SURFACE = 1060; static final int MSG_REMOVE_IME_SURFACE_FROM_WINDOW = 1061; static final int MSG_UPDATE_IME_WINDOW_STATUS = 1070; static final int MSG_START_INPUT = 2000; Loading Loading @@ -2940,6 +2941,12 @@ public class InputMethodManagerService extends IInputMethodManager.Stub } } private void updateImeWindowStatus() { synchronized (mMethodMap) { updateSystemUiLocked(); } } void updateSystemUiLocked() { updateSystemUiLocked(mImeWindowVis, mBackDisposition); } Loading Loading @@ -4537,6 +4544,12 @@ public class InputMethodManagerService extends IInputMethodManager.Stub } return true; } case MSG_UPDATE_IME_WINDOW_STATUS: { synchronized (mMethodMap) { updateSystemUiLocked(); } return true; } // --------------------------------------------------------- case MSG_START_INPUT: { Loading Loading @@ -5202,6 +5215,12 @@ public class InputMethodManagerService extends IInputMethodManager.Stub public void removeImeSurface() { mService.mHandler.sendMessage(mService.mHandler.obtainMessage(MSG_REMOVE_IME_SURFACE)); } @Override public void updateImeWindowStatus() { mService.mHandler.sendMessage( mService.mHandler.obtainMessage(MSG_UPDATE_IME_WINDOW_STATUS)); } } @BinderThread Loading
services/core/java/com/android/server/inputmethod/MultiClientInputMethodManagerService.java +4 −0 Original line number Diff line number Diff line Loading @@ -241,6 +241,10 @@ public final class MultiClientInputMethodManagerService { public void removeImeSurface() { reportNotSupported(); } @Override public void updateImeWindowStatus() { } }); } Loading
services/core/java/com/android/server/wm/KeyguardController.java +2 −0 Original line number Diff line number Diff line Loading @@ -50,6 +50,7 @@ import android.util.SparseArray; import android.util.proto.ProtoOutputStream; import com.android.internal.policy.IKeyguardDismissCallback; import com.android.server.inputmethod.InputMethodManagerInternal; import com.android.server.policy.WindowManagerPolicy; import java.io.PrintWriter; Loading Loading @@ -191,6 +192,7 @@ class KeyguardController { // state when evaluating visibilities. updateKeyguardSleepToken(); mRootWindowContainer.ensureActivitiesVisible(null, 0, !PRESERVE_WINDOWS); InputMethodManagerInternal.get().updateImeWindowStatus(); } /** Loading