summaryrefslogtreecommitdiff
path: root/libs/androidfw/StringPool.cpp
diff options
context:
space:
mode:
author Andreas Miko <amiko@google.com> 2024-10-23 17:54:19 +0200
committer Andreas Miko <amiko@google.com> 2024-11-04 19:57:56 +0100
commitdac990d672f17ad6e245880ed121f23623a57afc (patch)
treeb41f86edef46530c5a9b00144e0879abcd2cac86 /libs/androidfw/StringPool.cpp
parent64daa1f40171230079c056c5319a31b71cc7c4f9 (diff)
[flexiglass] Rewrite lockscreenVisibility logic
lockscreenVisibility logic was driven by isDeviceNotEntered up until now. This has several issues: 1. isDeviceNotEntered is not relyable as it is event based: b/374101548 2. The timings of isDeviceNotEntered are based on currentScene which can be different based on transition type (gesture). 3. The timings of isDeviceNotEntered are not matching what we need. Depending on the specific transition we need to be able to decide when lockscreenVisibility is toggled, which always sends a signal to WindowManager. b/353323341 flickers because WM is being told too early that lockscreen is visible. This does two things: It starts a WM transition that flickers a bunch of screens. This is actually expected but it should happen when its all already covered by LS (at the end of the transition, rather than the start in this case). Also it tells WM to close open apps, it is important to not close them preemptively. Addressing 1) the logic introduced in this CL does not rely on a "gating state" being passed (an event that might be missed due to how flows work) but rather covers the entire transition graph to essentially split it in three distinct areas/states: true, false and defer to isDeviceNotEntered for shade scenes. Since b/374101548 addresses the computation of isDeviceEntered missing any number of states in between would still result in the correct state being computed. This CL already addresses `canWakeDirectlyToGone` but there are more edge cases from the legacy variant that need to be adopted in subsequent CLs such that we can track what fixes what. Bug: b/353323341 Flag: EXEMPT bug fix Test: Manual transition check Change-Id: If8c69911e546b467921150fdbd70f40a80f76f33
Diffstat (limited to 'libs/androidfw/StringPool.cpp')
0 files changed, 0 insertions, 0 deletions