diff options
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowManagerService.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index 13453a63a1ab..464afe003b71 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -9036,7 +9036,8 @@ public class WindowManagerService extends IWindowManager.Stub // Otherwise, handle the touch-outside event directly. final WindowState w = t.getWindowState(); final ActivityRecord activity = w != null ? w.getActivityRecord() : null; - if (activity != null && activity.isEmbedded() + if (mFocusedInputTarget != t && mFocusedInputTarget != null + && activity != null && activity.isEmbedded() && activity.getTaskFragment().getAdjacentTaskFragment() != null) { mPointerDownOutsideFocusRunnable = () -> handlePointerDownOutsideFocus(t); mH.postDelayed(mPointerDownOutsideFocusRunnable, POINTER_DOWN_OUTSIDE_FOCUS_TIMEOUT_MS); |