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

Commit f209a77a authored by Tracy Zhou's avatar Tracy Zhou Committed by Android (Google) Code Review
Browse files

Merge "Continue receiving key events from input consumer after settling into Overview" into sc-dev

parents 4076cae8 b0b2a9ac
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -1334,7 +1334,11 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>,
    }

    private void invalidateHandler() {
        if (!LIVE_TILE.get() || !mActivityInterface.isInLiveTileMode()
                || mGestureState.getEndTarget() != RECENTS) {
            mInputConsumerProxy.destroy();
            mTaskAnimationManager.setLiveTileCleanUpHandler(null);
        }
        endRunningWindowAnim(false /* cancel */);

        if (mGestureEndCallback != null) {
@@ -1526,6 +1530,7 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>,
                        apps[apps.length - 1] = appearedTaskTarget;
                        launchOtherTaskInLiveTileMode(appearedTaskTarget.taskId, apps);
                    });
            mTaskAnimationManager.setLiveTileCleanUpHandler(mInputConsumerProxy::destroy);
            ActivityManagerWrapper.getInstance().registerTaskStackListener(
                    mLiveTileRestartListener);
        }
+10 −0
Original line number Diff line number Diff line
@@ -50,6 +50,7 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn
    private GestureState mLastGestureState;
    private RemoteAnimationTargetCompat mLastAppearedTaskTarget;
    private Consumer<RemoteAnimationTargetCompat> mLaunchOtherTaskHandler;
    private Runnable mLiveTileCleanUpHandler;
    private Context mCtx;

    TaskAnimationManager(Context ctx) {
@@ -169,6 +170,10 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn
        mLaunchOtherTaskHandler = handler;
    }

    public void setLiveTileCleanUpHandler(Runnable runnable) {
        mLiveTileCleanUpHandler = runnable;
    }

    /**
     * Finishes the running recents animation.
     */
@@ -206,6 +211,11 @@ public class TaskAnimationManager implements RecentsAnimationCallbacks.RecentsAn
     * Cleans up the recents animation entirely.
     */
    private void cleanUpRecentsAnimation() {
        if (mLiveTileCleanUpHandler != null) {
            mLiveTileCleanUpHandler.run();
            mLiveTileCleanUpHandler = null;
        }

        // Release all the target leashes
        if (mTargets != null) {
            mTargets.release();