summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/wm/Transition.java10
1 files changed, 4 insertions, 6 deletions
diff --git a/services/core/java/com/android/server/wm/Transition.java b/services/core/java/com/android/server/wm/Transition.java
index c0bf2ce41435..3e23fab86223 100644
--- a/services/core/java/com/android/server/wm/Transition.java
+++ b/services/core/java/com/android/server/wm/Transition.java
@@ -1052,12 +1052,12 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
* @return true if we are *guaranteed* to enter-pip. This means we return false if there's
* a chance we won't thus legacy-entry (via pause+userLeaving) will return false.
*/
- private boolean checkEnterPipOnFinish(@NonNull ActivityRecord ar,
- @Nullable ActivityRecord resuming) {
+ private boolean checkEnterPipOnFinish(@NonNull ActivityRecord ar) {
if (!mCanPipOnFinish || !ar.isVisible() || ar.getTask() == null || !ar.isState(RESUMED)) {
return false;
}
+ final ActivityRecord resuming = getVisibleTransientLaunch(ar.getTaskDisplayArea());
if (ar.pictureInPictureArgs != null && ar.pictureInPictureArgs.isAutoEnterEnabled()) {
if (!ar.getTask().isVisibleRequested() || didCommitTransientLaunch()) {
// force enable pip-on-task-switch now that we've committed to actually launching
@@ -1196,9 +1196,7 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
final boolean isScreenOff = ar.mDisplayContent == null
|| ar.mDisplayContent.getDisplayInfo().state == Display.STATE_OFF;
if ((!visibleAtTransitionEnd || isScreenOff) && !ar.isVisibleRequested()) {
- final ActivityRecord resuming = getVisibleTransientLaunch(
- ar.getTaskDisplayArea());
- final boolean commitVisibility = !checkEnterPipOnFinish(ar, resuming);
+ final boolean commitVisibility = !checkEnterPipOnFinish(ar);
// Avoid commit visibility if entering pip or else we will get a sudden
// "flash" / surface going invisible for a split second.
if (commitVisibility) {
@@ -1431,7 +1429,7 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
if (candidateActivity.getTaskDisplayArea() != taskDisplayArea) {
continue;
}
- if (!candidateActivity.isVisible()) {
+ if (!candidateActivity.isVisibleRequested()) {
continue;
}
return candidateActivity;