Display timeout does not lock the keyguard, which means that
activities won't immediatelly disappear.
We need to factor AOD into to equation to make sure that
the user won't see phantom activities under the status bar
window when the display times out.
Fixes: 73120928
Test: open Settings, wait for display timeout
Test: Wait for display timeout, press power, see launcher
Test: Launch maps, start navigation (FLAG_SHOW_WHEN_LOCKED)
Test: Go to AOD, press power button: activity is occluding keyguard
Test: Press home: bouncer shows up
Test: Unlock: maps goes into pip mode
Test: Go to AOD and back to lock screen: keyguard visible
Test: Expand maps, go to AOD, back to lock screen: maps is occluding keyguard
Change-Id: I9b7512313af2f851d8788ec53de7880bce3bed2c
Spec: go/ebs-low-battery-mode-flow
- Basically when the user manually enables battery saver 4 times,
we show this notification to suggest turning on "scheduled"
(i.e. auto) battery saver.
- We show it through 8th time. If the user hits "no thanks",
or if auto-saver is enabled already, we will not show it.
- Introduced a new notification channel "HINTS" with
IMPORTANCE_DEFAULT.
Bug: 74120126
Test: Manual test with ll development/scripts/battery_simulator.py
Change-Id: I713abc59dc7caee6882ba848c3e3aabaf778c2bd
Implemented blocking helper UI as part of guts - the
ExpandableNotificationRow that's swiped away is effectively detached
from the notification logic but kept in as a view in the layout (it'll
still show up when looping through the normal view hierarchy). We
purposefully open up NotificationInfo with the intent of showing it as
the blocking helper.
It's animated away/closed when the user interacts with any other content
or swipes away, as with guts (Can be changed in the future if we want it
to stick around for longer).
KIs, that will be tracked in bugs once CL is in:
- Swiping a notification if it's partially hidden by the shelf does not
bring it up into focus
- If only one notification is showing, the shade auto-closes as if it
didn't have any notifications (which it technically doesn't)
- Animation on multiple blocking helper shows cuts too early and doesn't
allow the notification to transition out
- Long press on notification dismisses (it should probably ignore it)
- Metrics are still missing
- Accessibility needs a runthrough
Bug: 63095540,73783854
Test: Visually & Ran all tests
Change-Id: Iaa5e3d5537bbb72c946fdd7ee35b155e22ca2b05
- Request a score for the current network upon network state change
- Track the status label (either sign in / no internet / wifi speed
label) in WifiStatusTracker/WifiSignalController
Bug: 74075761
Test: runtest systemui && visual
Change-Id: I0794b246683df769f6db79f2baf70a9226d8f0f1
Activities with the flag FLAG_DISMISS_KEYGUARD_ACTIVITY will try to
dismiss the keyguard. In this case we should show the occluded bouncer.
Ideally we should not show the lock screen, but at this point,
ActivityManager still doesn't know if the keyguard should be dismissed
or not.
Test: manual, edit emergency information on EmercencyDialer
Test: runtest -x cts/tests/framework/base/activitymanager/src/android/server/am/ActivityManagerDisplayLockedKeyguardTests.java
Test: atest packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/KeyguardBouncerTest.java
Test: atest packages/SystemUI/tests/src/com/android/keyguard/KeyguardHostViewTest.java
Change-Id: I65b40ae47319c522c13ed3dc9420bc15cb472430
Fixes: 74726131
Fixes: 74779270
So far we've been Waiting for the next frame but it doesn't
mean that it will be visible on the screen.
We're usually rendering with 2 buffers and it's possible that
we'll switch the display power mode before anything has hit
the display.
Increased the timeout for now until we have a better alternative.
Change-Id: I63afc8a9139a4ccbba4f16f5569717e22217da9a
Fixes: 72527083
Test: manual
Test: packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
Fix for blocking helper - disable long click after the main notification
has been dismissed, in preparation for the blocking helper (which can't
be long pressed)
Test: Visually
Change-Id: I78795df4e77cb8d51382c1103bfa4ce02c1a11f3
Fixes: 76227576
- Ensure TileQueryHelper#mTiles is only modified on the background
thread and a send a copy to listeners.
- Do not call onTilesChanged until all stock tiles are loaded (as
opposed to after each tile) to reduce tile spec recalculation.
- Remove completion callback and instead maintain query state in
TileQueryHelper
Bug: 75415415
Test: manually
Change-Id: I2a20bd916dae0ee9f4c422ec4e2ac3f2d47da3dc
Because of configuration changes, old listeners would still
be influencing the icon location, even after they were detached.
Test: runtest systemui
Test: change density, get heads-ups, observe correct position
Change-Id: I35f4c905ab8a6025476c582dcbc7e85a5eff23f5
Fixes: 76084585
Change-Id: I2d09a84ec7cda04dab3095f16f3c6e3acd425c76
Fixes: 76035580
Test: atest packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/KeyguardBouncerTest.java
Test: double tap on notification, dismiss bouncer
Test: swipe up, dismiss bouncer
Test: go to emergency dialer, hit back
Test: fp from lock screen
Test: fp from AOD
KeyguardBouncer.isShowing should not return
true when the view is hidden.
Change-Id: I111aab356f6fc2367816b2ac132c0c4b140864c3
Fixes: 74583436
Fixes: 76151115
Test: packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/KeyguardBouncerTest.java
Test: Swipe up on lock screen
Test: Unlock with fp from AOD, keyguard or bouncer
Test: Unlock from occluded bouncer
When animating away a heads-up, there was no listener in place and
if the view in question wasn't the first notification, it's
roundness could be wrong.
Change-Id: I0676ee18c9fb0c52b190b82b8b9adfa63d584262
Fixes: 76147670
Test: runtest systemUI
Bug: 73217368
Test: manual
Using Datally on work profile. Before this, enabling the VPN
does not show the key icon. After this it does.
Change-Id: I454eb8f3881a48af1b0187c2b14a2a399d3c2445
* changes:
Added new appear and disappear animations for heads up
Polished the heads up experience
Removed the heads up scrim and replaced it with more elevation
Insetting heads up notifications
Ensured that the heads-up notifications are always rounded
SysUI can now control the screen off animation as long as
config_dozeAfterScreenOff is set to false.
The current implementation collapses the notification shade and moves
the clock whenever the use is on the lock screen, or will fade the
scrims and show the clock when the keyguard is occluded.
Display state change (on, doze, doze_suspended) is delayed to let the
animations occur at 60Hz.
Test: atest packages/SystemUI/tests/src/com/android/systemui/doze/DozeUiTest.java
Test: atest packages/SystemUI/tests/src/com/android/systemui/doze/DozeWallpaperStateTest.java
Test: atest packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/ScrimControllerTest.java
Test: atest tests/src/com/android/systemui/statusbar/phone/DozeScrimControllerTest.java
Test: atest tests/src/com/android/systemui/statusbar/phone/DozeParametersTest.java
Test: atest packages/SystemUI/tests/src/com/android/systemui/keyguard/WakefulnessLifecycleTest.java
Fixes: 73178121
Change-Id: Id5d964452f342d4e97bedf1084efa808604e602c
Heads up notifications are now corretly respecting insets.
instead of overlapping with any possible notches, we're
insetting heads up notifications and splitting the main
content from the header.
Fixes: 72748440
Test: runtest systemui
Change-Id: Ie53ea31fef4e468239c4346f9d1f192bcb26e11d
Previously they would have a random rounding. We're now introducing
a roundness manager that isolates this from the notification list.
Bug: 72748440
Test: runtest systemui
Change-Id: I5e9e7528a55536c802b5262168664e47fbec310e
Show the mobile data turn off dialog until the user taps the turn off
button. All subsequent toggles will immediately toggle data on/off. Also
update the message copy.
Fixes: 74072757
Test: runtest systemui && manual
Change-Id: I489d5c3c19d52a6f531b1b925b3210019412243b
Show front scrim when the notification panel is expanded,
otherwise pin would be overlayed on top of notifications.
Change-Id: Ia438f4a2794eb9510ec05ad86cc8c19e2e716358
Fixes: 74550013
Test: double tap on notification when locked
Test: tap on QS edit button when locked
Test: unlock by swipping up
Test: fling quickly on keyguard
Bug: 74726131
Test: packages/SystemUI/tests/src/com/android/systemui/statusbar/phone/KeyguardBouncerTest.java
Test: unlock with fp
Test: unlock with pattern
Test: edit QS - look at bouncer
Test: tap on notification when locked
Change-Id: I356c2d5700531cc9bb9b4179f12d4fd65f8bfc41