Fix notifications showing on keyguard
The root cause here is that some components (NotificationKeyguardUserManager, NotificationStackScrollLayout, NotificationShelf) have subtle dependencies about how they update based on StatusBarState which used to be satisfied. When we migrated to StatusBarStateController the dependencies were broken sometimes. The fix here is multifactorial: 1. Introduce a ranking to StatusBarStateController listeners so that we can unwind the dependencies for now. (This should be fixed long-term) 2. Move NSSL's actual notification updating to a new onStatePostChange() method of the listeners 3. Explicitly call updatePublicMode() when hiding the keyguard because SbStateController does not give callbacks when setting a state to the same value. Will move updatePublicMode into NotificationKeyguardUserManager in a later commit to reduce the surface area here. Bug: 115739177 Change-Id: I97786619a1843922aeedcdb51e067a7c46cacaec Fixes: 114297820 Test: manual
Loading
Please register or sign in to comment