We don't want to show the footer view that contains the
"Manage" and "Clear all" affordances in the notification shade
when the device is transitioning to the keyguard.
Test: manual
Fixes: 219680200
Change-Id: I1611589759e67d134ab957eee57ae865cfb64856
* Add ACTION_PAGE_LEFT/RIGHT to PagedTileLayout and proper focus after
changing pages.
* Add CollectionInfo to TileLayout and CollectionItemInfo to
QSTileViewImpl to indicate the position of the currently focused tile.
* Properly use ACTION_COLLAPSE/EXPAND in QSPanel/QuickQSPanel so the
proper announcement is made, as well as the proper action is provided
in the contextual menu.
Test: manual
Test: atest com.android.systemui.qs
Bug: 204726862
Change-Id: I9bb085002c99e75ab0bb91f287ded62793b932bb
Calling refreshTile externally on a tile that is already listening can
have unexpected side effects, for example if the tile is tracking a user
interaction (e.g. turning on bt).
In particular, QSPanelController should not call it for tiles that are already
listening. This is the case for tiles that are also in QQS.
Test: manual, toggle bt ON in QQS and expand quickly.
Test: atest com.android.systemui.qs
Fixes: 225404999
Change-Id: Id0559ad95ecf6a28475abbdd8b989c745badd0b8
- Applies over scroll to QS, Notifications Scrim, and NSSL instead of only NSSL
- Extracts the over scroll logic out of NSSL and into its own class adds tests
Fixes: 222034650
Test: Unit tests + Manually
Change-Id: I7e9363c3003c92bfe850b86cc9b0465b0d33cdc3
This switching activity should always be run as the system
user. Support specifying a UserHandle on activity transitions.
Fixes: 219638055
Test: manual, check user switching from multiple profiles
Change-Id: I4098481daeed2423ffac5023d101171e0b4cc84a
The code that checks for the captions service component will be removed
once the integration in the system captions side will happen.
Also cleans up the unused stream opt-out property.
Change-Id: I606f0d7a5319bbdc54b2e853fb70ea44ff9645a0
Bug: 221021539.
Bug: 136282740.
Test: Manually.
- Previously LightBarController calls setIconsDarkArea(null) to indicate
to DarkIconDispatcherImpl to set mTintArea to null and dispatch
accordingly, but DarkIconDispatcher.isInArea(<empty rect>) would return
true, while the updated call to send an empty list would try to iterate
the list and check isInArea() for each rect and return false otherwise.
To mirror the old behavior, also return true by default if there is an
empty list.
Bug: 219387839
Bug: 208717544
Test: Open an app with light bars and verify colors change
Test: atest SystemUITests
Change-Id: I265dddafb3ee7200837f8e013f92682344c080ef
Also remove related classes, calls, and resources that were used by QSDetail
and are no longer needed.
Test: atest SystemUITests
Test: TileService cts tests
Test: adb shell cmd statusbar expand-settings
Fixes: 198796184
Change-Id: Ib5c54f197d03794aca35d0305e3e62c7daedb23a
- Rename the classes to be less verbose;
- Add the template layout descriptions to its corresponding data
classes;
- Documents for all getter/setter methods.
Fixes: 217554855
Test: atest CtsSmartspaceServiceTestCases
Change-Id: Id5abcea0210b19b40c96cc8183e439c8af95bf85
- With ag/16678942 the system will now compute multiple appearance
regions for all windows under the status bar, so we need to handle
scenarios where multiple apps can create multiple dark tint areas
Bug: 208717544
Test: atest SystemUITests:LightBarControllerTest
Test: Install MultiAppeareanceRegionTest apk from b/208717544 and
verify that that the multiple dark areas work in multiwindow
Change-Id: I0d8696f6b2fb7793ccbdcbfe7e2520fceb24e5ec
- SmartspaceDefaultUiTemplateData represents the data of a Smartspace
card with the default UI template;
- Other templates' data classes are all subclasses of
SmartspaceDefaultUiTemplateData;
- SmartspaceIcon and SmartspaceTapAction are the newly-added primitives.
More details in go/ss-launcher-templated-ui.
Test: tested locally
Bug:213926964,212650337
CTS-Coverage-Bug:214471292
Change-Id: I056c49e3db7060697be4a3a8f51358802f2610b0
* Fix gap between tiles when expanding
* Fix second page collapsing animation: tiles now will shrink and at the
end be replaced by QQS tiles. We need to create the animators as we move
through the pages, as PagedTileLayout only has the current page and the
(up to) two adjacent ones. This means that if the page has not been
added, we don't have correct positions and measures.
See bug for video
Fixes: 207895040
Test: manual
Change-Id: Id2b14b11ace4199ed07f7675b6575cb4b71e93d5
* Deprecate getMetricsCategory, as UiEvents just use a string for each
tile.
* Remove all a11y announcements methods. These were not used, as we've
been using stateDescription
Test: atest SystemUITests
Bug: no bug
Change-Id: Id7a53abe59bc2b265f3049e844d9e8d9c4ef1f83
Smartspace could potentially send Intents that don't resolve, which
will crash sysui. Log a warning. Also register an event notifier to
let the SmartspaceSession know of a user action.
Bug: 208350043
Test: atest LockscreenSmartspaceControllerTest + manual (use new
smartspace flashlight off content)
Change-Id: Ife517864c6933bc2d6ef01c28ec97363d9ebfbd7
* When the QS customizer is active, closing the split shade does not
close the customizer.
* When three-button nav is enabled, pressing back when the QS customizer
is active on the split shade will close the shade, not close the
customizer.
This CL instead adds functions to QS.java so we can check whether the
customizer is active (and close it), so we can handle these cases
appropriately.
Test: Manually verified.
Bug: 201388768
Change-Id: I94208d1cd966975f39328529b9d866fbf27927ac
This adds the FlagManager class which currently has 3 methods:
- #getFlagsFuture
- #setFlagValue
- #eraseFlag
The first makes an async call to SystemUI to retrieve the flags
it knows about. It returns a collection of Flag objects from which
one can get the id, type, and default values.
The other two are fairly self-explanatory, sending intents to
SystemUI telling to set or erase flags. Any app calling these
methods must have the FLAGS_PERMISSION defined in the FlagManager
library.
Only boolean flags are supported at the moment.
Bug: 203548827
Test: manual
Change-Id: Id15ff481edcb83c67ce4cdad6cdda27d28a40652
When 'show_on_lockscreen' == true in the SmartspaceAction extras,
start the activity without requiring the device to be unlocked.
Fixes: 203775218
Test: manual
Change-Id: Iab5505fc7aec8d7e29364ff7d3d527f5d71ec5b3
Pass squishiness fraction from notifications to QS, and make it behave
accordingly.
Test: manual
Test: atest QSSquishinessControllerTest
Bug: 199047412
Change-Id: I9f5df7ae99e0bced4626dcb36053c9dba78ec672
This is for the "easy" flags. Flags which are defined in one place
in our resources and and require no extra work to convert to the
new architecture.
Bug: 202860494
Test: manual && atest SystemUITests
Change-Id: Id03fe61b6697bf98fdd225ba252de58e07c42496
Merged-In: Id03fe61b6697bf98fdd225ba252de58e07c42496
This is for the "easy" flags. Flags which are defined in one place
in our resources and and require no extra work to convert to the
new architecture.
Bug: 202860494
Test: manual && atest SystemUITests
Change-Id: Id03fe61b6697bf98fdd225ba252de58e07c42496
A flag can be set with a command like the following:
adb shell am broadcast -a com.android.systemui.action.SET_FLAG \
--ei id 1 --ez value 1
A flag can be "erased" with the same command, but leaving the value
unset.
Bug: 202860494
Test: manual
Change-Id: If1097e230692df49a6de7cbbb71ed37b0499c663
When pulling down the shade in split mode, the quick settings alpha
should be directly connected to the drag down gesture and the same that
we have for the notification shade.
Test: manual
Bug: 200804740
Fixes: 196722669
Change-Id: I6532c8a78826a5b60609dc66557abc49a3f140c5
Merged-In: I6532c8a78826a5b60609dc66557abc49a3f140c5
When pulling down the shade in split mode, the quick settings alpha
should be directly connected to the drag down gesture and the same that
we have for the notification shade.
Test: manual
Bug: 200804740
Fixes: 196722669
Change-Id: I6532c8a78826a5b60609dc66557abc49a3f140c5