From aa66a288c34553230a080d97a2dfca33dd175755 Mon Sep 17 00:00:00 2001 From: Tony Wickham Date: Tue, 19 Feb 2019 11:35:25 -0800 Subject: [PATCH] Dispatch ACTION_POINTER_UP to recents view Bug: 123539954 Change-Id: I298599445d644eb82e05a116ce85425d239839fe --- .../quickstep/OtherActivityTouchConsumer.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/quickstep/src/com/android/quickstep/OtherActivityTouchConsumer.java b/quickstep/src/com/android/quickstep/OtherActivityTouchConsumer.java index a33582722f..d8c45c5066 100644 --- a/quickstep/src/com/android/quickstep/OtherActivityTouchConsumer.java +++ b/quickstep/src/com/android/quickstep/OtherActivityTouchConsumer.java @@ -43,6 +43,9 @@ import android.view.VelocityTracker; import android.view.ViewConfiguration; import android.view.WindowManager; +import androidx.annotation.Nullable; +import androidx.annotation.UiThread; + import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.util.Preconditions; import com.android.launcher3.util.RaceConditionTracker; @@ -59,9 +62,6 @@ import com.android.systemui.shared.system.WindowManagerWrapper; import java.util.function.Consumer; -import androidx.annotation.Nullable; -import androidx.annotation.UiThread; - /** * Touch consumer for handling events originating from an activity other than Launcher */ @@ -177,6 +177,7 @@ public class OtherActivityTouchConsumer extends ContextWrapper implements TouchC mLastPos.set(ev.getX(newPointerIdx), ev.getY(newPointerIdx)); mActivePointerId = ev.getPointerId(newPointerIdx); } + dispatchMotion(ev, null, null); break; } case ACTION_MOVE: { @@ -244,8 +245,11 @@ public class OtherActivityTouchConsumer extends ContextWrapper implements TouchC } } - private void dispatchMotion(MotionEvent ev, float displacement, @Nullable Float velocityX) { - mInteractionHandler.updateDisplacement(displacement); + private void dispatchMotion(MotionEvent ev, @Nullable Float displacement, + @Nullable Float velocityX) { + if (displacement != null) { + mInteractionHandler.updateDisplacement(displacement); + } boolean isLandscape = isNavBarOnLeft() || isNavBarOnRight(); if (!isLandscape) { mInteractionHandler.dispatchMotionEventToRecentsView(ev, velocityX);