Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9d693700 authored by Tony Wickham's avatar Tony Wickham Committed by Android (Google) Code Review
Browse files

Merge "Pass isLikelyToStartNewTask to onGestureStarted()" into ub-launcher3-rvc-dev

parents fce6be55 c6a56ef7
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -327,7 +327,7 @@ public abstract class BaseSwipeUpHandler<T extends StatefulActivity<?>, Q extend
    public abstract void onMotionPauseChanged(boolean isPaused);
    public abstract void onMotionPauseChanged(boolean isPaused);


    @UiThread
    @UiThread
    public void onGestureStarted() { }
    public void onGestureStarted(boolean isLikelyToStartNewTask) { }


    @UiThread
    @UiThread
    public abstract void onGestureCancelled();
    public abstract void onGestureCancelled();
+7 −2
Original line number Original line Diff line number Diff line
@@ -492,9 +492,13 @@ public abstract class BaseSwipeUpHandlerV2<T extends StatefulActivity<?>, Q exte


    @Override
    @Override
    public void setIsLikelyToStartNewTask(boolean isLikelyToStartNewTask) {
    public void setIsLikelyToStartNewTask(boolean isLikelyToStartNewTask) {
        setIsLikelyToStartNewTask(isLikelyToStartNewTask, true /* animate */);
    }

    private void setIsLikelyToStartNewTask(boolean isLikelyToStartNewTask, boolean animate) {
        if (mIsLikelyToStartNewTask != isLikelyToStartNewTask) {
        if (mIsLikelyToStartNewTask != isLikelyToStartNewTask) {
            mIsLikelyToStartNewTask = isLikelyToStartNewTask;
            mIsLikelyToStartNewTask = isLikelyToStartNewTask;
            maybeUpdateRecentsAttachedState();
            maybeUpdateRecentsAttachedState(animate);
        }
        }
    }
    }


@@ -628,8 +632,9 @@ public abstract class BaseSwipeUpHandlerV2<T extends StatefulActivity<?>, Q exte
    }
    }


    @Override
    @Override
    public void onGestureStarted() {
    public void onGestureStarted(boolean isLikelyToStartNewTask) {
        notifyGestureStartedAsync();
        notifyGestureStartedAsync();
        setIsLikelyToStartNewTask(isLikelyToStartNewTask, false /* animate */);
        mStateCallback.setStateOnUiThread(STATE_GESTURE_STARTED);
        mStateCallback.setStateOnUiThread(STATE_GESTURE_STARTED);
        mGestureStarted = true;
        mGestureStarted = true;
    }
    }
+11 −12
Original line number Original line Diff line number Diff line
@@ -277,6 +277,13 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC
                if (!mPassedSlopOnThisGesture && passedSlop) {
                if (!mPassedSlopOnThisGesture && passedSlop) {
                    mPassedSlopOnThisGesture = true;
                    mPassedSlopOnThisGesture = true;
                }
                }
                // Until passing slop, we don't know what direction we're going, so assume
                // we're quick switching to avoid translating recents away when continuing
                // the gesture (in which case mPassedPilferInputSlop starts as true).
                boolean haveNotPassedSlopOnContinuedGesture =
                        !mPassedSlopOnThisGesture && mPassedPilferInputSlop;
                boolean isLikelyToStartNewTask = haveNotPassedSlopOnContinuedGesture
                        || horizontalDist > upDist;


                if (!mPassedPilferInputSlop) {
                if (!mPassedPilferInputSlop) {
                    if (passedSlop) {
                    if (passedSlop) {
@@ -299,7 +306,7 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC
                            mStartDisplacement = Math.min(displacement, -mTouchSlop);
                            mStartDisplacement = Math.min(displacement, -mTouchSlop);


                        }
                        }
                        notifyGestureStarted();
                        notifyGestureStarted(isLikelyToStartNewTask);
                    }
                    }
                }
                }


@@ -310,13 +317,6 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC
                    }
                    }


                    if (mDeviceState.isFullyGesturalNavMode()) {
                    if (mDeviceState.isFullyGesturalNavMode()) {
                        // Until passing slop, we don't know what direction we're going, so assume
                        // we're quick switching to avoid translating recents away when continuing
                        // the gesture.
                        boolean haveNotPassedSlopOnContinuedGesture =
                                !mPassedSlopOnThisGesture && mPassedPilferInputSlop;
                        boolean isLikelyToStartNewTask = haveNotPassedSlopOnContinuedGesture
                                || horizontalDist > upDist;
                        mMotionPauseDetector.setDisallowPause(upDist < mMotionPauseMinDisplacement
                        mMotionPauseDetector.setDisallowPause(upDist < mMotionPauseMinDisplacement
                                || isLikelyToStartNewTask);
                                || isLikelyToStartNewTask);
                        mMotionPauseDetector.addPosition(ev);
                        mMotionPauseDetector.addPosition(ev);
@@ -340,7 +340,7 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC
        }
        }
    }
    }


    private void notifyGestureStarted() {
    private void notifyGestureStarted(boolean isLikelyToStartNewTask) {
        ActiveGestureLog.INSTANCE.addLog("startQuickstep");
        ActiveGestureLog.INSTANCE.addLog("startQuickstep");
        if (mInteractionHandler == null) {
        if (mInteractionHandler == null) {
            return;
            return;
@@ -353,7 +353,7 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC
                CLOSE_SYSTEM_WINDOWS_REASON_RECENTS);
                CLOSE_SYSTEM_WINDOWS_REASON_RECENTS);


        // Notify the handler that the gesture has actually started
        // Notify the handler that the gesture has actually started
        mInteractionHandler.onGestureStarted();
        mInteractionHandler.onGestureStarted(isLikelyToStartNewTask);
    }
    }


    private void startTouchTrackingForWindowAnimation(long touchTimeMs) {
    private void startTouchTrackingForWindowAnimation(long touchTimeMs) {
@@ -370,8 +370,7 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC
            mActiveCallbacks = mTaskAnimationManager.continueRecentsAnimation(mGestureState);
            mActiveCallbacks = mTaskAnimationManager.continueRecentsAnimation(mGestureState);
            mActiveCallbacks.addListener(mInteractionHandler);
            mActiveCallbacks.addListener(mInteractionHandler);
            mTaskAnimationManager.notifyRecentsAnimationState(mInteractionHandler);
            mTaskAnimationManager.notifyRecentsAnimationState(mInteractionHandler);
            mInteractionHandler.setIsLikelyToStartNewTask(true);
            notifyGestureStarted(true /*isLikelyToStartNewTask*/);
            notifyGestureStarted();
        } else {
        } else {
            intent.putExtra(INTENT_EXTRA_LOG_TRACE_ID, mGestureState.getGestureId());
            intent.putExtra(INTENT_EXTRA_LOG_TRACE_ID, mGestureState.getGestureId());
            mActiveCallbacks = mTaskAnimationManager.startRecentsAnimation(mGestureState, intent,
            mActiveCallbacks = mTaskAnimationManager.startRecentsAnimation(mGestureState, intent,