summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/wm/Task.java19
-rw-r--r--services/core/java/com/android/server/wm/Transition.java4
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 96190f2b8b3a..92e90ae294d1 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 879457767595..a14354041b91 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.