diff options
| author | 2023-07-18 11:25:56 +0000 | |
|---|---|---|
| committer | 2023-07-18 11:25:56 +0000 | |
| commit | 23e3c17f36a8f1efae724611916a3ba78440b2ea (patch) | |
| tree | 484046771a512833a6cba299acc4dbf9ea62b340 | |
| parent | 842e065311d50da97938a98e9459a2e1a6308860 (diff) | |
Revert "Do not enter pip during transient launch."
This reverts commit 842e065311d50da97938a98e9459a2e1a6308860.
Reason for revert: b/291722322
Change-Id: Ib036c73cd1cf175d96f07335b260ce3678762091
| -rw-r--r-- | services/core/java/com/android/server/wm/Task.java | 19 | ||||
| -rw-r--r-- | services/core/java/com/android/server/wm/Transition.java | 4 |
2 files changed, 9 insertions, 14 deletions
diff --git a/services/core/java/com/android/server/wm/Task.java b/services/core/java/com/android/server/wm/Task.java index 66dfdefb24e4..9c23beb21a92 100644 --- a/services/core/java/com/android/server/wm/Task.java +++ b/services/core/java/com/android/server/wm/Task.java @@ -5251,18 +5251,17 @@ class Task extends TaskFragment { // Ensure that we do not trigger entering PiP an activity on the root pinned task. return; } + final boolean isTransient = opts != null && opts.getTransientLaunch(); final Task targetRootTask = toFrontTask != null ? toFrontTask.getRootTask() : toFrontActivity.getRootTask(); - final boolean isTransient = opts != null && opts.getTransientLaunch() - || (targetRootTask != null - && targetRootTask.mTransitionController.isTransientHide(targetRootTask)); - - // Ensure the task/activity being brought forward is not the assistant and is not transient - // nor transient hide target. In the case of transient-launch, we want to wait until the end - // of the transition and only allow to enter pip on task switch after the transient launch - // was committed. - pipCandidate.supportsEnterPipOnTaskSwitch = targetRootTask == null - || !(targetRootTask.isActivityTypeAssistant() || isTransient); + if (targetRootTask != null && (targetRootTask.isActivityTypeAssistant() || isTransient)) { + // Ensure the task/activity being brought forward is not the assistant and is not + // transient. In the case of transient-launch, we want to wait until the end of the + // transition and only allow switch if the transient launch was committed. + return; + } + pipCandidate.supportsEnterPipOnTaskSwitch = true; + } /** diff --git a/services/core/java/com/android/server/wm/Transition.java b/services/core/java/com/android/server/wm/Transition.java index 8319dc026bf3..71192cd5a3be 100644 --- a/services/core/java/com/android/server/wm/Transition.java +++ b/services/core/java/com/android/server/wm/Transition.java @@ -1041,10 +1041,6 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener { ar.getTaskFragment().startPausing(false /* uiSleeping */, null /* resuming */, "finishTransition"); } finally { - // Didn't schedule for pip, clear the supportsEnterPipOnTaskSwitch flag. - if (!ar.mPauseSchedulePendingForPip) { - ar.supportsEnterPipOnTaskSwitch = false; - } mController.mAtm.mTaskSupervisor.mUserLeaving = false; } // Return false anyway because there's no guarantee that the app will enter pip. |