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

Commit edce8fef authored by Evan Rosky's avatar Evan Rosky
Browse files

Show DA surface in potential edge-case

There is maybe a tiny edge-case where a display becomes visible
outside of a transition, but then something about the display
changes so it becomes a transition target and thus is taken out
of the failsafe validator. This closes that gap.

Bug: 363237714
Test: N/A
Flag: EXEMPT bugfix
Change-Id: I3d00c336daabc771037f5a742115a0e4fb4ed68b
parent 0797aec7
Loading
Loading
Loading
Loading
+7 −1
Original line number Diff line number Diff line
@@ -1870,7 +1870,13 @@ class Transition implements BLASTSyncEngine.TransactionReadyListener {
            final DisplayArea<?> da = wc.asDisplayArea();
            if (da == null) continue;
            if (da.isVisibleRequested()) {
                mController.mValidateDisplayVis.remove(da);
                final int inValidateList = mController.mValidateDisplayVis.indexOf(da);
                if (inValidateList >= 0
                        // The display-area is visible, but if we only detect a non-visibility
                        // change, then we shouldn't remove the validator.
                        && !mChanges.get(da).mVisible) {
                    mController.mValidateDisplayVis.remove(inValidateList);
                }
            } else {
                // In case something accidentally hides a displayarea and nothing shows it again.
                mController.mValidateDisplayVis.add(da);