Commit Graph

396 Commits

Author SHA1 Message Date
Beverly Tai
5a6bebb2e1 Merge "Add falsing protection to the pulsing state" into tm-qpr-dev am: c443da0fa1 am: 104a97aff3
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/19744936

Change-Id: Ib64b1471007d245b699ecde37edaaaacd71bfc1c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-08-26 18:45:53 +00:00
Beverly
0ad8657ad7 Add falsing protection to the pulsing state
Prox-gate the tap and double tap to wake gestures
from pulsing/AoD2.

Enable FalsingCollector logs:
  adb shell setprop log.tag.FalsingCollector DEBUG

Test: manually trigger quickpickup (or receive a notification on AoD),
  cover the prox sensor, and then tap the screen - see device won't wake up
Test: atest NotificationShadeWindowViewControllerTest BrightLineFalsingManagerTest PulsingGestureListenerTest
Fixes: 242125976
Change-Id: I520df509b7804d765807477968257c94f55ef634
2022-08-26 12:33:22 +00:00
Grace Han
ebbe9d14bd Create New Class for Region Darkness Enum
This change move the declaration of the region darkness enum
to a separate file in the region sampling folder.

Bug: 202758428
Test: Manual
Change-Id: Iac66797da18c0064b8d9e9a6691ad2d7ba1776f0
2022-08-20 01:29:04 +00:00
Hawkwood Glazier
23535e29d1 [DO NOT MERGE]Revert "Migrate KeyguardClockSwitch to new shared Clock library"
Revert "Expose the clock version of google-sans"

Revert "Changes to SystemUIGoogle to support clock migration"

Revert submission 19451291-cherrypick-clock_migration-tvip0m638i

Reason for revert: b/241084042
Reverted Changes:
Ia053aaec6:Migrate KeyguardClockSwitch to new shared Clock li...
Ia3e067b93:Changes to SystemUIGoogle to support clock migrati...
I5dbf01a83:Add clock version of google-sans
Ia654d4f41:Expose the clock version of google-sans

Change-Id: I432d3d814c85b9ba20bbb7a88d2e52bd2337c10c
2022-08-03 15:22:58 +02:00
Hawkwood Glazier
a19e59d717 Migrate KeyguardClockSwitch to new shared Clock library
This change modifies the KeyguardClockSwitch and Controller
to get clocks from the ClockRegistry. Since the only clock
available from the registry is the default one, this should
have no user-facing changes, and is intended only to update
the relevant codepaths.

Bug: 229771520
Test: Manual and Automated
Change-Id: Ia053aaec6987e00de980388a6c024d8bcf5203a2
(cherry picked from commit c8b33ca43f)
Merged-In: Ia053aaec6987e00de980388a6c024d8bcf5203a2
2022-07-28 14:53:21 +00:00
Hawkwood Glazier
44fa7428e7 Move plugin definition to plugin library
Bug: 229771520
Test: No new tests, just a package change
Change-Id: I591c337f8f6062befdb2a08f61a1456c5af04be3
(cherry picked from commit 14f67f4d74)
Merged-In: I591c337f8f6062befdb2a08f61a1456c5af04be3
2022-07-27 22:24:31 +00:00
Hawkwood Glazier
b2f7ee84cf Move ClockRegistry to SystemUISharedLib
Bug: 229771520
Test: Automated
Change-Id: I7e921038a803188eee4cc437b7076db97ecdd853
(cherry picked from commit 1323984dac)
Merged-In: I7e921038a803188eee4cc437b7076db97ecdd853
2022-07-19 15:25:53 +00:00
Hawkwood Glazier
d4e790272d Initial ClockPlugin interfaces and ClockRegistry functions
Bug: 229771520
Test: Automated
Change-Id: I2bc8be56f9fb91734aa7d430270c3e9ad7328ed0
(cherry picked from commit c225417205)
Merged-In: I2bc8be56f9fb91734aa7d430270c3e9ad7328ed0
2022-07-19 15:20:44 +00:00
Grace
0201aca5b3 Create new class for instance of Region Sampler
This change abstracts out the creation of RegionSamplingHelper.
All the necessary fields are initialized and accessable through
getters.

Bug: 202758428
Test: atest ClockEventControllerTest
Change-Id: I6b32776dac1853eeab87c2a65da69478e4da5b75
2022-07-14 22:23:11 +00:00
Grace
69bc1961bf Moving Text Protection to Clock Event Controller
This change moves text protection from the Animatable Clock Controller
to the Clock Event Controller.

Bug: 202758428
Test: atest ClockEventControllerTest
Change-Id: I33b8f69c1a5b7b915bb020be16593ef68c46281d
2022-07-08 16:41:15 +00:00
Hawkwood Glazier
0a10b75543 Merge "Migrate KeyguardClockSwitch to new shared Clock library" 2022-06-23 19:20:02 +00:00
Michał Brzeziński
c15f634ade Merge "1/2 Making bouncer shift on double tap when user chooser is visible" into tm-qpr-dev am: 3a98dbf919 am: 7ebe3b3462
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/18913051

Change-Id: I8265b592f541ee135948f3f78647efde83dcf2d1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-22 17:35:52 +00:00
Michał Brzeziński
3a98dbf919 Merge "1/2 Making bouncer shift on double tap when user chooser is visible" into tm-qpr-dev 2022-06-22 16:56:06 +00:00
Michal Brzezinski
fd8aa55ee3 1/2 Making bouncer shift on double tap when user chooser is visible
This change makes bouncer/security swap sides with multi user view without proper animation. Adding animation will come in follow up CL.
The main change is extracting double tap and shift logic to SidedSecurityMode superclass so both "one handed mode" and "multi user mode" can inherit from it and behave in a similar way.

Bug: 220872694
Test: KeyguardSecurityContainerTest
Test: open bouncer with user chooser on the side, double tap on the other side of the bouncer, see views swap positions
Change-Id: Ic7e32412edd4c25dde709db0544e60ec9ab951e5
2022-06-21 14:49:54 -04:00
Hawkwood Glazier
c8b33ca43f Migrate KeyguardClockSwitch to new shared Clock library
This change modifies the KeyguardClockSwitch and Controller
to get clocks from the ClockRegistry. Since the only clock
available from the registry is the default one, this should
have no user-facing changes, and is intended only to update
the relevant codepaths.

Bug: 229771520
Test: Manual and Automated
Change-Id: Ia053aaec6987e00de980388a6c024d8bcf5203a2
2022-06-21 18:11:38 +00:00
Chandru S
04d30fcc28 Merge "Update smart space views whenever the keyguard bypass state changes." into tm-qpr-dev am: cebc8fc6b8 am: 9e880e1b97
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/18799660

Change-Id: I0b1fde17bb429bc707ac2840eb0bad6ffeccafa1
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-06-15 09:48:20 +00:00
Chandru
3871031822 Update smart space views whenever the keyguard bypass state changes.
This is used for showing the media info in the smart space on the lockscreen, when face unlock lockscreen bypass is enabled.

Current behavior: if media is playing and user taps to wake up screen while not looking at the screen, the media controls (through notification) are not visible. There is no indication that there is media currently playing.

New behavior: if media is playing and user taps to wake up screen while not looking at the screen, the smart space shows the media info. (media controls are still hidden and not affected by this change).

Fixes: 230669390
Test: atest com.android.systemui.statusbar.lockscreen
Change-Id: I91e705261cb6e48107103666a29a1b2ec61beeca
2022-06-14 13:32:18 +00:00
Hawkwood Glazier
14f67f4d74 Move plugin definition to plugin library
Bug: 229771520
Test: No new tests, just a package change
Change-Id: I591c337f8f6062befdb2a08f61a1456c5af04be3
2022-06-07 19:55:48 +00:00
TreeHugger Robot
72317431de Merge "Move ClockRegistry to SystemUISharedLib" 2022-05-23 18:06:30 +00:00
Josh Tsuji
480e281057 Merge "Offset bounds by card top padding to align lockscreen/launcher smartspaces." into tm-dev am: 2274df1efb am: 7065c8e259 am: 1d75505223 am: 7e93b28655
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/18199686

Change-Id: Ide8442b61357f776474a65a6f9c3ea7d60911e04
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-05-23 16:37:19 +00:00
Josh Tsuji
2274df1efb Merge "Offset bounds by card top padding to align lockscreen/launcher smartspaces." into tm-dev 2022-05-23 15:02:17 +00:00
Hawkwood Glazier
1323984dac Move ClockRegistry to SystemUISharedLib
Bug: 229771520
Test: Automated
Change-Id: I7e921038a803188eee4cc437b7076db97ecdd853
2022-05-21 02:08:46 +00:00
Hawkwood Glazier
c225417205 Initial ClockPlugin interfaces and ClockRegistry functions
Bug: 229771520
Test: Automated
Change-Id: I2bc8be56f9fb91734aa7d430270c3e9ad7328ed0
2022-05-19 18:57:54 +00:00
Fabian Kozynski
5834bd57e7 Merge "Do not use mStaleListener if tile is listening" into tm-dev 2022-05-18 14:09:44 +00:00
Fabian Kozynski
cedca59a19 Do not use mStaleListener if tile is listening
In that case, just refresh the tile directly. This will schedule a new
stale state.

Additionally, make sure that QQS/QS are only listening when QS is
actually visible.

Test: atest SystemUITestsi
Test: QSLog
Fixes: 232427992

Change-Id: I44d8f23f1ceea37bcd479ee23c7cdd4b0c1c14e0
2022-05-16 11:53:22 -04:00
Justin Weir
f738e2463d Move Volume control Binder calls to worker thread
Pushed the binder calls down the call stack to where it's on the worker
thread instead of the main thread.

Bug: 226354720
Test: Ran all the tests and verified that Binder calls are on worker threads
Change-Id: I05c89b5057529a492b0e33a9198d1207609245da
2022-05-16 13:15:30 +00:00
Josh Tsuji
209f3c92b8 Offset bounds by card top padding to align lockscreen/launcher smartspaces.
This fixes the issue where the smartspace jumps
around when an alarm is set, and the lockscreen
smartspace has three text lines while launcher's
has two.

Bug: 232413750
Test: unlock with/without alarm set
Change-Id: Iaca7d62779f9f45b94833272d853bbfc2cbc42ae
2022-05-12 16:50:24 +00:00
Xiaowen Lei
13cb74291f Add logging for Smart Space on Dream surface.
Bug: 227613246
Fix: 227613246
Test: manually on device - SS events logged same as for lockscreen.
Note: clicks are logged for reminder card but not for weather card,
which is the same behavior as for lockscreen.
Test: atest DreamSmartspaceControllerTest

Change-Id: If4931fc9da0688cfe63e7519713f4107d8d001c5
2022-04-22 00:20:12 +00:00
Dave Mankoff
22149274f9 Merge "Remove FileDescriptor from systemui.Dumpable." into tm-dev 2022-04-07 20:19:05 +00:00
Dave Mankoff
96985e5212 Remove FileDescriptor from systemui.Dumpable.
This is the first step in moving over to the new public
android.util.Dumpable api.

Bug: 217567642
Test: m SystemUI
Merged-In: Ibaebcfb2c6c5326d0c45b8c72d868c76655d89a0
Change-Id: Ibaebcfb2c6c5326d0c45b8c72d868c76655d89a0
2022-04-05 20:48:27 +00:00
Beverly Tai
0340a16437 Merge "Hide manage & clear affordances on transition to KG" into tm-dev 2022-04-04 18:15:24 +00:00
Beverly
b76c8250da Hide manage & clear affordances on transition to KG
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
2022-04-01 20:21:23 +00:00
Fabian Kozynski
b4b1692357 Add better a11y support in QS
* 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
2022-03-31 10:42:36 -04:00
Fabian Kozynski
d1496fc15c Merge "Fix refresh tile when tile is already listening" into tm-dev 2022-03-25 19:18:52 +00:00
Fabian Kozynski
0ca203c23c Fix refresh tile when tile is already listening
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
2022-03-24 10:44:09 -04:00
Christian Göllner
752f82ea9d [Motion] Split-shade transition on LS: add an overshoot/overscroll effect
- 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
2022-03-24 10:05:42 +00:00
Matt Pietal
9fbefebbc9 Launch user switcher as SYSTEM
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
2022-03-16 18:19:33 +00:00
Nadav Bar
904975fd69 Integrate captions volume button with new CaptioningManager API
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.
2022-02-23 18:04:18 +00:00
Winson Chung
352b68bfc6 Merge "Fix regression in handling of empty dark regions" 2022-02-15 04:48:24 +00:00
Winson Chung
a2078ca3d0 Fix regression in handling of empty dark regions
- 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
2022-02-14 18:55:02 +00:00
TreeHugger Robot
4b665b9872 Merge "Modify the documentations for the UI template APIs" 2022-02-14 18:27:35 +00:00
TreeHugger Robot
444b42ef59 Merge "Remove QSDetail" 2022-02-11 14:28:00 +00:00
Fabian Kozynski
c292eff31f Remove QSDetail
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
2022-02-10 16:17:00 -05:00
Cecilia
663abefa00 Modify the documentations for the UI template APIs
- 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
2022-02-10 20:24:57 +00:00
Winson Chung
6c5ebb36d8 Support multiple dark tint areas in status bar
- 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
2022-02-10 17:36:47 +00:00
TreeHugger Robot
0891d4b390 Merge "Add all the Smartspace UI templates' corresponding data classes." 2022-01-28 05:43:15 +00:00
Cecilia
6927948dff Add all the Smartspace UI templates' corresponding data classes.
- 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
2022-01-27 21:00:47 +00:00
Josh Tsuji
32354d952b Adds Launcher in-window animations, and reworks how the unlock flow works.
Bug: 197636887
Test: atest SystemUITests
Change-Id: If6ff114f90fcfc19b9e3530bb0dea8cc0591f745
2022-01-18 17:41:28 -05:00
Fedor Kudasov
0a7934c3f9 Annotate com.android.systemui.qs with @Nullable
Bug: 209459024
Test: m SystemUI-core
Change-Id: I48ba7039ca826c8304f425f34a8c84981710dc77
2022-01-07 13:51:16 +00:00
TreeHugger Robot
ffe4331a9b Merge "Deprecate unused methods in QSTileImpl" 2022-01-05 20:49:56 +00:00