- Use DozeParameters as source of truth for whether we will control unlocked screen off.
- Update controlScreenOff when rotation/expansion change, not just when keyguard visibility changes.
Fixes: 190478850
Fixes: 189803757
Test: screen on/off with shade expanded/collapsed and in portrait/landscape
Change-Id: I89e3dc626090580a832af296bb6665a52980640c
1) Add OneHandedEventCallback for WMShell to register
callback, and if one handed mode settings set show
notifications, when user tap one handed mode shortcut
notify WMShell send KEYCODE_SYSTEM_NAVIGATION_DOWN
through OneHandedEventCallback with SysUIMainExecutor.
2) Add isReady() flag in OneHandedDisplayAreaOrganizer
and Simplify the flow of onActivatedActionChanged()
to prevent potential race problem while auto-enable
One-handed and immeditately startOneHanded(), however,
DisplayAreaOrganizer#onDisplayAreaAppeared() may not
ready for transtion yet, and result mState keep in
unfinsihed STATE_ENTERING.
3) Adjust the transiton duration from 800ms to 600ms
800ms is a little bit long to affect timing of
apply runtime overlay package.
4) DelayExecute setEnabledGesturalOverlay() until
transition finised and at most delay once.
- onSwipeToNotificationEnabledChanged() : DelayExecute
- onEnabledSettingChanged() : DelayExecute
- Ctor setupGesturalOverlay() : No DelayExecute
- mState.isTransitioning() : DelayExecute
Test: WMShellUnitTests
Bug: 182425480
Change-Id: I2615c3b30ad95a858510b4bcc73d8f343843fc96
During screen off, we show the AOD UI without fully switching to the KEYGUARD state. When screen off is cancelled, we ask all components to reset to the SHADE state, which should also reset the UI components we changed to show AOD. However, since the StatusBarState was already SHADE, this is ignored.
This adds a force flag, which we use when cancelling screen off to make sure that all UI components are reset to the SHADE state regardless.
Test: cancel screen off, pull down the shade
Fixes: 190986023
Change-Id: I79baeb71ac5d1ed45602ac55cdca996b3bed0ac3
- update show/hide logic of text areas on AOD and lock screen so that
the transition isn't as jumpy
- increase minimum time to show a message from 600 to 1500 (now there
are animations playing that obscure the text)
- make auth errors show in red
- update fingerprint listening state on lockout changes (still a bug
where resetLockout isn't called for udfps: b/189802462)
Test: manual
Fixes: 187675377
Bug: 190459902
Bug: 189802462
Fixes: 189072438
Change-Id: I5862ce8d0e139f0d045d77b6a7b9797aeb573186
These tiles don't get polled on device startup or user change. Persist
their state (minus the icon) and retrieve when the CustomTile is
created.
Add an initialize method for QSTileImpl that gets handled in a
background thread.
Test: manual
Test: atest com.android.systemui.qs
Test: atest TileServiceTest ActiveTileServiceTest BooleanTileServiceTest
Fixes: 176789277
Change-Id: Id7775f4f2df56c25c13e2192d1bb824cb3b6a22a
* changes:
Animating when the qs boundary changes due to notification interactions
When swiping notifications it doesn't clip early anymore
Modified the way the notifications clip to the boundary
Previously notifications started to clip before reaching
the edge. We're now changinging the flags to dismiss with
translation instead of clipping the contents.
This is change 1/2 as the notification container should
clip the notification now, which is especially noticeable
in split shade.
Bug: 181887261
Test: dismiss notifications, visually observe no clipping
Change-Id: I003b1486ce64dd127a90ca2d9f982230eba79f60
Previously the notification shade didn't clip at all to
the qs - notification boundary, which could lead to
content peaking outside of the boundary during dismissal
or other situations. We now clip to the boundary
using rounded rect clipping. This also allows us to
remove various complex clipping logic that was updating
the clipping on the top for individual notification views.
This also fixes some bugs on the split shade where the
notifications were wrongly clipped previously.
This is change 2/2 to improve the notification dismissal.
Fixes: 181887261
Test: atest SystemUITests
Merged-In: I1ebe777c50b85a500ecce22823d547c6d9c3c6d5
Change-Id: I1ebe777c50b85a500ecce22823d547c6d9c3c6d5
In the previous change ag/14776093, the window height fraction used
"windowHeightFraction = (float) mParams.y / mWindowHeight;". And it
causes the Y-position deviated after the rotation is changed.
To correct this, we used the draggable bounds to calculate the window
height fraction.
See b/189715285#comment3
Bug: 189715285
Test: atest MagnificationModeSwitchTest
Change-Id: I1adcea12f0a96c64c9c6e386dc2feb8e3a9ffcf3
Move CircleReveal from StatusBar to AuthRippleController so we
can coordinate the light reveal scrim with the auth ripple when
the user uses fingerprint to authenticate on AOD.
Test: manual
Fixes: 190617092
Change-Id: If210cebb801ca0f66405401710bac6087a313eea
Previously, this was taken by qs during collapsing.
We now allow for direct collapse when starting on the handle.
Fixes: 189427159
Test: expand qs, swipe from home handle, observe collapsing
Change-Id: Ied55a14027f003ef4fe2f6f2d4f3cf3c40070b63
Only show chevron when clicking will open a dialog.
Test: atest ScreenRecordTileTest
Fixes: 191097250
Change-Id: I752d79ebd30391d68fcce2c59ac7c68a15f8098c
There were a couple of issues:
1) onActivityRestart wasn't checking for bubbles in the overflow
so there were cases where we could open a bubble but weren't
2) delay opening the bubble until after the transitions have
happened when launching from a widget, the transition could
alter the placement of the bubble's surface resulting in
weird UI.
Test: atest LaunchConversationActivityTest
Test: manual 1) have a bubble & convo widget for it
2) tap on the widget => bubble opens normally, close
the bubble & repeat that a bunch
1) have an unopened bubble & convo widget for it
2) get enough bubbles to push it out of the stack &
out of the overflow
3) tap on the widget => bubble opens
1) have a bubble & convo widget for it, dismiss bubble
2) tap on the widget => bubble opens normally
Bug: 188306336
Change-Id: Id68ccbfbfc6fc6949cfc257df4706b470fb78569
Remove the concept of a 'preferred clock y'... not in use
anymore. Existing algo tests were designed around everything being
centered on the screen and isn't relevant. Update to reflect
everything being top-aligned.
Fixes: 190849712
Test: atest KeyguardClockPositionAlgorithmTest
Change-Id: I0a5fafb5ec36ffe6f98fdc6a44e46a65c821cc0c
Split it into its two inputs. It's enabled when both are.
Test: manual using LockTaskUI test
Fixes: 189191151
Change-Id: I263e9899ac0d0e8eba48de61572fe97ec925cec7
When there is a downward scroll or fling event that starts in the status bar
area, close the power menu and open the shade (QS if on lockscreen,
notification shade otherwise, to match behavior outside of power menu)
Single tap anywhere outside the dialog will still close it.
Fixes: 190506673
Test: manual
Test: atest GlobalActionsDialogLiteTest
Change-Id: I32239e1751e0e6f14a09e9ab6727e685e8af1008
The Paint#setFontvariationSettings always creates new Typeface instance
from scratch. To avoid unnecessary Typeface creation for the same weight
variant, cache the Typeface and use it later same animation.
Bug: 189867246
Test: atest TextAnimatorTest TextInterpolatorTest
Change-Id: I67ca72f2c54ca9caf4bcf562557ac4f24b44f01e