Ignore following touch actions if we didn't have window focus
Previously we would ignore the down action, but then get the up if
window focus had changed (such as when hitting back to get rid of the
keyboard in all apps, which would launch the app in that position).
Bug: 73887575
Change-Id: I5405223982ef52633180ecd960a697af0d0b76d9
diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java
index 91ea29b..c166292 100644
--- a/quickstep/src/com/android/quickstep/TouchInteractionService.java
+++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java
@@ -239,6 +239,7 @@
private boolean mTrackingStarted = false;
private boolean mInvalidated = false;
+ private boolean mHadWindowFocusOnDown;
LauncherTouchConsumer(Launcher launcher, View target) {
mLauncher = launcher;
@@ -254,14 +255,12 @@
if (mInvalidated) {
return;
}
- if (!mTarget.hasWindowFocus()) {
- return;
- }
int action = ev.getActionMasked();
if (action == ACTION_DOWN) {
mTrackingStarted = false;
mDownPos.set(ev.getX(), ev.getY());
- } else if (!mTrackingStarted) {
+ mHadWindowFocusOnDown = mTarget.hasWindowFocus();
+ } else if (!mTrackingStarted && mHadWindowFocusOnDown) {
switch (action) {
case ACTION_POINTER_UP:
case ACTION_POINTER_DOWN: