Commit Graph

286 Commits

Author SHA1 Message Date
Lucas Dupin
e17ce5286f Fix jank when switching themes
Turning overlays on and off takes time,
it also doesn't allow us to have fine control
over which view is using which theme.
Lock screen colors are now driven by themes.

Change-Id: Ie8860d00dbb0705ed76edf60a9d3030618dd21ca
Fixes: 63751714
Test: Visual. Set wallpapers, unlock.
Test: runtest -x packages/SystemUI/tests/src/com/android/keyguard/KeyguardSecurityContainerTest.java
Test: runtest -x tests/Internal/src/com/android/internal/colorextraction/ColorExtractorTest.java
Test: systrace
2017-07-24 13:26:22 -07:00
Jorim Jaggi
6498f96283 Revert "Fix jank when switching themes"
This reverts commit e5d0b9dddb.

Fixes crashloop with lock pattern

Change-Id: I3721444c91e2be625c59ec3e6ba14f1080badc07
Fixes: 63980375
2017-07-24 15:53:42 +02:00
Lucas Dupin
e5d0b9dddb Fix jank when switching themes
Turning overlays on and off takes time,
it also doesn't allow us to have fine control
over which view is using which theme.
Lock screen colors are now driven by themes.

Change-Id: I4b5db6234cafebbe8eaa952781c038370a11488b
Fixes: 63751714
Test: Visual. Set wallpapers, unlock.
Test: runtest -x tests/Internal/src/com/android/internal/colorextraction/ColorExtractorTest.java
Test: systrace
2017-07-20 22:44:36 -07:00
Lucas Dupin
987f1937a0 Change keyguard theme when wallpaper colors change
Bug: 38163994
Bug: 37014702
Bug: 62053168
Test: visual
Change-Id: I5a2da4ef2ad6fc1dab71588f2d0f5bd207731900
2017-06-01 12:14:53 -07:00
Jason Monk
0ed316b7f1 Merge "Change brightness dialog theme" into oc-dev am: 3b5934b267
am: c4d9ac6d18

Change-Id: I648fc03f0fb1395f6ac0e8bd77b7389afa30891b
2017-05-30 17:04:18 +00:00
Yoshinori Hirano
2dd296f288 Change brightness dialog theme
Added new theme Theme.DeviceDefault.QuickSettings.Dialog and applied it
to the brightness dialog.

Fixes: 62010126
Test: visual

Change-Id: I3bc1116a227d5e62d8624c9a4911771152f3ced0
2017-05-30 10:50:34 -04:00
Todd Kennedy
6312b3c4f5 Merge "Filter package related info" into oc-dev am: 72b7b1f001
am: 36482247ea

Change-Id: I8b5a7d1c08e7d6f822347aaed2b15e4e270d0a49
2017-05-18 19:51:53 +00:00
Todd Kennedy
e6393c9571 Filter package related info
This is one of many CLs to go through the PackageManager API surface
and filter access depending upon the requested information and the caller.
In this change, we filter ActivityInfo, ApplicationInfo and PackageInfo.

Bug: 35871369
Test: bit FrameworksCoreTests:android.content.pm.PackageManagerTests
Test: cts-tradefed run commandAndExit cts-dev -m CtsAppSecurityHostTestCases -t android.appsecurity.cts.EphemeralTest
Change-Id: Iaefd73f912ab1c7e1844e72625388455f783a362
2017-05-16 16:13:52 -07:00
Rebecca Silberstein
763b36c7eb Merge "SystemUI: add NETWORK_SETTINGS permission" into oc-dev am: 276b63dc9e
am: 75a7b33a1a

Change-Id: I4b793246f4fe1c6ac6fcacb8e1d84cdd9f2e3214
2017-05-12 21:17:48 +00:00
Rebecca Silberstein
a21587481f SystemUI: add NETWORK_SETTINGS permission
Add the NETWORK_SETTINGS permission to the sysui components so we can
properly check for allowed callers in WifiService.

Bug: 36760523
Test: make
Change-Id: Ia054ffad7a9508e0d80f7b3a444691373ad1924f
2017-05-12 15:58:43 +00:00
Winson Chung
6a35c71610 Merge "Allow Recents to rotate freely." into oc-dev am: 05aa65cfb9
am: 0f800e671a

Change-Id: I33099e0c6c2ee76eb6ad12cc41d3f79d542b0358
2017-05-12 08:53:48 +00:00
Winson Chung
6c8536c3a2 Allow Recents to rotate freely.
Bug: 37550022
Test: Switch between landscape apps while the device is in landscape
Change-Id: Ic035a1e929f7da0b0a01b11c219a7146aa36f811
2017-05-11 13:07:10 -07:00
Jason Monk
a63d5a1bbf Merge "Fix brightness dialog background to be light" into oc-dev am: 175f53b2d6
am: aee0dd3ab0

Change-Id: I75f50fea8b504f7058fda5e83320e172ad298649
2017-05-10 18:59:39 +00:00
Jason Monk
4b29f3756e Fix brightness dialog background to be light
Test: visual
Change-Id: I158af3aa79de39d463ac0b26ef7d73b0430df927
Fixes: 37763715
2017-05-10 10:05:02 -04:00
Dianne Hackborn
8a40a4ca27 Merge "Work on issue #36891897: Need to ensure foreground services can't..." into oc-dev am: f1a4b50739
am: a766f1d1ec

Change-Id: I82c6b62af3d4eddbd4e97c83b2bb7d4a1657c63d
2017-04-30 17:44:10 +00:00
Dianne Hackborn
83b40f69be Work on issue #36891897: Need to ensure foreground services can't...
...hide themselves

The activity manager now keeps track of all apps that are running
foreground services and builds a notification showing them to the
user.  We ensure they are shown to the user for at least 30 seconds
(configurable).  If foreground services are executed while the
screen is off, their apps will be shown to the user for at least
30 seconds after the screen turns back on.

While doing this I am also adding a new process state to distinguish
between "important background" stuff that should bypass bg check vs.
ones that don't.  By default, these now no longer bypass bg check,
which is really the expected (and documented) behavior.  There is a
new bind flag to allow them to bypass bg check, which is currently
only used by the IME.

Also add some new job scheduler commands that will be used to
write new tests cases for jobs timing out.

Bug: 36891897

Test: manual

Change-Id: Ied3f7b56444254513fd776f06b88bc0e54704958
2017-04-29 19:41:12 -07:00
Jason Monk
70f6c9990b resolve merge conflicts of a2b0b7381c to master
Test: I solemnly swear I tested this conflict resolution.
Change-Id: I85595d8c5b4bd8d09db96115f88e78c215776eb3
2017-04-25 13:16:45 -04:00
Jason Monk
365063f196 Fix crash in plugin settings
Test: Open plugin settings
Change-Id: I4c21505b95661d278f3129527df14dbfa3fbc271
Fixes: 37625271
2017-04-24 13:18:12 -04:00
Christopher Tate
bb9cce5a2f Let SysUI set wake-from-idle alarms with impunity
In an always-on display environment the device may go into doze, but
SysUI will still need to update the display on an ongoing basis.

Bug 36506772
Test: manual

Change-Id: I0b20ba7c352bac7c278f659f0e29496cc342d381
2017-04-20 22:32:50 +00:00
Jason Monk
eaf6b3b193 Merge "Tuner plugin settings updates" into oc-dev 2017-04-07 01:39:28 +00:00
Kang Li
38a6da6473 Add a service to rank apps for ResolverActivity.
bug: 36952725,30982298

Test: used PTP before and after this fix.

Change-Id: I5b249af2dd0d9fe32d1e524e8d2675c863e92b5b
2017-04-06 18:08:14 +00:00
Jason Monk
d2e75262cc Tuner plugin settings updates
Test: manual
Fixes: 33446852
Change-Id: I05c046bb70dff66ea25531503216f121e6618a62
2017-04-06 11:24:20 -04:00
Phil Weaver
f1a9aff962 Fix permission checking for a11y volume.
Adding new permission for changing accessibility volume
to allow system UI to change it. Also providing audio
manager with a whitelist of bound accessibility service
uids so it can allow servics to change the volume.

Bug: 36569297
Test: Adding CTS test in linked CL.
Change-Id: I4f327e3a251fc3780c5957f41217c2ef5bb8b16e
2017-03-27 14:59:26 -07:00
TreeHugger Robot
cef238ed70 Merge "Fix SystemUI intents" 2017-03-24 16:40:00 +00:00
Peeyush Agarwal
d8d1e199cc Fix SystemUI intents
b/35307747 moved these intents from android. to com.android. Change
filters in AndroidManifest so that the new intents are not filtered out
and actually get delivered.

Bug: 36085764
Change-Id: I7120f28e56d71b6bfa19dd59624d992ded79501c
Fixes: 36085764
Test: none
2017-03-24 14:56:01 +00:00
Jean-Michel Trivi
ab2d9315d1 Permission enforcement for A11y volume changes
Make modifying the STREAM_ACCESSIBILITY volume conditional
  to have the BIND_ACCESSIBILITY_SERVICE permission.
Add BIND_ACCESSIBILITY_SERVICE permission to sysUI.

Test: cts-tradefed run cts -m CtsMediaTestCases -t android.media.cts.AudioManagerTest#testAccessibilityVolume
Bug: 34379420
Bug: 30448020
Change-Id: I9f26affccd953bd8473d06822857edf92fef4ba8
2017-03-14 00:26:16 +00:00
Sid Soundararajan
7616234117 Merge "RecentsTV : Remove all Recents TV Code" 2017-03-13 17:44:55 +00:00
Phil Weaver
f00cd14f17 Basic accessibility support for picture-in-picture
Exposing actions from the PIP InputConsumer to accessibility,
stripping all actions from a covered PIP app, and adding the
InputConsumer's actions on the PIP app's root view.

We were also using an "undefined" accessibility ID to mean
three different things: a root view, a host view of a virtual
view hierarchy, and a truly undefined view. I've introduced
new values for cases where the id could be defined.

Also gathering all window IDs into one place to reduce the
chance of collisions.

Bug: 34773134
Test: In progress. Current cts passes.
Change-Id: I97269741a292cf406272bf02359c76c396f84640
2017-03-10 15:35:30 -08:00
Sid Soundararajan
0e88d32b96 RecentsTV : Remove all Recents TV Code
This patch will remove the Recents TV Code from SystemUI.

Test: To test this removes the Recents Feature and has no
side effects, try to launch recents with long-press HOME. This
should result in launching the phone version of recents.

BUG: 36035359
Change-Id: I9026b480968575ce08e1ce344512f168fdc5fe87
2017-03-08 16:19:04 -08:00
Adrian Roos
9125068a99 SysUiLeaks: Add GarbageMonitor
Adds a service for monitoring the amount of tracked garbage.
If it exceeds reasonable levels, a notification with a leak
report is posted.

Test: runtest systemui
Change-Id: Ib55281f2aac557743b97c46bc616688261c72e9c
2017-02-11 21:57:10 +01:00
TreeHugger Robot
5841a983e8 Merge "Launch work lock scrim as clear_top not single_top" 2017-01-26 16:41:44 +00:00
Robin Lee
588a333741 Launch work lock scrim as clear_top not single_top
SINGLE_TOP is only guaranteed to work within the current task stack.
If multiple stacks are inactive in the background (eg. temporarily
switching from freeform mode to fullscreen mode by maximising one
activity) some tasks might get missed out and stay visible.

Test: manual -- start two work activities, one in fullscreen & one in freeform. start a personal
Test: activity in freeform too. switch to the fullscreen work app and lock the profile using
Test: `adb shell service call trust 6 i32 $USER_ID i32 1`
Test: __outcome after change__
Test:   a) locking work profile should bring up the work password prompt in fullscreen
Test:   b) skipping the prompt and switching to the personal freeform app should keep the freeform
Test:      work app hidden by WorkLockActivity
Test: __outcome before change__
Test:   Only (a) happened, for step (b) the work app was still visible
Bug: 31001762
Change-Id: I5979c5b12670a21c7bcd59e222fc518d395e3e29
2017-01-25 19:19:34 +00:00
Dianne Hackborn
c3af19a87d Optimize bg check flow.
No longer need to look up the application info, target SDK is
explicitly passed in to the check.  For the external method, we
change this to just checked to see if background is completely
disabled, which doesn't need a target SDK check (and is the only
thing any of the current clients care about).

Now allow SystemUI to put targets of notification pending intents
on the temporary whitelist when they fire, so developers can avoid
dealing with background restrictions in this case (if the user
interacts with their notification, they will temporarily be
considered in the foreground).

Remove any thoughts of enforing restrictions on registerReceiver(),
so we don't need to deal with target SDK versions there (which can't
be done all that efficiently).

Also bring back the old "allow starts coming from foreground apps"
only for the MODE_IGNORE app op, since it should provide some
better compatibility.

Test: ran them.

Change-Id: Id4ea7f992d12ce4bd8e54f1dbaeb4a460a3dee59
2017-01-23 14:18:33 -08:00
TreeHugger Robot
b8e3643066 Merge "Add rankingScores and badges to WifiPicker." 2017-01-20 02:03:33 +00:00
Jiaquan He
9cea684079 2D Recents: handle keyboard config changes. am: 44db90262e
am: a925230cbc

Change-Id: Iae7e4908f1fe7aec921cb2bc03ba433aebb4e929
2017-01-20 01:33:30 +00:00
Jiaquan He
44db90262e 2D Recents: handle keyboard config changes.
While attaching or detaching a physical keyboard, we should handle the
configuration change in RecentsActivity, so that the activity isn't
relaunched and causes abnormal behaviors.

Test: Checked that while keyboard is attached or detached, Recents
behaves normally.
Bug: 32101881

Change-Id: Ibd185aeb48b31dbde032e235fdcaa17fbcdd9c8a
2017-01-19 15:29:54 -08:00
Sundeep Ghuman
5519b7b873 Add rankingScores and badges to WifiPicker.
Adds support to request scores in WifiTracker and then plumb
those scores via AccessPoint.java. AccessPoints will sort on
ranking scores. Show badging in WifiSettings picker.

Bug: 33457699, 33778046
Test: Unit tests
Change-Id: Icc3161cf147b3a9715d6e9f56af574e52ae6c832
2017-01-19 15:13:09 -08:00
TreeHugger Robot
97d9813245 Merge "Add one-shot plugin support" 2017-01-11 19:35:22 +00:00
Jason Monk
59d86ed2a8 Add one-shot plugin support
Should have happened a while ago.

Test: runtest systemui
Change-Id: I0da4deb5c297e8030213810815a408364ec97e14
2017-01-11 11:29:17 -05:00
Robin Lee
3fef1f2843 Bounce work challenge through a WorkLockActivity
This stops us from depending on Settings for keeping the work profile
secure. Instead that is delegated to a smaller Activity inside SystemUI
which has just two jobs:

 1) Don't let anyone see the content that's supposed to be locked.

 2) Start ConfirmCredentialsActivity (still lives in Settings for now)

Bug: 31001762
Test: //cts/hostsidetests/devicepolicy/src/com/android/cts/devicepolicy/MixedManagedProfileOwnerTest#testResetPasswordFbe
Test: //tests/PoApi/src/com/google/android/afwtest/poapi/WorkChallengeTest
Change-Id: If43820b683007a60a37edf32fb65b442a8fb709b
2017-01-11 14:13:03 +00:00
Winson Chung
c75ffe8ccb Fixing some interaction issues with the PIP menu.
- Due to jank when finishing the PIP menu activity, we handle the
  menu visibility explicitly and keep the menu activity around
  once triggered (until PIP ends), instead of finishing and
  recreating it each time it is invoked.  This also gives us the
  flexibility to control how the animation looks of both the menu
  and individual actions.
- Allow dragging the PIP while the menu activity is showing and
  taking input
- Tapping outside of the PIP now hides the menu

Test: Enable the tap-to-interact in the SysUI tuner and drag while
      the menu is showing.

Change-Id: Iac74710100d793e6825b00c7c0d71b85fb420fa0
Signed-off-by: Winson Chung <winsonc@google.com>
2017-01-03 11:28:37 -08:00
Manu Cornet
e93f8100a6 DO NOT MERGE - Delete the separate grid recents activity and related code
This was the first attempt at implementing grid-based Recents.
The new implementation doesn't use a separate activity and reuses a lot
more code.

Bug: 32101881
Test: Checked Recents behavior on local sw600dp device
Change-Id: Ic3535fc49f3f5448d6002d354678b633f122f57d
2016-12-20 17:52:45 -08:00
Manu Cornet
8e17342610 Delete the separate grid recents activity and related code
Bug: 32101881
Test: Made sure everything builds & boots on sw600dp device and checked recents
Change-Id: I1236a1ec5f5d2f485d9825c39702130bbfc243ca
2016-12-16 16:31:19 -08:00
Manu Cornet
c733803433 Revert "Grid recents: tweak task header layout to better match mocks"
This reverts commit 4701b99356.

Change-Id: Id1a2f93f55b32e6544083254bb16e3d3722aa3dd
2016-12-13 17:32:20 +00:00
Manu Cornet
4701b99356 Grid recents: tweak task header layout to better match mocks
Test: Checked layout on local sw600dp device
Bug: 32101881
Change-Id: Ic205beea47fc67fca9b3c95b3d1318c156ccc9c1
2016-12-13 07:26:03 -08:00
Manu Cornet
e138bd1955 Change the task layout to better match mocks, add "in" animation
This only adds an animation when transitioning into recents. "Out"
animations will come later as they need to be run in parallel with
launching the activity not to introduce any latency.

Test: Open recents on sw600dp device, check recents layout/animations
Bug: 32101881
Change-Id: I367f8e5c106cd06d2a7833c165ecb960a7821ed9
2016-11-23 14:48:30 -08:00
Manu Cornet
c13df1eb30 DO NOT MERGE - 2-dimensional Recents activity.
This is a simple first version in the spirit of small, incremental CLs.
It is fully functional but the following will come in later changes:

* Split screen support
* Potential animations
* Alt-tab behavior
* Relayout on orientation changes

The new activity is only started when a specific system property is set.

Test: Tested new activity behavior on local Ryu. Added tests for layout logic.
Bug: 32101881
Merged-In: I550f6e7ea0de3937dbf80e5f0294676cfe567d47
Change-Id: I46a537646e98b312d831510e1d331948888ae5ce
2016-11-11 12:57:07 -08:00
Jason Monk
97a06a12ed Add switchable theme to tuner
Allows option in tuner to switch between system theme overlays
if multiple exist. Requires a restart to take effect.

Test: Settings -> Tuner -> Other -> Theme
Change-Id: Iea43b9cbb67fd91c6008be594ad4cfd19c3f57ec
2016-11-11 09:01:20 -05:00
Manu Cornet
1afcea499d 2-dimensional Recents activity.
This is a simple first version in the spirit of small, incremental CLs.
It is fully functional but the following will come in later changes:

* Split screen support
* Potential animations
* Alt-tab behavior
* Relayout on orientation changes

The new activity is only started when a specific system property is set.

Test: Locally on Ryu device. Added tests for layout logic.
Bug: 32101881
Change-Id: I550f6e7ea0de3937dbf80e5f0294676cfe567d47
2016-11-07 10:01:36 -08:00
Winson Chung
15504af3f7 Experiment with allowing tap to break through to interact with the PIP.
Test: Enable SysUI tuner, tap once on PIP to interact with the activity.
      This is only experimental behaviour, and
      android.server.cts.ActivityManagerPinnedStackTests will be updated
      accordingly if we keep this behavior.

Change-Id: I278ab8c360c44718cfcac0fd761f476a875f9b15
2016-11-02 18:11:36 -07:00