Previously those actions could linger around
and lead to a variety of bugs.
Also fixed an issue when gutsManager calls were overlapping
to protect against these issues
Fixes: 130885521
Test: atest SystemUITests
Test: see bug description
Change-Id: Iffe37e6d48bbc9c26ba92f362d7b67bf743c7c28
Previously we would finish way too early if any of the scrims
finished animation. Since some scrims almost never change, we
would have animations being terminated early.
Fixes: 141649119
Test: unlock with bypass, observe no lock icon change
Change-Id: I6aefd6a27ef315995d8e1ae62c27a5f33cc9e160
Battery saver was completely aborting the doze service, disabling
all interrupts. This is not ideal since it impacts the user journey,
especially when using face auth.
From now on the screen will still be off, but DozeService will be
retained, in order to receive sensor events.
Test: w/ battery saver: lift, tap, and observe aod being off
Test: w/ battery saver: receive notification, no HUN.
Test: w/o battery saver: lift, tap, and observe aod being on
Test: w/o battery saver: receive notification, HUN is received.
Fixes: 134157254
Change-Id: I9b713c78857c4e4c22d8d9bfff165b1b51dfd804
Merged-In: I9b713c78857c4e4c22d8d9bfff165b1b51dfd804
This CL implements a (somewhat hacky) way to enable HTML attributes in
the mobile data type content description strings. This way we can use
some basic styling in the Quick Settings cellular data tile which uses
it in a TextView.
We do this by assuming that the content description is valid, escaped
HTML, and send two separate CharSequences to all of the listeners, all
of which can then decide if they need the regular content description or
the prettified version.
Test: atest SystemUITests; system ui demo mode
Bug: 141177147
Change-Id: Idf387111b0cdc34ad3762eac0ec6c2b484b393e3
CL [1] introduced a check to see if password entry need to show
soft-keyboard for fixing keyboard popup unexpected issue.
But it shouldn't need to block the password entry re-enable when
lockout finished in screen-off state.
Move the original check right before the showSoftInput to fix the case.
[1]: I3c43d09d4206c48f1afcd8dad79e7978337f1b7d
Fix: 128563724
Bug: 112811602
Test: manual as issue steps:
1). Set up Password as screen lock.
2). Enter lock screen.
3). Input wrong password 5 times, and it will show "Try again in 30 seconds" message.
4). Wait device screen off auto, and then wait 30 seconds.
5). Screen on device.
6). Swipe up and then try to input password to unlock, expected password entry
should enabled and can invoke soft-keyboard.
Change-Id: I3e0eeffdb3536588c0e039c8fbeaf8833e7af06e
In master, we retrieve the KeyguardUpdateMonitor through Dependency.get().
This change has not landed in qpr1 and should use a different method of
access.
Bug: 140270231
Test: atest SystemUITests
Change-Id: Icbba30e52d4d011fc01cba13262b18a3a235316c
This CL changes the policy for showing the 'x' on the mobile signal
indicator such that we do not show an 'x' when a subscription has an
icon group of NOT_DEFAULT_DATA, except in the case where mobile data is
turned off on the default subscription
Test: atest SystemUITests; manual
Fixes: 135457552
Change-Id: Ie21462be12a9920d9b2830039f4095c5bd82bd2c
Because we were cancelling an animation but never reseting the translation
we could be stuck in weird transition states.
Fixes: 136117476
Test: lock and unlock quickly with overlapping animations, observe no overlap
Change-Id: Iee389fa77588289417d0e3e5bdc31aeda1aac58a
This reverts commit 09843a687b.
Reason for revert: There is possible reentrant behavior when posting the safeToRemove callback after a FGS has been canceled/reposted
Bug: 140948482
Change-Id: I2c5b9135e57a87f412dce8c167147dcb38f6bbae
Previously handles used either the wakefulness lifecycle or the doze
state to determine whether to hide the handles. This change makes them
use both and hides if either signal indicates that the phone is not
fully awake.
Test: atest google/perf/jank/SystemUI/UbSystemUIJankTests-Lock:android.platform.systemui.tests.jank.SystemUiJankTests#testUnlock -v
Test: atest AssistHandleLikeHomeBehaviorTest
BUG:141219006
FIX:141219006
Change-Id: Iedbf5421c369440a3170f1a0b1add66bd289ec7a
Merged-In: Iedbf5421c369440a3170f1a0b1add66bd289ec7a
It's not possible for the device to go to SHADE_LOCKED after you're
already unlocked, still it's possible that it would happen.
Added an extra condition to avoid it, and logs to catch the regression
if it happens again.
Fixes: 139259891
Test: pull down notification while authenticating
Change-Id: I5c2b81906fa444dfd07d040b81a527245d4130e6
SSIN = Smart Suggestions in Notifications.
When posting a notification with contextual/smart actions app developers
supply their own icons for their actions. These icons can reference
resources from within the application package. Therefore we need to use
a Context from that package to load icon resources.
Before this CL we were using the SystemUi context which doesn't have
access to the same resources as the app context - meaning we were not
able to load the icon the app developer was providing us (unless they
provided an Icon instance rather than just a resource ID for their icon).
Bug: 137044913
Test: atest SmartReplyViewTest
Test: manual - create a notification with a
contextual action whose icon is referenced through a resource ID (not an
Icon instance). Ensure the icon is shown correctly in the notification.
Change-Id: Ia6d7b3689c46b65558437e00a947ba3cd330e4ca
When ambient goes dark, apply the same front scrim opacity during doze
pulsing. The would then be a common behavior to all pulsing reaons.
Bug: 139445074
Test: Manual tests
Test: atest ScrimControllerTest
Change-Id: I3f1f7ca00b9d200ce4a7120b5328527ab9d9fb13
Previously the height & width of expanded view was not updated when
switching between landscape & portrait. This CL:
* Adjusts max height calculation so it accounts for landscape
* Updates the position, height, & left / right padding of the expanded
view when the orientation changes, also accounting for notches / navbar
* Also accounts display cutout when calculating IME inset for expanded
view
Test: manual - have multiple bubbles with different heights (small & max)
- expand the stack
- go to each bubble and rotate to landscape / portrait
=> in landscape the heights should be restricted & width
of the view shouldn't overlap notches (turn them on/off)
or navbar (turn gesture nav on/off), in portrait
the max height should increase
Bug: 135487618
Change-Id: Iaffcef0a070d3eb2d6b21248be3c94a861d77d5d
In landscape don't use the full screen width, instead, restrict to a
percentage of the screen & enforce a minimum of the width of the screen.
* Updates the displaySize passed to ExpandedAnimationController
to be the "real size", this is consistent with what BubbleExpandedView
uses now
* Alters positioning calculations in ExpandedAnimationController &
accounts for notches / screen decorations
Test: manual - have multiple bubbles
- expand the stack
- rotate the device
=> observe that the bubbles look nicely centered (i.e. not
too much space or too little space) in landscape & portrait
Bug: 135487618
Change-Id: Ief7fc6f762f8cc130e37963d48005f15a1bea743
onSingleTaskDisplayEmpty occurs when the activity is removed from the
activity view (e.g. app crash). When a bubble'd app crashes we want to
collapse the bubble (if expanded) & notify that it's empty so that next
time it's opened it will try to populate the activity again.
We were only doing this if the crashed app was the currently expanded
bubble, but that's not always the case.
This CL adds a method in BubbleData to clean up the display for a given
displayId & calls that in the non-expanded case.
Also adds some null pointer checks.
Test: manual - modify bubbles test app to have a crash when you click a button
- post some bubbles
- expand / collapse a bubble
- crash the bubbles test app
=> see crash dialog
- expand bubble
=> bubble should be populated
Bug: 138461119
Change-Id: I2fb226766676226980c67dc0536ed37eb43cedf1
getExpandedBubble checks if the shade is expanded or not and returns
null if the shade is expanded, we don't care about that for the display
drawn callbacks.
Test: manual, have a bubble notification on lockscreen, tap it, note
that the bubble is expanded & visible after going through lockscreen
Bug: 138461119
Change-Id: I00dff7cd3301db6a2613a947015ac0408b545202
The keyguard status bar would be visible momentarily while the keyguard
is fading out. Let's keep it hidden until the keyguard is gone.
Test: reach, auth, press power, look at status bar: gone
Test: reach, press power, look at status bar: gone
Test: reboot, reach, press power, look at status bar: visible
Test: reach, press power, wait for auth filure, look at status bar: visible
Test: reach, pull down, wait for auth filure, look at status bar: visible
Fixes: 140259100
Change-Id: I0aa705107e11e3ad8182ac8d5b6104c9f86754be
This code is not actually doing anything useful in QPR1, so best to
simply remove it.
Bug: 140950258
Test: manual
Change-Id: I53abdef77a93ad854935f79e431d9861b40c2427