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

Commit cae352b3 authored by Tony Huang's avatar Tony Huang Committed by Automerger Merge Worker
Browse files

Merge "Let root task can reparent to launch root task while launch" into...

Merge "Let root task can reparent to launch root task while launch" into sc-v2-dev am: eeb927bd am: 9128c09e

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

Change-Id: I73ab28ad412e6608a527ec898d2941421114092a
parents b2a5fe21 9128c09e
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -2722,6 +2722,17 @@ class ActivityStarter {
        mTargetRootTask = intentActivity.getRootTask();
        mSupervisor.handleNonResizableTaskIfNeeded(intentTask, WINDOWING_MODE_UNDEFINED,
                mRootWindowContainer.getDefaultTaskDisplayArea(), mTargetRootTask);

        // We need to check if there is a launch root task in TDA for this target root task.
        // If it exist, we need to reparent target root task from TDA to launch root task.
        final TaskDisplayArea tda = mTargetRootTask.getDisplayArea();
        final Task launchRootTask = tda.getLaunchRootTask(mTargetRootTask.getWindowingMode(),
                mTargetRootTask.getActivityType(), null /** options */, null /** sourceTask */,
                0 /** launchFlags */);
        if (launchRootTask != null && launchRootTask != mTargetRootTask) {
            mTargetRootTask.reparent(launchRootTask, POSITION_TOP);
            mTargetRootTask = launchRootTask;
        }
    }

    private void resumeTargetRootTaskIfNeeded() {