diff --git a/src/com/android/launcher3/shortcuts/ShortcutsContainerListener.java b/src/com/android/launcher3/shortcuts/ShortcutsContainerListener.java index 507939a8ea..31f0969909 100644 --- a/src/com/android/launcher3/shortcuts/ShortcutsContainerListener.java +++ b/src/com/android/launcher3/shortcuts/ShortcutsContainerListener.java @@ -218,8 +218,12 @@ public class ShortcutsContainerListener implements View.OnTouchListener, 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 @@ public class ShortcutsContainerListener implements View.OnTouchListener, 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; }