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

Commit 900ba5fa authored by Winson Chung's avatar Winson Chung Committed by Automerger Merge Worker
Browse files

Merge "Cancel the existing recents animation before any initialization" into...

Merge "Cancel the existing recents animation before any initialization" into sc-v2-dev am: a367967c

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15984435

Change-Id: I05797ab7601d69fee8ea6bf7b26a05c934892b4d
parents a10f6e2c a367967c
Loading
Loading
Loading
Loading
+8 −6
Original line number Diff line number Diff line
@@ -170,6 +170,13 @@ class RecentsAnimation implements RecentsAnimationCallbacks, OnRootTaskOrderChan
        ProtoLog.d(WM_DEBUG_RECENTS_ANIMATIONS, "startRecentsActivity(): intent=%s", mTargetIntent);
        Trace.traceBegin(TRACE_TAG_WINDOW_MANAGER, "RecentsAnimation#startRecentsActivity");

        // Cancel any existing recents animation running synchronously (do not hold the
        // WM lock) before starting the newly requested recents animation as they can not coexist
        if (mWindowManager.getRecentsAnimationController() != null) {
            mWindowManager.getRecentsAnimationController().forceCancelAnimation(
                    REORDER_MOVE_TO_ORIGINAL_POSITION, "startRecentsActivity");
        }

        // If the activity is associated with the root recents task, then try and get that first
        Task targetRootTask = mDefaultTaskDisplayArea.getRootTask(WINDOWING_MODE_UNDEFINED,
                mTargetActivityType);
@@ -243,12 +250,7 @@ class RecentsAnimation implements RecentsAnimationCallbacks, OnRootTaskOrderChan
            targetActivity.intent.replaceExtras(mTargetIntent);

            // Fetch all the surface controls and pass them to the client to get the animation
            // started. Cancel any existing recents animation running synchronously (do not hold the
            // WM lock)
            if (mWindowManager.getRecentsAnimationController() != null) {
                mWindowManager.getRecentsAnimationController().forceCancelAnimation(
                        REORDER_MOVE_TO_ORIGINAL_POSITION, "startRecentsActivity");
            }
            // started
            mWindowManager.initializeRecentsAnimation(mTargetActivityType, recentsAnimationRunner,
                    this, mDefaultTaskDisplayArea.getDisplayId(),
                    mTaskSupervisor.mRecentTasks.getRecentTaskIds(), targetActivity);