diff options
| author | 2023-05-11 20:29:26 +0000 | |
|---|---|---|
| committer | 2023-05-12 13:33:22 +0000 | |
| commit | 3ca0c57064999e7c48548a72355531aafc6f126e (patch) | |
| tree | 5db6c3a69e9590b669423941975574954ca1b364 /libs/androidfw/FileStream.cpp | |
| parent | b75484c01a750d66874524798401e83c2945a12f (diff) | |
Fix LightReveal Scrim animation flickering
Sometimes the NotificationShadeWindow was becoming invisible during
a LightReveal Scrim animation causing it to flicker.
A reliable repro:
- have a device with AOD on
- send a HUN and press the power button while the HUN is HUNning
- this will make the HUN to animate away
- the end of the animation triggers a call on NotificationPanelViewController#updateExpansionAndVisibility()
- which checks NPVC#isExpanded, which at the moment thinks that there
is no reason to keep the NotificationShade open, so it tries to close
it
This fix adds a check to NPVC#isExpanded to see if we have the
UnlockedScreenOff animation running.
Note: `UnlockedScreenOffAnimationController#startAnimation()` does a call to NPVC#showAodUi() which sets a property (expansionFraction), which makes the NPVC#isExpanded() `true`, but it is fired async to fix another animation issue, so there is a window where NPVC#isExpanded() needs this new condition to keep the shade visible.
Test: post a HUN, lock the device, and observe the animation
Test: atest NotificationPanelViewControllerTest
Fixes: b/278810768
Change-Id: I326bce6b6d636301f9e1f17f49dfdb4252289aa5
Diffstat (limited to 'libs/androidfw/FileStream.cpp')
0 files changed, 0 insertions, 0 deletions