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

Commit 5533a4d9 authored by Louis Chang's avatar Louis Chang Committed by Android (Google) Code Review
Browse files

Merge "Checks the visible-requested state vs. #isVisible" into main

parents 3b64a76d 4a61fcf7
Loading
Loading
Loading
Loading
+4 −6
Original line number Diff line number Diff line
@@ -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;