diff options
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowManagerService.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index 9e8b6a34e1d5..dfc677278847 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -8123,6 +8123,16 @@ public class WindowManagerService extends IWindowManager.Stub return; } + if (mRecentsAnimationController != null + && mRecentsAnimationController.getTargetAppMainWindow() == touchedWindow) { + // If there is an active recents animation and touched window is the target, then ignore + // the touch. The target already handles touches using its own input monitor and we + // don't want to trigger any lifecycle changes from focusing another window. + // TODO(b/186770026): We should remove this once we support multiple resumed activities + // while in overview + return; + } + ProtoLog.i(WM_DEBUG_FOCUS_LIGHT, "onPointerDownOutsideFocusLocked called on %s", touchedWindow); final DisplayContent displayContent = touchedWindow.getDisplayContent(); |