QSTile can declare whether it doesn't support (has no effect) long click
and then TalkBack will not report it as an available option.
Test: manual & atest
Change-Id: Iec21181f4308c7c8c4962f191fa0787e053ae944
Merged-In: Iec21181f4308c7c8c4962f191fa0787e053ae944
Fixes: 117921787
QSTile#clearState puts QS tiles in an invalid state that may not be
immediately rectified through QSTile#refreshState. In the case of
configuration changes, if a subclass implementation of
QSTile#handleSetListening does not trigger a refresh state, the
invalid state causes incorrect click handling.
Change-Id: I17eba133cf08c45a768e9e0ed8fda623e85b4370
Fixes: 69738120
Fixes: 110480955
Test: manual
(cherry picked from commit 299c45c85d)
Bug: 34840333
Test: manual - 1. turn talkback on
2. have a notification focused
3. invoke local context menu, note that 'snooze' is an option
4. select snooze, note that notification is snoozed
Change-Id: Id3ea62a0a9e5c2b8893aa5b548e64bb2b341d7a2
- Reorder streams
- constrain ripples
- Show an introductory ripple on the ringer toggle
- Add sound/vibration feedback for the ringer toggle
- resize some elements
Test: manual
Bug: 76438403
Fixes: 73892482
Change-Id: I92dd6f5681f1822ae493a5a2b218b15970293e80
- Start the marquee when fully expanded and pause when collapsed.
- Also do not change qs label to multiline once it's already been resized
to single line.
Change-Id: I2dd4f6b5473a6a5147999c29441537227751b705
Fixes: 74757991
Test: visual
This reverts commit 0e490d9208.
Reason for revert: Will be merged with fix
Bug: 74726495
Test: manual
Change-Id: I36ea9c2702107b23eff4adb1f3ba9fdc1be12999
Moved all the logic for quick step/scrub/switch to QuickStepController
so touch events can be used for deciding which gesture is used. Once a
gesture is decided, the rest will not handle the other gestures.
Quickstep will trigger when passing a touch slop on navigation bar. The
event onQuickStep (with a motion event) will be sent to launcher when
this occurs telling it that systemui is not handling anymore motion
events. During quickstep motion events will still be proxied.
Used raw X and Y motion events for Opalayout and KeyButtonView so that
the moving over the touch slop can be detected to ignore button (long)
press state.
Fixes: 73971902
Fixes: 74456391
Test: swipe up
Change-Id: I40b931aa0a9f123b810ff9206c9b1ce040a68a56
This change sets LOCAL_SDK_VERSION for all packages where
this is possible without breaking the build, and
LOCAL_PRIVATE_PLATFORM_APIS := true otherwise.
Setting one of these two will be made required soon, and this
is a change in preparation for that. Not setting LOCAL_SDK_VERSION
makes the app implicitly depend on the bootclasspath, which is
often not required. This change effectively makes depending on
private apis opt-in rather than opt-out.
Test: make relevant packages
Bug: 73535841
Exempt-From-Owner-Approval: Global cleanup
Change-Id: I26458e41ecb84de91ac9a356a5d4bafb44f463c1
- Added logic for streams to be muted by dnd (unassociated with ringer)
Test: runtest -x frameworks/base/services/tests/uiservicestests/src/com/android/server/notification/ZenModeHelperTest.java
Bug: 73362490
Change-Id: I1101e67282f7331497e91eb510d2bf4f1ea6b4b1
We're animating 2x the icons and, due to the transparent grey
background color, it looked like the icons were getting darker.
Fixed by having it exclude the full icon frame while animating.
Test: Visually
Bug: 72173914
Change-Id: Ie36973ab44a86e6e1edd99b9266420a274d9aaa2
- if alarms and/or media cannot pass dnd and the phone is currently
in priority only dnd, then the alarm and/or media volume stream
will appear muted in the volume dialog and sound settings
(Settings > Sound)
- if all behavior for priority only dnd is not allowed to bypass dnd
(discluding alarms and media), then ringer is muted when priority-only
dnd mode is on. If a user clicks this ringer in the volume dialog, then
dnd ends
- Updated default zen config to version 3 (added alarms and media)
Test: manually toggle alarms + media in Settings > Sound > DND >
Behavior, toggle on/off dnd and then look at volume dialog and
volume bars in Settings > Sound
Test: runtest --path cts/tests/tests/media/src/android/media/cts/AudioManagerTest.java
Fixes: 72052742
Change-Id: Ia9e809ec2be93cb5a9ba6518dce04bf3ce45110b
If connected via bluetooth.
Also fix long press behavior on the ringer footer, and
change the output chooser icon.
Test: manual
Bug: 63096355
Change-Id: I2c4d86fb03f8ac38721b6fc580bba45871d59f5d
The brightness slider and tile layout are now a scrollview and
can handle nested scrolling between the views. There is some
black magic which manages the touches to allow a scroll up to
continue into a collapse gesture.
TODO: need to add edge effect colors to theme
Test: visual
Bug: 70799330
Change-Id: Ief0c1480f001cae62175c8ac4f3784daaa0ed2b8
When enabled via launcher, the home button is able to be be pulled to
the right side to send events to launcher via binder calls of when the
quick scrub operation starts, ends and progress changes between each
interval. Launcher will use this information to determine how the
recents apps are laid out with vibration feedback.
When the home button is pulled and released under 150ms, quick switch
will occur. A binder call will tell launcher to switch to the previous
app used.
While quick scrub or switch is active, launcher will not get any nav
bar motion events, only events for quick scrub and switch.
Bug: 67957962
Bug: 70180755
Test: enable new experience via launcher settings
Change-Id: I344f5d67f259ff454205ea4d2e95140f783d3b5c
Add support for Supplier<Icon> in QSTile.State, allowing a method for
CustomTile not to cache the drawable for its IconViews. This fixes the
problem that the ImageViews in QQS and QS were trying to use the same
drawable and putting it in a bad state.
Test: Add 3rd party tile to first position in QS and turn on/off; visual
Change-Id: I408d6391a718fcb3f847e72bd303551d2d004dbb
Fixes: 67356768
We add a new StatusBarManager flag to disable the global actions dialog
(a.k.a. the power button menu), which is required in certain kiosk mode
scenarios.
Bug: 65813398
Test: runtest systemui
Test: manual, by using a modified version of TestDPC and
DevicePolicyManagerService
Change-Id: Ib7da2f4837281e98e558afcc30be8bae6f2e179a
Use a custom QS fragment if the UI mode is car. This fragment disables
the quick settings row and expansion. Remove the config options that
used to have disabled this in the phone QSFragment.
To accomplish this, introduce a new QSFooter interface. The old
QSFooter.java now implements this.
Test: boot on phone and Android Auto headunit
Bug: 33210494
Change-Id: I5accc2d27d6725380ca5e271d332a03991c9419b
Adds new mechanism for activities in sysui to be replaced by plugins
and allows that to happen for recents.
Test: runtest systemui
Change-Id: I8b570ce7c57484c58a52afe5e247d24ebfa0c57f
- Find out when the dreaming starts / stops
- Request the doze UI to show / hide
Bug: 62534409
Test: manual, have no plugin, check that doze still works as expected (i.e.
pick up gesture shows it, noti shows it)
Change-Id: I11618e47e0bab18423f0d89c8daf285d8c14d238
- Add plumbing for accessibility action IDs, enabling custom
accessibility options in the local context menu
- Allow snooze view to be focusable
- When option is selected announces the selection via window state change
Test: manual
Bug: 34840333
Change-Id: Idca0b0e00e792d3e3f71fc6a15b9b26d9136f6da
This will allow the NotificationMenuRow plugin to do something else
rather than showing a menu when the view is long pressed.
- Allow menu to intercept touch events
- If the menu item provided to long press is null, don’t show it
- Also passes the status bar notification when the menu is created
or updated
Bug: 62534409
Test: manual, have no plugin and long press -> see notification info
have a plugin that returns null for long press -> nothing happens
Change-Id: I384c5217d5343e990f4c3506eb2477b015705e5c
Allows plugin control over notifications right at the entrance
to sysui and gives them the opportunity to mess with them how
they see fit.
Test: manual
Change-Id: I569bf37138da66d0524acecfa36ceb409f98fbb4
Remove it from the header and drop it back in its old location.
This reverts commit 10b4c8a4ab.
Test: runtest systemui
Fixes: 62331189
Change-Id: I087589c256894e0972656619e665b6a16536ce6c
If it's a false touch don't show the menu.
Test: manual: try swiping things away on the lockscreen (fast + long)
try showing notification menu on the lockscreen
Bug: 38208094
Change-Id: I16ceedd90a5fbc80156a9495d6cfd6fa02771886