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

Commit 8df0cf45 authored by Hongwei Wang's avatar Hongwei Wang Committed by Android (Google) Code Review
Browse files

Merge "Allow other app enter PiP when exiting current one" into tm-qpr-dev

parents a117bbe3 c6ec2bf8
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -966,7 +966,7 @@ public class PipTaskOrganizer implements ShellTaskOrganizer.TaskListener,
        // Re-set the PIP bounds to none.
        mPipBoundsState.setBounds(new Rect());
        mPipUiEventLoggerLogger.setTaskInfo(null);
        mMainExecutor.executeDelayed(() -> mPipMenuController.detach(), 0);
        mPipMenuController.detach();
        mLeash = null;

        if (info.displayId != Display.DEFAULT_DISPLAY && mOnDisplayIdChangeCallback != null) {
+8 −0
Original line number Diff line number Diff line
@@ -4465,6 +4465,14 @@ class Task extends TaskFragment {
            // transferring the transform on the leash to the task, reset this state once we're
            // moving out of pip
            setCanAffectSystemUiFlags(true);
            // Turn on userLeaveHint so other app can enter PiP mode.
            mTaskSupervisor.mUserLeaving = true;
            // Allow entering PiP from current top most activity when we are leaving PiP.
            final Task topFocused = mRootWindowContainer.getTopDisplayFocusedRootTask();
            if (topFocused != null) {
                final ActivityRecord ar = topFocused.getTopResumedActivity();
                enableEnterPipOnTaskSwitch(ar, null /* toFrontTask */, ar, null /* opts */);
            }
            mRootWindowContainer.notifyActivityPipModeChanged(this, null);
        }
        if (likelyResolvedMode == WINDOWING_MODE_PINNED) {