Loading quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java +11 −39 Original line number Diff line number Diff line Loading @@ -292,7 +292,6 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, private boolean mWasLauncherAlreadyVisible; private boolean mPassedOverviewThreshold; private boolean mGestureStarted; private boolean mLogDirectionUpOrLeft = true; private PointF mDownPos; Loading @@ -319,8 +318,8 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, private final int mTaskbarCatchUpThreshold; private boolean mTaskbarAlreadyOpen; private final boolean mIsTransientTaskbar; // Only used when mIsTransientTaskbar is true. private boolean mHasReachedHomeOverviewThreshold; // May be set to false when mIsTransientTaskbar is true. private boolean mCanSlowSwipeGoHome = true; public AbsSwipeUpHandler(Context context, RecentsAnimationDeviceState deviceState, TaskAnimationManager taskAnimationManager, GestureState gestureState, Loading Loading @@ -811,14 +810,6 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, @UiThread @Override public void updateFinalShift() { final boolean passed = hasReachedHomeOverviewThreshold(); if (passed != mPassedOverviewThreshold) { mPassedOverviewThreshold = passed; if (mDeviceState.isTwoButtonNavMode() && !mGestureState.isHandlingAtomicEvent()) { performHapticFeedback(); } } updateSysUiFlags(mCurrentShift.value); applyScrollAndTransform(); Loading Loading @@ -903,8 +894,6 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, mStateCallback.runOnceAtState(STATE_APP_CONTROLLER_RECEIVED | STATE_GESTURE_STARTED, this::startInterceptingTouchesForGesture); mStateCallback.setStateOnUiThread(STATE_APP_CONTROLLER_RECEIVED); mPassedOverviewThreshold = false; } @Override Loading Loading @@ -1132,20 +1121,11 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, return willGoToNewTask || isCenteredOnNewTask ? NEW_TASK : LAST_TASK; } if (!mDeviceState.isFullyGesturalNavMode()) { return (!hasReachedHomeOverviewThreshold() && willGoToNewTask) ? NEW_TASK : RECENTS; } return willGoToNewTask ? NEW_TASK : HOME; } private GestureEndTarget calculateEndTargetForNonFling(PointF velocity) { final boolean isScrollingToNewTask = isScrollingToNewTask(); final boolean reachedHomeOverviewThreshold = hasReachedHomeOverviewThreshold(); if (!mDeviceState.isFullyGesturalNavMode()) { return reachedHomeOverviewThreshold && mGestureStarted ? RECENTS : (isScrollingToNewTask ? NEW_TASK : LAST_TASK); } // Fully gestural mode. final boolean isFlingX = Math.abs(velocity.x) > mContext.getResources() Loading @@ -1158,10 +1138,8 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, return RECENTS; } else if (isScrollingToNewTask) { return NEW_TASK; } else if (reachedHomeOverviewThreshold) { return HOME; } return LAST_TASK; return velocity.y < 0 && mCanSlowSwipeGoHome ? HOME : LAST_TASK; } private boolean isScrollingToNewTask() { Loading @@ -1178,21 +1156,15 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, } /** * Sets whether the current swipe has reached the threshold where if user lets go they would * go to either the home state or overview state. */ public void setHasReachedHomeOverviewThreshold(boolean hasReachedHomeOverviewThreshold) { mHasReachedHomeOverviewThreshold = hasReachedHomeOverviewThreshold; } /** * Returns true iff swipe has reached the overview threshold. * Sets whether a slow swipe can go to the HOME end target when the user lets go. A slow swipe * for this purpose must meet two criteria: * 1) y-velocity is less than quickstep_fling_threshold_speed * AND * 2) motion pause has not been detected (possibly because * {@link MotionPauseDetector#setDisallowPause} has been called with disallowPause == true) */ public boolean hasReachedHomeOverviewThreshold() { if (mIsTransientTaskbar) { return mHasReachedHomeOverviewThreshold; } return mCurrentShift.value > MIN_PROGRESS_FOR_OVERVIEW; public void setCanSlowSwipeGoHome(boolean canSlowSwipeGoHome) { mCanSlowSwipeGoHome = canSlowSwipeGoHome; } @UiThread Loading quickstep/src/com/android/quickstep/inputconsumers/OtherActivityInputConsumer.java +1 −1 Original line number Diff line number Diff line Loading @@ -340,8 +340,8 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC boolean minSwipeMet = upDist >= mMotionPauseMinDisplacement; if (mIsTransientTaskbar) { minSwipeMet = upDist >= mTaskbarHomeOverviewThreshold; mInteractionHandler.setHasReachedHomeOverviewThreshold(minSwipeMet); } mInteractionHandler.setCanSlowSwipeGoHome(minSwipeMet); mMotionPauseDetector.setDisallowPause(!minSwipeMet || isLikelyToStartNewTask); mMotionPauseDetector.addPosition(ev); Loading Loading
quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java +11 −39 Original line number Diff line number Diff line Loading @@ -292,7 +292,6 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, private boolean mWasLauncherAlreadyVisible; private boolean mPassedOverviewThreshold; private boolean mGestureStarted; private boolean mLogDirectionUpOrLeft = true; private PointF mDownPos; Loading @@ -319,8 +318,8 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, private final int mTaskbarCatchUpThreshold; private boolean mTaskbarAlreadyOpen; private final boolean mIsTransientTaskbar; // Only used when mIsTransientTaskbar is true. private boolean mHasReachedHomeOverviewThreshold; // May be set to false when mIsTransientTaskbar is true. private boolean mCanSlowSwipeGoHome = true; public AbsSwipeUpHandler(Context context, RecentsAnimationDeviceState deviceState, TaskAnimationManager taskAnimationManager, GestureState gestureState, Loading Loading @@ -811,14 +810,6 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, @UiThread @Override public void updateFinalShift() { final boolean passed = hasReachedHomeOverviewThreshold(); if (passed != mPassedOverviewThreshold) { mPassedOverviewThreshold = passed; if (mDeviceState.isTwoButtonNavMode() && !mGestureState.isHandlingAtomicEvent()) { performHapticFeedback(); } } updateSysUiFlags(mCurrentShift.value); applyScrollAndTransform(); Loading Loading @@ -903,8 +894,6 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, mStateCallback.runOnceAtState(STATE_APP_CONTROLLER_RECEIVED | STATE_GESTURE_STARTED, this::startInterceptingTouchesForGesture); mStateCallback.setStateOnUiThread(STATE_APP_CONTROLLER_RECEIVED); mPassedOverviewThreshold = false; } @Override Loading Loading @@ -1132,20 +1121,11 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, return willGoToNewTask || isCenteredOnNewTask ? NEW_TASK : LAST_TASK; } if (!mDeviceState.isFullyGesturalNavMode()) { return (!hasReachedHomeOverviewThreshold() && willGoToNewTask) ? NEW_TASK : RECENTS; } return willGoToNewTask ? NEW_TASK : HOME; } private GestureEndTarget calculateEndTargetForNonFling(PointF velocity) { final boolean isScrollingToNewTask = isScrollingToNewTask(); final boolean reachedHomeOverviewThreshold = hasReachedHomeOverviewThreshold(); if (!mDeviceState.isFullyGesturalNavMode()) { return reachedHomeOverviewThreshold && mGestureStarted ? RECENTS : (isScrollingToNewTask ? NEW_TASK : LAST_TASK); } // Fully gestural mode. final boolean isFlingX = Math.abs(velocity.x) > mContext.getResources() Loading @@ -1158,10 +1138,8 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, return RECENTS; } else if (isScrollingToNewTask) { return NEW_TASK; } else if (reachedHomeOverviewThreshold) { return HOME; } return LAST_TASK; return velocity.y < 0 && mCanSlowSwipeGoHome ? HOME : LAST_TASK; } private boolean isScrollingToNewTask() { Loading @@ -1178,21 +1156,15 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, } /** * Sets whether the current swipe has reached the threshold where if user lets go they would * go to either the home state or overview state. */ public void setHasReachedHomeOverviewThreshold(boolean hasReachedHomeOverviewThreshold) { mHasReachedHomeOverviewThreshold = hasReachedHomeOverviewThreshold; } /** * Returns true iff swipe has reached the overview threshold. * Sets whether a slow swipe can go to the HOME end target when the user lets go. A slow swipe * for this purpose must meet two criteria: * 1) y-velocity is less than quickstep_fling_threshold_speed * AND * 2) motion pause has not been detected (possibly because * {@link MotionPauseDetector#setDisallowPause} has been called with disallowPause == true) */ public boolean hasReachedHomeOverviewThreshold() { if (mIsTransientTaskbar) { return mHasReachedHomeOverviewThreshold; } return mCurrentShift.value > MIN_PROGRESS_FOR_OVERVIEW; public void setCanSlowSwipeGoHome(boolean canSlowSwipeGoHome) { mCanSlowSwipeGoHome = canSlowSwipeGoHome; } @UiThread Loading
quickstep/src/com/android/quickstep/inputconsumers/OtherActivityInputConsumer.java +1 −1 Original line number Diff line number Diff line Loading @@ -340,8 +340,8 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC boolean minSwipeMet = upDist >= mMotionPauseMinDisplacement; if (mIsTransientTaskbar) { minSwipeMet = upDist >= mTaskbarHomeOverviewThreshold; mInteractionHandler.setHasReachedHomeOverviewThreshold(minSwipeMet); } mInteractionHandler.setCanSlowSwipeGoHome(minSwipeMet); mMotionPauseDetector.setDisallowPause(!minSwipeMet || isLikelyToStartNewTask); mMotionPauseDetector.addPosition(ev); Loading