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

Commit 0d562bf8 authored by chaviw's avatar chaviw
Browse files

Revert "Set options on startingActivity instead of topActivity"

This reverts commit ee6f81b2.

Bug: 74611027
parent 3e2caa1a
Loading
Loading
Loading
Loading
+8 −9
Original line number Diff line number Diff line
@@ -4501,11 +4501,11 @@ class ActivityStack<T extends StackWindowController> extends ConfigurationContai
        return hasVisibleActivities;
    }

    private void updateTransitLocked(int transit, ActivityRecord starting,
            ActivityOptions options) {
    private void updateTransitLocked(int transit, ActivityOptions options) {
        if (options != null) {
            if (starting != null && !starting.isState(RESUMED)) {
                starting.updateOptionsLocked(options);
            ActivityRecord r = topRunningActivityLocked();
            if (r != null && !r.isState(RESUMED)) {
                r.updateOptionsLocked(options);
            } else {
                ActivityOptions.abort(options);
            }
@@ -4542,9 +4542,8 @@ class ActivityStack<T extends StackWindowController> extends ConfigurationContai
        }
    }

    final void moveTaskToFrontLocked(TaskRecord tr, ActivityRecord starting,
            boolean noAnimation, ActivityOptions options, AppTimeTracker timeTracker,
            String reason) {
    final void moveTaskToFrontLocked(TaskRecord tr, boolean noAnimation, ActivityOptions options,
            AppTimeTracker timeTracker, String reason) {
        if (DEBUG_SWITCH) Slog.v(TAG_SWITCH, "moveTaskToFront: " + tr);

        final ActivityStack topStack = getDisplay().getTopStack();
@@ -4556,7 +4555,7 @@ class ActivityStack<T extends StackWindowController> extends ConfigurationContai
            if (noAnimation) {
                ActivityOptions.abort(options);
            } else {
                updateTransitLocked(TRANSIT_TASK_TO_FRONT, starting, options);
                updateTransitLocked(TRANSIT_TASK_TO_FRONT, options);
            }
            return;
        }
@@ -4594,7 +4593,7 @@ class ActivityStack<T extends StackWindowController> extends ConfigurationContai
            }
            ActivityOptions.abort(options);
        } else {
            updateTransitLocked(TRANSIT_TASK_TO_FRONT, starting, options);
            updateTransitLocked(TRANSIT_TASK_TO_FRONT, options);
        }
        // If a new task is moved to the front, then mark the existing top activity as supporting
        // picture-in-picture while paused only if the task would not be considered an oerlay on top
+1 −1
Original line number Diff line number Diff line
@@ -2196,7 +2196,7 @@ public class ActivityStackSupervisor extends ConfigurationContainer implements D
        }

        final ActivityRecord r = task.getTopActivity();
        currentStack.moveTaskToFrontLocked(task, r, false /* noAnimation */, options,
        currentStack.moveTaskToFrontLocked(task, false /* noAnimation */, options,
                r == null ? null : r.appTimeTracker, reason);

        if (DEBUG_STACK) Slog.d(TAG_STACK,
+8 −9
Original line number Diff line number Diff line
@@ -1815,9 +1815,8 @@ class ActivityStarter {
                        // We only want to move to the front, if we aren't going to launch on a
                        // different stack. If we launch on a different stack, we will put the
                        // task on top there.
                        mTargetStack.moveTaskToFrontLocked(intentTask, mStartActivity, mNoAnimation,
                                mOptions, mStartActivity.appTimeTracker,
                                "bringingFoundTaskToFront");
                        mTargetStack.moveTaskToFrontLocked(intentTask, mNoAnimation, mOptions,
                                mStartActivity.appTimeTracker, "bringingFoundTaskToFront");
                        mMovedToFront = true;
                    } else if (launchStack.inSplitScreenWindowingMode()) {
                        if ((mLaunchFlags & FLAG_ACTIVITY_LAUNCH_ADJACENT) != 0) {
@@ -1831,7 +1830,7 @@ class ActivityStarter {
                            // We choose to move task to front instead of launching it adjacent
                            // when specific stack was requested explicitly and it appeared to be
                            // adjacent stack, but FLAG_ACTIVITY_LAUNCH_ADJACENT was not set.
                            mTargetStack.moveTaskToFrontLocked(intentTask, mStartActivity,
                            mTargetStack.moveTaskToFrontLocked(intentTask,
                                    mNoAnimation, mOptions, mStartActivity.appTimeTracker,
                                    "bringToFrontInsteadOfAdjacentLaunch");
                        }
@@ -2060,7 +2059,7 @@ class ActivityStarter {

        final TaskRecord topTask = mTargetStack.topTask();
        if (topTask != sourceTask && !mAvoidMoveToFront) {
            mTargetStack.moveTaskToFrontLocked(sourceTask, mStartActivity, mNoAnimation, mOptions,
            mTargetStack.moveTaskToFrontLocked(sourceTask, mNoAnimation, mOptions,
                    mStartActivity.appTimeTracker, "sourceTaskToFront");
        } else if (mDoResume) {
            mTargetStack.moveToFront("sourceStackToFront");
@@ -2126,7 +2125,7 @@ class ActivityStarter {
                && top.userId == mStartActivity.userId) {
            if ((mLaunchFlags & FLAG_ACTIVITY_SINGLE_TOP) != 0
                    || isLaunchModeOneOf(LAUNCH_SINGLE_TOP, LAUNCH_SINGLE_TASK)) {
                mTargetStack.moveTaskToFrontLocked(mInTask, mStartActivity, mNoAnimation, mOptions,
                mTargetStack.moveTaskToFrontLocked(mInTask, mNoAnimation, mOptions,
                        mStartActivity.appTimeTracker, "inTaskToFront");
                if ((mStartFlags & START_FLAG_ONLY_IF_NEEDED) != 0) {
                    // We don't need to start a new activity, and the client said not to do
@@ -2139,7 +2138,7 @@ class ActivityStarter {
        }

        if (!mAddingToTask) {
            mTargetStack.moveTaskToFrontLocked(mInTask, mStartActivity, mNoAnimation, mOptions,
            mTargetStack.moveTaskToFrontLocked(mInTask, mNoAnimation, mOptions,
                    mStartActivity.appTimeTracker, "inTaskToFront");
            // We don't actually want to have this activity added to the task, so just
            // stop here but still tell the caller that we consumed the intent.
@@ -2159,8 +2158,8 @@ class ActivityStarter {
            updateBounds(mInTask, mLaunchParams.mBounds);
        }

        mTargetStack.moveTaskToFrontLocked(mInTask, mStartActivity, mNoAnimation, mOptions,
                mStartActivity.appTimeTracker, "inTaskToFront");
        mTargetStack.moveTaskToFrontLocked(
                mInTask, mNoAnimation, mOptions, mStartActivity.appTimeTracker, "inTaskToFront");

        addOrReparentStartingActivity(mInTask, "setTaskFromInTask");
        if (DEBUG_TASKS) Slog.v(TAG_TASKS, "Starting new activity " + mStartActivity