Commit Graph

9635 Commits

Author SHA1 Message Date
Bill Yi
4d57dd3a06 Import translations. DO NOT MERGE
Change-Id: I8e78e6a45554d3a8d41b7876876a0413b266d489
Auto-generated-cl: translation import
2019-11-18 19:24:01 -08:00
Robert Horvath
993e82eec7 Merge "Add setting to go to sleep after long user inactivity" 2019-11-15 15:05:15 +00:00
Mady Mellor
53162c13a3 Add Bubble as an option in NotificationInfo longpress menu
- If the content is able to bubble, the bubble option will show in
  the menu
- If that notif is able to bubble (either via bubble metadata or via
  notification contents), then show the menu
- Adds tests for the bubble menu option, also tests selection for alert
  and silence buttons; removes unused test code

Test: atest NotificationInfoTest NotificationGutsManagerTest
Test: manual - post a bubble with bubbles test app, longpress on notif
               and demote it via menu => bubble is gone
             - long press on notif and promote it via menu => bubble is
               created
Bug: 138116133
Bug: 143173197
Change-Id: I2f2767ec12c49e5d3a8d2a7b86db5457d062275c
2019-11-11 16:29:37 -08:00
Bill Yi
48afe80ada Import translations. DO NOT MERGE
Change-Id: I9d791f47e6d45d719810fc1e89cb992c39dc62a5
Auto-generated-cl: translation import
2019-11-10 16:53:03 -08:00
Robert Horvath
5560f38654 Add setting to go to sleep after long user inactivity
The European Commision prescribes an auto-standby feature for TV panels:
After some hours of inactivity, the device has to go from on-mode to
standby-mode or off-mode, or another condition not exceeding the
applicable requirements for standby-mode or for off-mode.

After a long time of no user activity the device should go to sleep,
even if wakelocks are held (eg. during video playback).

Test: 1. Set attentive timeout low, to 35s:
         `adb shell settings put secure attentive_timeout 35000`
      2. Play a YouTube video
      3. Observe warning dialog appearing after 5s
      4. Verify: Clicking a remote button or changing the setting higher hides
         the warning. Remote button press is consumed.
      5. Verify: After 35s of not pressing a button the device goes to sleep
      6. Verify: If "Stay awake" developer option is enabled, then
         warning is not displayed and device does not go to sleep after 35s
      7. Verify: No warning or sleep if setting is set to -1
Test: `atest frameworks/base/services/tests/servicestests/src/com/android/server/power/PowerManagerServiceTest.java`
Bug: 137633812
Change-Id: I551b6cffc336437fb1c5a00b4102f68ae0e003e9
2019-11-08 15:18:28 +01:00
Mady Mellor
ab190a8043 Merge "Bubble icon improvements" 2019-11-05 21:03:49 +00:00
Dave Mankoff
bcaca8a6cd Remove all calls to getComponent(CommandQueue.class).
Makes AuthController, GlobalActionsComponent, InstantAppNotifier,
SizeCompatModeActivityController, and TvStatusBar all injectable.

Prior to this CL, CommandQueue contained within it a SystemUI object
that it used to start itself up and add itself to components. With
this change, the SystemUI object is no longer necessary, as Dagger
will ensure that a CommandQueue is available to those who need it.

Bug: 143702229
Test: atest SystemUITests

Change-Id: I2763a6d918b41fe27a2370fdd820da476654e14f
2019-11-01 14:59:11 -04:00
Fabian Kozynski
280f659058 Merge "Use an external GlobalActionsPanelPlugin if available" 2019-11-01 14:03:33 +00:00
Mady Mellor
05e860bef3 Bubble icon improvements
* The tinting logic isn't good for developers, this change removes that
  logic and respsects whatever icon they provide, HOWEVER, if it is not
  adaptive it gets put on an adapative shape, consistent with launcher
* Updates the dot colour to be based on colour sample from the app icon
  bitmap rather than the notification colour, consistent with launcher
* Updates Notification documentation to reflect changes

Test: manual with Bubbles test app (options for all the icon types)
Bug: 138943209
Change-Id: I8abfcef9ac1dcdd9f74643e84ef40a97385b744b
2019-10-31 10:35:12 -07:00
Fabian Kozynski
4ca00016c5 Use an external GlobalActionsPanelPlugin if available
If there is any plugin that implements GlobalActionsPanelPlugin
with package name as defined in the config,
SystemUI will use that instead of the wallet plugin.

Test: manual

Change-Id: I63db81287ef40f085d5b542fe01eff29adeb1477
2019-10-30 14:40:41 -04:00
Matt Pietal
5a19cb6115 Home Controls: Consolidate flags for QS media player/NPV
Use 'adb shell settings put system npv_plugin_flag X' to
enable/disable media player as well as NPV

Test: visual
Change-Id: I0d889300b4b08c2d89ab75983e77ec3ba739783e
2019-10-30 12:33:33 -04:00
Bill Yi
004732223f Import translations. DO NOT MERGE
Change-Id: I4267533f5c0ac995e3192c5db90d20fbac5a445a
Auto-generated-cl: translation import
2019-10-26 17:27:40 -07:00
Matt Pietal
8d4a635cc3 Reuse NPVPlugin for QS Controls Tile
Enabled reuse for better support/easier flow for user.

adb shell settings put system npv_plugin_flag 3

Test: visual
Change-Id: I9e3e2b02e60bf732ab6e6c1f184b4bdfcf368934
2019-10-24 13:33:32 -04:00
TreeHugger Robot
f1f26c2cad Merge "Plugin interface for PeopleHub" 2019-10-23 16:30:20 +00:00
Steve Elliott
984cfec745 Plugin interface for PeopleHub
This allows for plugins to add additional "people notification"
detection logic, useful for prototyping against apps which do
not post MessagingStyle notifications.

Test: manual
Change-Id: I8b7b824beed50dfb86689f41ff151b3014737ffb
2019-10-23 11:23:59 -04:00
Beth Thibodeau
07d20c3243 Add QS media player options
This adds a mini player in the QQS, and media carousel in QS
Incorporates the WIP layout changes from ag/9415169

To enable: adb shell settings put system qs_media_player 1
then toggle dark mode, or adb shell stop && adb shell start

Known issues with color overlays not updating until you press a button,
and old sessions do not get automatically removed from the carousel.

Test: manual
Change-Id: Iaeda470a920cb115c28ec98f04d74f255e1d5a12
2019-10-22 10:47:30 -04:00
Edward Savage-Jones
c669e81af5 Merge "translate="false" -> translatable="false"" am: dd87b30266 am: 2225dc01d4 am: 37c6b9d646
am: d5cb604a81

Change-Id: I57ae295ae26b3901998227f811d8005eedcbcdae
2019-10-21 09:30:10 -07:00
Edward Savage-Jones
d5cb604a81 Merge "translate="false" -> translatable="false"" am: dd87b30266 am: 2225dc01d4
am: 37c6b9d646

Change-Id: I376f320659cc71fd0be58bf027f0546dca3f612a
2019-10-21 09:19:03 -07:00
Edward Savage-Jones
37c6b9d646 Merge "translate="false" -> translatable="false"" am: dd87b30266
am: 2225dc01d4

Change-Id: I580f58080a01776837249afbb93e02a6ce79a33d
2019-10-21 09:08:01 -07:00
Edward Savage-Jones
2225dc01d4 Merge "translate="false" -> translatable="false""
am: dd87b30266

Change-Id: Ie1ea3ee801339639c131e5cb89b3024d13c4b24c
2019-10-21 08:57:02 -07:00
Steve Elliott
58adc21f3c Add PeopleHub to the notification shade
When the people section of the shade is enabled, an additional entry
will appear at the bottom of the section that contains shortcuts to
recent conversations that have appeared as notifications.

Test: manual
Change-Id: Iac94cabe3dd4233510ddc50b3a1923ed42c552e0
2019-10-18 17:14:27 -04:00
Bill Yi
6e39d50575 Import translations. DO NOT MERGE
Change-Id: If0e7c1554139ae744a2fdede2b15200679a21e74
Auto-generated-cl: translation import
2019-10-18 07:31:10 -07:00
Edward Savage-Jones
c2d63dc5e9 translate="false" -> translatable="false"
Fixed a typo related to String translation

Bug: 142888682
Test: Manual
Change-Id: I75f1ce67492f54bdfdf859b283d5095909cc63f5
2019-10-18 17:26:28 +08:00
TreeHugger Robot
f3c1c427b2 Merge "Home Controls: Add a new Controls tile for prototyping" 2019-10-16 16:53:46 +00:00
Matt Pietal
b6da00e69a Home Controls: Add a new Controls tile for prototyping
Must edit the QS area to add the new Controls tile and have set:

adb shell settings put system qs_controls_tile_enabled 1

Test: visual
Change-Id: I7359d394d6d0a5eb408de7049bf0b3051c83e361
2019-10-16 11:18:49 -04:00
Paul McLean
79ce5e08a9 Add "record through USB" warning to UsbConfirmActivity.
Bug: 142742243
Test: install UsbPeristenPermissionsTestApp, connect USB Audio device
w/ record activity, notice additional warning.

Change-Id: Ic6f49d108617945079d24f71ab0487c46f3e27cb
2019-10-15 14:57:27 -06:00
Xin Li
5c4d37fc17 DO NOT MERGE - Merge QD1A.190821.011 into stage-aosp-master
Bug: 141248619
Change-Id: I078f35ceef06ae7d08c5de385fd023c71c1ecbac
2019-10-14 22:54:53 +00:00
Dave Mankoff
0cf8dfce9b Create controller for StatusBarWindowView.
This moves most of the logic out of the view and into
StatusBarWindowViewController. It is not beautiful, but
it is cleaner than before.

This removes the final call to Dependency.get(FalsingManager.class).

This also fixes a small, old bug in
StatusBarWindowView.onInterceptTouchEvent where the results
of calling hte super method were being unintentionally ingored.
(This bug would have been introduced nearly seven years ago.)

Bug: 141751146,136279712
Test: atest SystemUITests
Change-Id: I5e09c1c0f2a3098db1a47837ddce3d382099f483
2019-10-07 11:05:40 -04:00
Bill Yi
1376bbfb2b Import translations. DO NOT MERGE
Change-Id: I4c0d92b4824bbb0d957f8ced67c950c6452967a0
Auto-generated-cl: translation import
2019-10-05 16:58:02 -07:00
Kevin Chyn
f8ff281ae0 Merge changes from topic "biometric-ui-credentials"
* changes:
  Animate panel to transparent if profile is managed
  17/n: Show credential UI if setDeviceCredentialAllowed(true) and no biometrics
  16/n: Add PIN/Password
  15/n: Allow Auth UI to start in credential UI
  14/n: Animate to device credential UI when lockout occurs
  13/n: persist device credential across configuration changes
  12/n: Add LockPatternView for setDeviceCredentialAllowed(true)
  11/n: Animate panel to full-screen when "Use Password" is pressed
  Removing old confirm device credential logic
2019-10-05 02:37:26 +00:00
Kevin Chyn
8110ebb57c 16/n: Add PIN/Password
Bug: 140127687

Make AuthCredentialView abstract, and have the following subclasses
 1) AuthCredentialPatternView
 2) AuthCredentialPasswordView

Back button cancels password authentication

Test: manual test with pattern, pin, password
Test: atest com.android.systemui.biometrics

Change-Id: I95e42144616a59827da25d10d063990452714f76
2019-10-04 13:13:12 -07:00
Dave Mankoff
bb9575f5b5 Move StatusBar to constructor injection.
Bug: 141882822
Test: atest SystemUITests
Change-Id: I385ccd8e96b3e131b095db5adfca93389905d030
2019-10-03 22:55:35 -04:00
Kevin Chyn
8cbb488b9a 13/n: persist device credential across configuration changes
1) AuthContainerView can be started in either `biometric` or `credential`
   views. This is to potentially support an API where only credential
   is allowed/requested.
2) When onSaveState, AuthContainerView saves both the states of
   `biometric` and `credential` visibility. In the case of configuration
   change, AuthController is responsibile for checking the visibility
   and creating a AuthContainerView with the correct initial view.
3) When AuthCredentialView is the initial view, it owns the panel
   expansion.
4) Added landscape layout

Bug: 140127687

Test: atest com.android.systemui.biometrics
Test: BiometricPromptDemo, use pattern, rotate device. auth, cancel,
      demo logs are correct.

Change-Id: I1f501cf13b924353f251a69757fdb9d7e0bf1d21
2019-10-03 14:00:16 -07:00
Kevin Chyn
ff168dc49d 12/n: Add LockPatternView for setDeviceCredentialAllowed(true)
Includes lock icon, title, subtitle, description, lock pattern view.
Corner radius and padding animates nicely from !=0 --> 0.

Support for password/pin will come in a subsequent CL.
Unit tests for AuthCredentialView will be added when
password/pin are implemented.

Support for persisting across configuration changes
and landscape view will also be added in a subsequent
change.

Test: BiometricPromptDemo with the following:
      1) Confirm pattern, callback received
      2) Rejected, error string shown
      3) Lockout (5 attempts), countdown string shown,
         pattern view disabled until countdown is over
      4) Cancel pattern auth, callback received
Test: atest BiometricServiceTest
Test: atest com.android.systemui.biometrics

Change-Id: Idc01e33be0074a6c8a43f60b172a4391bfbe5e8a
2019-10-03 14:00:16 -07:00
Kevin Chyn
396a84129f 11/n: Animate panel to full-screen when "Use Password" is pressed
Bug: 140127687
Test: atest com.android.systemui.biometrics
Test: BiometricPromptDemo, enable device credential, press password button

Change-Id: I6a4c6ea7fb4a4f0c55faa049a8e7e71a1c5f19ff
2019-10-03 14:00:16 -07:00
Paul Mclean
843c2951fc Merge "Adding additional prompt to UsbPermissionsDialg for audio devices." 2019-10-03 19:33:39 +00:00
Paul McLean
d336453217 Adding additional prompt to UsbPermissionsDialg for audio devices.
To support, adding members to UsbDevice to mark devices as having audio
playback and audio capture capabilities.

Bug: 136080195
Test: Run "UsbAccess" test bed. Connect audio and non-audio USB devices
and see the additional prompt shown/not-shown.

Change-Id: Ie7c614d9ed30a163c350b18a54b8a9115698779d
2019-10-03 11:54:05 -06:00
Fabian Kozynski
2f9dd75611 Added secondary label to flashlight
When flashlight is disabled, specify that it's because the camera is in
use.

Fixes: 138872957
Test: manual

Change-Id: I40836d8a51fca625d2a4391ba6a7315dd9d895eb
2019-10-02 13:15:41 -04:00
Sergey Nikolaienkov
976722f373 Merge "Add audio recording disclosure plate on TV" 2019-10-01 13:38:32 +00:00
Fabian Kozynski
71428f7944 Merge "Fix size and gravity of carrier text" 2019-09-30 15:02:31 +00:00
Sergey Nikolaienkov
c7a95ac67f Add audio recording disclosure plate on TV
Implementing a piece of SystemUI (TvStatusBar) for notifying users when
audio recording is conducted by applications (other than Assistant,
which is the only exception for now).

Bug: 134942150
Change-Id: I57b50816e9b4379c22e4281568ef990d96fd2498
Test: build, flash, run any app that records audio
2019-09-30 14:41:55 +02:00
Fabian Kozynski
082aaf91c4 Fix size and gravity of carrier text
Test: manual
Fixes: 141654596
Change-Id: If5a4d794c6316149e752a94f7eed83a10d15b3b8
2019-09-27 08:59:24 -04:00
Matt Pietal
d43e133a08 Use proper margins for NPV plugin and set the offset
Set the offset to the size of the QS area and add margin after that to
visually separate the QS and NPVPlugin areas

Test: visual
Change-Id: I9dc676eef0a49f1648723cdd91043b839c880ee5
2019-09-26 11:11:06 -04:00
Bill Yi
f63a9fe204 Import translations. DO NOT MERGE
Change-Id: Iec24012f3e1a71bcae31cf9c8b6fb039412df878
Auto-generated-cl: translation import
2019-09-25 18:23:36 -07:00
Evan Laird
2f373bfb5f DO NOT MERGE Allow for HTML styling in mobile data type content descriptions
am: a3b5dd1b89

Change-Id: Ic24216fda7cd9359ffa88c49b95c8188aa5b3e19
2019-09-25 13:51:39 -07:00
Evan Laird
e9644676ca DO NOT MERGE Allow for HTML styling in mobile data type content descriptions
am: 83c87e50b1

Change-Id: I8b50847dc8d6150f89d51f52494eb328b4b62f28
2019-09-25 11:19:45 -07:00
Evan Laird
a3b5dd1b89 DO NOT MERGE Allow for HTML styling in mobile data type content descriptions
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
Merged-In: Idf387111b0cdc34ad3762eac0ec6c2b484b393e3
2019-09-25 11:13:24 +00:00
Evan Laird
83c87e50b1 DO NOT MERGE Allow for HTML styling in mobile data type content descriptions
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
2019-09-25 11:12:37 +00:00
shawnlin
87af538d38 Move assist handles from ScreenDecorations to navigation bar
To improve the performance of display cutouts, we need to first move the
assist handles out of ScreenDecorations so that we can remove the layer
of ScreenDecorations later.

Bug: 140781914
Test: atest ScreenDecorationsTest, atest AssistHandleBehaviorControllerTest
Change-Id: I7c7cf8e0590d92aa32758c2983fc49387d18f7ad
2019-09-24 21:35:03 +08:00
Bill Yi
a76a632f5d Import translations. DO NOT MERGE
Change-Id: I0e8b3d3d7c1af28dfd75035552ed3b844ebe04bf
Auto-generated-cl: translation import
2019-09-21 16:33:53 -07:00