Loading data/etc/services.core.protolog.json +12 −0 Original line number Diff line number Diff line Loading @@ -757,6 +757,12 @@ "group": "WM_DEBUG_BOOT", "at": "com\/android\/server\/wm\/WindowManagerService.java" }, "-547111355": { "message": "hideIme Control target: %s ", "level": "DEBUG", "group": "WM_DEBUG_IME", "at": "com\/android\/server\/wm\/WindowManagerService.java" }, "-545190927": { "message": "<<< CLOSE TRANSACTION animate", "level": "INFO", Loading Loading @@ -1087,6 +1093,12 @@ "group": "WM_ERROR", "at": "com\/android\/server\/wm\/WindowManagerService.java" }, "95216706": { "message": "hideIme target: %s ", "level": "DEBUG", "group": "WM_DEBUG_IME", "at": "com\/android\/server\/wm\/WindowManagerService.java" }, "95281111": { "message": "Attempted to get IME flag of a display that does not exist: %d", "level": "WARN", Loading services/core/java/com/android/server/inputmethod/InputMethodManagerService.java +3 −1 Original line number Diff line number Diff line Loading @@ -4047,7 +4047,9 @@ public class InputMethodManagerService extends IInputMethodManager.Stub // Send it to window manager to hide IME from IME target window. // TODO(b/139861270): send to mCurClient.client once IMMS is aware of // actual IME target. mWindowManagerInternal.hideIme(mHideRequestWindowMap.get(windowToken)); mWindowManagerInternal.hideIme( mHideRequestWindowMap.get(windowToken), mCurClient.selfReportedDisplayId); } } else { // Send to window manager to show IME after IME layout finishes. Loading services/core/java/com/android/server/wm/WindowManagerInternal.java +2 −1 Original line number Diff line number Diff line Loading @@ -528,8 +528,9 @@ public abstract class WindowManagerInternal { * Hide IME using imeTargetWindow when requested. * * @param imeTargetWindowToken token of the (IME target) window on which IME should be hidden. * @param displayId the id of the display the IME is on. */ public abstract void hideIme(IBinder imeTargetWindowToken); public abstract void hideIme(IBinder imeTargetWindowToken, int displayId); /** * Tell window manager about a package that should not be running with high refresh rate Loading services/core/java/com/android/server/wm/WindowManagerService.java +17 −14 Original line number Diff line number Diff line Loading @@ -90,6 +90,7 @@ import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_ADD_REMOVE; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_BOOT; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_FOCUS; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_FOCUS_LIGHT; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_IME; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_KEEP_SCREEN_ON; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_ORIENTATION; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_SCREEN_ON; Loading Loading @@ -7616,26 +7617,28 @@ public class WindowManagerService extends IWindowManager.Stub } @Override public void hideIme(IBinder imeTargetWindowToken) { public void hideIme(IBinder imeTargetWindowToken, int displayId) { synchronized (mGlobalLock) { WindowState imeTarget = mWindowMap.get(imeTargetWindowToken); if (imeTarget == null) { // The target window no longer exists. return; } ProtoLog.d(WM_DEBUG_IME, "hideIme target: %s ", imeTarget); DisplayContent dc = mRoot.getDisplayContent(displayId); if (imeTarget != null) { imeTarget = imeTarget.getImeControlTarget().getWindow(); final DisplayContent dc = imeTarget != null ? imeTarget.getDisplayContent() : getDefaultDisplayContentLocked(); if (imeTarget != null) { dc = imeTarget.getDisplayContent(); } // If there was a pending IME show(), reset it as IME has been // requested to be hidden. dc.getInsetsStateController().getImeSourceProvider().abortShowImePostLayout(); if (dc.mInputMethodControlTarget == null) { return; } if (dc != null && dc.mInputMethodControlTarget != null) { ProtoLog.d(WM_DEBUG_IME, "hideIme Control target: %s ", dc.mInputMethodControlTarget); dc.mInputMethodControlTarget.hideInsets( WindowInsets.Type.ime(), true /* fromIme */); } } } @Override public boolean isUidAllowedOnDisplay(int displayId, int uid) { Loading Loading
data/etc/services.core.protolog.json +12 −0 Original line number Diff line number Diff line Loading @@ -757,6 +757,12 @@ "group": "WM_DEBUG_BOOT", "at": "com\/android\/server\/wm\/WindowManagerService.java" }, "-547111355": { "message": "hideIme Control target: %s ", "level": "DEBUG", "group": "WM_DEBUG_IME", "at": "com\/android\/server\/wm\/WindowManagerService.java" }, "-545190927": { "message": "<<< CLOSE TRANSACTION animate", "level": "INFO", Loading Loading @@ -1087,6 +1093,12 @@ "group": "WM_ERROR", "at": "com\/android\/server\/wm\/WindowManagerService.java" }, "95216706": { "message": "hideIme target: %s ", "level": "DEBUG", "group": "WM_DEBUG_IME", "at": "com\/android\/server\/wm\/WindowManagerService.java" }, "95281111": { "message": "Attempted to get IME flag of a display that does not exist: %d", "level": "WARN", Loading
services/core/java/com/android/server/inputmethod/InputMethodManagerService.java +3 −1 Original line number Diff line number Diff line Loading @@ -4047,7 +4047,9 @@ public class InputMethodManagerService extends IInputMethodManager.Stub // Send it to window manager to hide IME from IME target window. // TODO(b/139861270): send to mCurClient.client once IMMS is aware of // actual IME target. mWindowManagerInternal.hideIme(mHideRequestWindowMap.get(windowToken)); mWindowManagerInternal.hideIme( mHideRequestWindowMap.get(windowToken), mCurClient.selfReportedDisplayId); } } else { // Send to window manager to show IME after IME layout finishes. Loading
services/core/java/com/android/server/wm/WindowManagerInternal.java +2 −1 Original line number Diff line number Diff line Loading @@ -528,8 +528,9 @@ public abstract class WindowManagerInternal { * Hide IME using imeTargetWindow when requested. * * @param imeTargetWindowToken token of the (IME target) window on which IME should be hidden. * @param displayId the id of the display the IME is on. */ public abstract void hideIme(IBinder imeTargetWindowToken); public abstract void hideIme(IBinder imeTargetWindowToken, int displayId); /** * Tell window manager about a package that should not be running with high refresh rate Loading
services/core/java/com/android/server/wm/WindowManagerService.java +17 −14 Original line number Diff line number Diff line Loading @@ -90,6 +90,7 @@ import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_ADD_REMOVE; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_BOOT; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_FOCUS; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_FOCUS_LIGHT; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_IME; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_KEEP_SCREEN_ON; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_ORIENTATION; import static com.android.server.wm.ProtoLogGroup.WM_DEBUG_SCREEN_ON; Loading Loading @@ -7616,26 +7617,28 @@ public class WindowManagerService extends IWindowManager.Stub } @Override public void hideIme(IBinder imeTargetWindowToken) { public void hideIme(IBinder imeTargetWindowToken, int displayId) { synchronized (mGlobalLock) { WindowState imeTarget = mWindowMap.get(imeTargetWindowToken); if (imeTarget == null) { // The target window no longer exists. return; } ProtoLog.d(WM_DEBUG_IME, "hideIme target: %s ", imeTarget); DisplayContent dc = mRoot.getDisplayContent(displayId); if (imeTarget != null) { imeTarget = imeTarget.getImeControlTarget().getWindow(); final DisplayContent dc = imeTarget != null ? imeTarget.getDisplayContent() : getDefaultDisplayContentLocked(); if (imeTarget != null) { dc = imeTarget.getDisplayContent(); } // If there was a pending IME show(), reset it as IME has been // requested to be hidden. dc.getInsetsStateController().getImeSourceProvider().abortShowImePostLayout(); if (dc.mInputMethodControlTarget == null) { return; } if (dc != null && dc.mInputMethodControlTarget != null) { ProtoLog.d(WM_DEBUG_IME, "hideIme Control target: %s ", dc.mInputMethodControlTarget); dc.mInputMethodControlTarget.hideInsets( WindowInsets.Type.ime(), true /* fromIme */); } } } @Override public boolean isUidAllowedOnDisplay(int displayId, int uid) { Loading