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

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

Merge "Make new task follow source task root" into sc-v2-dev am: 8172fc3e

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

Change-Id: I9f025025d2718ddb42d650120d0e2d1cc39e3993
parents 61183ca8 8172fc3e
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -2737,9 +2737,11 @@ class ActivityStarter {
        // 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.getActivityType(), null /** options */,
                mSourceRootTask, 0 /** launchFlags */);
        // If target root task is created by organizer, let organizer handle reparent itself.
        if (!mTargetRootTask.mCreatedByOrganizer && launchRootTask != null
                && launchRootTask != mTargetRootTask) {
            mTargetRootTask.reparent(launchRootTask, POSITION_TOP);
            mTargetRootTask = launchRootTask;
        }
+5 −0
Original line number Diff line number Diff line
@@ -1275,6 +1275,11 @@ final class TaskDisplayArea extends DisplayArea<WindowContainer> {
                }
            }
        }
        // For better split UX, If task launch by the source task which root task is created by
        // organizer, it should also launch in that root too.
        if (sourceTask != null && sourceTask.getRootTask().mCreatedByOrganizer) {
            return sourceTask.getRootTask();
        }
        return null;
    }