Skip to content
Commit 91d0f10a authored by Evan Laird's avatar Evan Laird
Browse files

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
parent fec77665
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment