summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/wm/WindowManagerService.java3
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);