diff --git a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java index f60b2253e4..dc2b61b4dc 100644 --- a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java +++ b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java @@ -1065,10 +1065,11 @@ public abstract class AbsSwipeUpHandler, : LAST_TASK; } } else { - // If swiping at a diagonal, base end target on the faster velocity. + // If swiping at a diagonal on the current task, base end target on the faster velocity. boolean isSwipeUp = endVelocity < 0; - boolean willGoToNewTask = - canGoToNewTask && Math.abs(velocity.x) > Math.abs(endVelocity); + boolean willGoToNewTask = canGoToNewTask && ( + mRecentsView.getDestinationPage() != mRecentsView.getCurrentPage() + || Math.abs(velocity.x) > Math.abs(endVelocity)); if (mDeviceState.isFullyGesturalNavMode() && isSwipeUp) { endTarget = willGoToNewTask ? NEW_TASK : HOME;