This change inserts badged wifi icons into the status bar to indicate
historical network strength. The existing callback handler was modified
to explicitly pass the drawable as currently the icon is a rendered from
two separate resources, composited together in a LayeredDrawable.
Badging is controlled by Settings.Global.NETWORK_RECOMMENDATIONS_ENABLED
and can be enabled from the Wifi Settings page.
Bug: 34056846
Test: runtest --path
frameworks/base/packages/SystemUI/tests/src/com/android/systemui/statusbar/policy/NetworkControllerWifiTest.java
Change-Id: I33b736d4543e380887513cbb5937f49945794c09
Adds a regression test for NPEs around executeRunnableDismissingKeyguard when
a null runnable is passed.
The bug was fixed in I89477a8a0067e285e5d0122e918fac45274c57ad.
Fixes: 33489225
Test: runtest systemui
Change-Id: Ia8981bc4c2a1a0f6d8c48e6d66e2af801d6cddac
Use a new system for constructing fragments so they can be swapped
out in place maintaining state. This will allow easier integration
with plugin lifecycle as parents who have child plugin fragments
can depend on the class existing and won't have to listen to
the lifecycle.
Test: runtest systemui
Change-Id: I517f4ce3d114abd49b1b5baca388d19e929b8f90
One of the many problems with PhoneStatusBar is that it holds
dependencies for many other parts of SysUI. Fix this by creating
a static method of grabbing dependencies that are global to sysui
this cleans up a lot of chains of interdependence.
Also add easy way to inject mocks of these dependencies for the
purpose of testing.
Test: runtest systemui
Change-Id: Ia0e947faea62d15b665facada47ac9916c99f895
It expects to have onConfiguration called at least once, so
make sure it has.
Test: runtest systemui
Bug: 34377261
Change-Id: Iba980b020ef2c175c7ffebedf946edb282be464c
Fixes an issue where the animation start visible type could
be stale if the animation was cancelled.
Bug: 30876804
Test: runtest systemui
Change-Id: I8e6ac6ba0bcd785f980b22529d83ba86da744f00
* changes:
AOD: Use heads-up state instead of buzzBeepBlinked
AOD: Do not animate shelf icons when changing ambientness
AOD: Show ambient versions of notifications
AoD: Reposition shelf under clock
AoD: Adjust shelf, only show top notification
AoD: Adjust clock layout
* changes:
Fixed the interactivness of the shelf on the keyguard
Follow up fixes for expandhelper
Fix guts not expanding when QSPanel is expanded
Fixed an issue where the setVisibility wasn't annotated
Fixed a crash when a notification is updated
Improved the performance of the shelf / scrim
Fixed a caching issue where icons could stay greyscale
Start hacking away at PhoneStatusBar by trying to pull out
as much NavigationBar logic as possible.
Test: runtest systemui
Change-Id: I23b904428be31b91f0747fd60c9f6e0dd323eb44
Allow for multiple callbacks to be added to CommandQueue.
This will allow PhoneStatusBar to be broken up into pieces
that make more sense.
Test: runtest systemui
Change-Id: I73a7da1c23c8e45a291e5957e7341f3930abc334
Port all system UI notifications to use the registry. Retain stable
integer IDs where they exist. Assign new stable IDs where resource IDs
were previously used.
Using "message" rather than "notification" since we may eventually
want to include dialogs and toasts.
Bug: 32584866
Bug: 30995038
Test: runtest systemui
Change-Id: Iec4d7cebbd88683e339ada29a279315222699942
1. Remove hardcoded color qs_tile_tint_* in colors.xml
2. Add tint_color_selector.xml which uses colorForeground and alpha
to tint.
3. Use TileColorPicker to grab tile state colors from
tint_color_selector.xml and provide them to customTile and BatteryTile
Bug: 32592245
Test: make -j40 SystemUITests
Change-Id: Ie5fc828c3c6d4e1f192643592c034f462fae5313
* changes:
Made it easier to use updatable Animators
Improved the interpolators of the icon appearing
Modified the way icons merge into the shelf
Fixed a potential heads up crash
Fixed a bug where the notifications would close on back
Bye bye veto button
Only requiring 2 taps for accessibility on lock screen
Fixed a bug where systemui could crash
Introduced the visual stability manager
Removing notifications always immediately when swiping them away
The existing system is extended such that AnimationProperties
can be easier animated and running animations updated.
As a first sample this animates the scale of the
icons in the shelf.
Change-Id: Ic88e8094d53f37ab13f5e9e00796b63d229a5114
Test: runtest systemui
Bug: 32437839
Adds logic to SystemUI that shows a notification alerting the user
that their phone has reached a certain temperature and has throttled
itself in order to cool down.
The logic is controlled by a configuration resource:
R.bool.config_showTemperatureWarning. If false, no action is taken.
When true, PowerUI checks every 30 seconds if the current temp of
HardwarePropertiesManager.DEVICE_TEMPERATURE_SKIN is greater than
the throttling temp of HardwarePropertiesManager.DEVICE_TEMPERATURE_SKIN.
If any one of the temperatures returned is greater, a notification is shown.
Clicking on the notification will show a dialog explaining more details
about what the device is doing in response to the high temperature.
The notification will disappear once the temperature drops below
the throttling temperature.
In order to check the temperature in SystemUI, HardwarePropertiesManager
has been updated to also allow any calls made by callers holding the
signature-level DEVICE_POWER permission.
Test: runtest systemui
Bug: 30995038
Change-Id: I1b3f122341911c68e90c8a49ad35267ac382b356
Notifications used to roam around and reorder whenever
they wished. Those little beasts must be tamed, hence
a new visual stability manager is introduced that
dictates the terms of their interplay.
Test: manual: add heads-up and see if they correctly appear
Test: runtest -x packages/SystemUI/tests/src/com/android/systemui/notification/VisualStabilityManagerTest.java
Bug: 32442500
Change-Id: I8d7596fa7c14e0df68459a77d445f618d517ad51
Shave a few seconds off the tests by adding capabilities to
TestableContext and removing mocks from some large classes
(like Context and PhoneStatusBar)
Test: runtest systemui
Change-Id: Ib9c30cf895bd9f24a5a26e24ffe2498ca6fe2f6e
If a device owner is active, the layout is changed from a
standard AlertDialog with only one string to a custom dialog
that includes information on Device Owners, and VPN and Network Logging,
if enabled.
BUG: 29748723
BUG: 33126622
Test: Manual, CTS-Verifier tests will be added later
Change-Id: I2bfca9d9d02a42d9c3b17683625eda29e9369666
Fixes a crash due to an overzealous state validation.
Change-Id: I363c13206c890a2be56615663f89d80ac256a991
Test: runtest -x packages/SystemUI/tests/src/com/android/systemui/doze/DozeMachineTest.java
Fixes: 33463320
This will allow us to mock package private things. It also happens
to speed up the tests, a lot.
Test: runtest systemui
Change-Id: I48f39ee282a4ea3163c642c8290f302428c4a5f4
Some updates required for tests to pass. Also did a little cleanup
of bad verify matching.
Test: runtest systemui
Change-Id: I75b9f34ab7e9af111dafd5a648840893e1cee434
- Make leak checking faster by converting to fakes
- Requires making clean interfaces for all CallbackControllers
- Integrate leak checking into the TestableContext
Test: runtest systemui
Change-Id: Ic57a06360d01a0323ef26735a543e9d1805459e2
Add the network logging icon in Quick Settings' footer if
network logging is enabled, possible next to the VPN icon.
Quicksettings has to be able to tell that network logging
is enabled, so this CL changes DPM.isNetworkLoggingEnabled() to be
callable from the device owner or from any app with the MANAGE_USERS
permission.
The icon is only a placeholder until the official icon is finished.
CTS Verifier tests will be added when all Network logging UX changes are
done.
BUG: 33126618
BUG: 29748723
Test: runtest --path frameworks/base/packages/SystemUI/tests
Change-Id: Ib35d323605ab11f883a4b6199d1db79b9e53c49b
This CL updates the information shown in Quick Settings when a device
is managed by a Device Owner and adds a "learn more" link that takes
the user to the Enterprise Privacy page in Settings.
Bug: 32692748
Bug: 25779452
Test: runtest --path frameworks/base/packages/SystemUI/tests &
runtest --path frameworks/base/core/tests/coretests
Change-Id: I8cbb6f2bb5c6da29ae581b6dcf7a01b1a4f2af2b
Fixes a class of bugs that arise from requesting to pulse at
inopportune times. Also improves logging such that we know what
state transition failed to validate.
Test: runtest -x frameworks/base/packages/SystemUI/tests/src/com/android/systemui/doze/DozeMachineTest.java
Change-Id: If0bbe003c4805fd180d013dadbc28addc5bb0dd4
Fixes: 32869355
With this CL, a disclosure text is shown on the Keyguard screen when
a Device Owner is managing the device.
Bug: 32692748
Test: runtest --path frameworks/base/packages/SystemUI/tests
Change-Id: I7a48df7dc010c39b2db94fcd26b75313a7ceee08
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
The flag is a bit clunky for most cases, and a method is more
clear.
Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test
android.server.cts.KeyguardTests
Test: cts/hostsidetests/services/activityandwindowmanager/util/run-test
android.server.cts.KeyguardLockedTests
Test: runtest systemui -c
com.android.systemui.keyguard.DismissCallbackRegistryTest
Bug: 30961403
Bug: 27422134
Change-Id: I39de90c7cfecd99350a74f72cd76418e337f2b79