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

Commit 446fc555 authored by Evan Rosky's avatar Evan Rosky Committed by Automerger Merge Worker
Browse files

Merge "Don't commit invisible on a collecting transient-launch task" into...

Merge "Don't commit invisible on a collecting transient-launch task" into udc-dev am: bdee1f23 am: 4bcace25

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23822907



Change-Id: I414096b94f8cf1479d167f5e47930b99fb737b5b
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents b4f9e332 4bcace25
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -1093,6 +1093,16 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
                final Task task = ar.getTask();
                if (task == null) continue;
                boolean visibleAtTransitionEnd = mVisibleAtTransitionEndTokens.contains(ar);
                // visibleAtTransitionEnd is used to guard against pre-maturely committing
                // invisible on a window which is actually hidden by a later transition and not this
                // one. However, for a transient launch, we can't use this mechanism because the
                // visibility is determined at finish. Instead, use a different heuristic: don't
                // commit invisible if the window is already in a later transition. That later
                // transition will then handle the commit.
                if (isTransientLaunch(ar) && !ar.isVisibleRequested()
                        && mController.inCollectingTransition(ar)) {
                    visibleAtTransitionEnd = true;
                }
                // We need both the expected visibility AND current requested-visibility to be
                // false. If it is expected-visible but not currently visible, it means that
                // another animation is queued-up to animate this to invisibility, so we can't