Always cancel forwarding on ACTION_UP or ACTION_CANCEL.
Bug: 30563284
Change-Id: I6285eda6d9f7a775f8ae896baebc420a0cf84e21
diff --git a/src/com/android/launcher3/shortcuts/ShortcutsContainerListener.java b/src/com/android/launcher3/shortcuts/ShortcutsContainerListener.java
index 507939a..31f0969 100644
--- a/src/com/android/launcher3/shortcuts/ShortcutsContainerListener.java
+++ b/src/com/android/launcher3/shortcuts/ShortcutsContainerListener.java
@@ -218,8 +218,12 @@
if (dst == null) {
return false;
}
+ // Always cancel forwarding when the touch stream ends.
+ final int action = srcEvent.getActionMasked();
+ final boolean keepForwarding = action != MotionEvent.ACTION_UP
+ && action != MotionEvent.ACTION_CANCEL;
if (!dst.isLaidOut()) {
- return true;
+ return keepForwarding;
}
// Convert event to destination-local coordinates.
@@ -236,11 +240,6 @@
final boolean handled = dst.onForwardedEvent(dstEvent, mActivePointerId, mTouchDown);
dstEvent.recycle();
- // Always cancel forwarding when the touch stream ends.
- final int action = srcEvent.getActionMasked();
- final boolean keepForwarding = action != MotionEvent.ACTION_UP
- && action != MotionEvent.ACTION_CANCEL;
-
return handled && keepForwarding;
}