Commit Graph

1451 Commits

Author SHA1 Message Date
Stephane Lee
8fee0917f8 Add adaptive charging to the top level settings menu
Bug: 172009945
Test: Trigger adaptive charging and verify string in menu
Change-Id: I8f600287c38e3992bb884faeb4df3d91570851a0
2020-12-22 11:19:57 -08:00
Wesley.CW Wang
7ccb54feb6 Add Battery Defender feature to Settings
- Adding new tips of Battery Defender, will be presented once battery is overheated
 - Launch Help Center article of battery overheat when clicking Battery Defender tip
 Screenshots: https://screenshot.googleplex.com/7jUibTJANgR6UQ6.png
 	      https://screenshot.googleplex.com/tUj2LLi87SfndBN.png

Bug: 172794045
Bug: 173497281
Bug: 173496188
Test: make RunSettingsRoboTests -j40
Merged-In: Ibb106a5d42cdf6232abf9ddf4b3225bdcebccf4a
Change-Id: Id400cec248a87dd27194d93bdf035e43bbcb7f4f
2020-12-07 08:06:22 +00:00
Wesley.CW Wang
9a6aae5006 Add Battery Defender feature to Settings
- Reupload CL from ag/13108999 to fix the merge conflict
 - Adding new tips of Battery Defender, will be presented once battery is overheated
 - Launch Help Center article of battery overheat when clicking Battery Defender tip
 Screenshots: https://screenshot.googleplex.com/7jUibTJANgR6UQ6.png
 	      https://screenshot.googleplex.com/tUj2LLi87SfndBN.png

Bug: 172794045
Bug: 173497281
Bug: 173496188
Test: make RunSettingsRoboTests -j40
Change-Id: Ibb106a5d42cdf6232abf9ddf4b3225bdcebccf4a
2020-12-01 16:00:49 +08:00
Arc Wang
f81d22ef28 Fix battery optimization display problems
Root cause:
RequestIgnoreBatteryOptimizations adds package in
PowerWhitelistManager#addToWhitelist for intent
Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS.

Settings UI uses PowerAllowlistBackend to check if
an APP is in power allow list. Each UI component should
PowerAllowlistBackend#refreshList() or UI will get
a stale result.

Solution:
This change fixes below display problems by refreshing
allow list from DeviceIdleController service.

1. Battery optimization summary in Battery usage details.
2. Battery optimization list.

BYPASS_INCLUSIVE_LANGUAGE_REASON=I need the object name
to describe the root cause.

Bug: 171064162
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BatteryOptimizationPreferenceControllerTest
      manual
      Switch battery optimazion of a APP and observer the UI display.
Change-Id: I75b269eec5d1b904dcaa71948798f169d4e4ddfa
2020-11-24 16:28:04 +08:00
Mill Chen
467ae5ffc2 Revert "Revert "Specify explicitly FLAG_IMMUTABLE for PendingIntent""
This reverts commit 13ebec46a5.

Reason for revert: To fix the NPE issue

Specify explicitly FLAG_MUTABLE for PendingIntent

This change is to specify explicitly FLAG_MUTABLE to the pendingIntent
since this intent is working with inline reply.

Bug: 172894032
Test: manual test
Change-Id: I5fdcf175307cec5e0e96b33d711221be839e1357
2020-11-21 00:16:58 +08:00
Mill Chen
1ad41f5b39 Merge "Revert "Specify explicitly FLAG_IMMUTABLE for PendingIntent"" 2020-11-20 07:39:41 +00:00
Mill Chen
13ebec46a5 Revert "Specify explicitly FLAG_IMMUTABLE for PendingIntent"
This reverts commit 9cbb4fa4e7.

Reason for revert: this change might cause NPE on Settings app.

Change-Id: I4fd5ec36941c7516a25eaff6d64bcf62e0de7b39
2020-11-20 03:27:35 +00:00
John Li
d9fa3cec61 Merge changes from topic "haptic"
* changes:
  Add haptic feedback for the seekbar in Settings.
  Perform haptic feedback when the seekbar snaps.
2020-11-19 04:54:51 +00:00
Stanley Wang
ee23508b1a Fix NPE in AnomalyDetectionReceiver.
Fixes: 172894032
Test: Settings robotests
Change-Id: I13c1419a43dabc106bc3de9fb5d774ff88b19db5
2020-11-18 16:20:21 +08:00
John Li
db2d3347d7 Add haptic feedback for the seekbar in Settings.
- set HAPTIC_FEEDBACK_MODE_ON_TICKS for Gesture Navigation.
- set HAPTIC_FEEDBACK_MODE_ON_TICKS for Battery Saver.
- set HAPTIC_FEEDBACK_MODE_ON_ENDS for Reduce Bright Colors.
- set HAPTIC_FEEDBACK_MODE_ON_ENDS for Night Light.

Bug: 172900709
Test: manual
Change-Id: I070a0f2e4cf690bf611f62c7a4a2bcef17e08571
2020-11-18 08:08:20 +00:00
Mill Chen
5a347494d2 Update related UI if battery is not present
This change is to update the related UI in the battery page if the
battery is not present. This includes the following updates:
1. Update the summary of battery tile in the Settings homepage
2. Replace the battery level with "Unknown"
3. Replace the summary with help message in the battery page
4. Remove the battery meter icon

Bug: 171368508
Test: verify on an issue device
Change-Id: I892e0d137143160a0bce0c11ce9265120ebb8fd4
Merged-In: I892e0d137143160a0bce0c11ce9265120ebb8fd4
2020-11-06 17:36:27 +08:00
Mill Chen
9cbb4fa4e7 Specify explicitly FLAG_IMMUTABLE for PendingIntent
The existing pending intent in the BatteryTipUtils has been specified
FLAG_UPDATE_CURRENT. This change is to add explicitly FLAG_IMMUTABLE
to the pending intent.

Fixes: 171506726
Test: build pass, robotest
Change-Id: Ib82ddb45e05b492eef300f2ec064803d768419d0
2020-11-03 13:40:21 +08:00
Evan Laird
c17cf8769d Use ColorMatrixColorFilter in batterymeterview
the old PorterDuff color filter didn't allow us to pass through the
drawable's alpha.

Test: manual
Bug: 162901879
Change-Id: I1ad7d9a0177c7a25d1c6a5a8437c27f60390f45e
2020-10-28 22:26:43 +00:00
TreeHugger Robot
6f5b308d54 Merge "Use ColorMatrixColorFilter in batterymeterview" 2020-10-28 20:35:02 +00:00
Evan Laird
4393d200b6 Use ColorMatrixColorFilter in batterymeterview
the old PorterDuff color filter didn't allow us to pass through the
drawable's alpha.

Test: manual
Bug: 162901879
Change-Id: I1ad7d9a0177c7a25d1c6a5a8437c27f60390f45e
2020-10-28 14:21:30 -04:00
Mill Chen
ad99e2ef38 Update related UI if battery is not present
This change is to update the related UI in the battery page if the
battery is not present. This includes the following updates:
1. Update the summary of battery tile in the Settings homepage
2. Replace the battery level with "Unknown"
3. Replace the summary with help message in the battery page
4. Remove the battery meter icon

Bug: 171368508
Test: verify on an issue device
Change-Id: I892e0d137143160a0bce0c11ce9265120ebb8fd4
2020-10-23 23:35:15 +08:00
Yanting Yang
9aa4a5463f Remove subtitles for the homepage IA
Remove the summary of the homepage IA if silky home enabled.

Fixes: 170933968
Test: robotest & visual with turning on/off silky home
Change-Id: I502b6590cece9b80e9923109fe0582cc4d9a1c56
2020-10-20 23:54:03 +08:00
Edgar Wang
a8742aa7ab Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference

Bug: 161896447
Test: robotest & manual
Change-Id: Ia8625091a107fc3fb652d3ba3f75ea3cc1a8d9f5
2020-08-12 11:29:07 +08:00
Jeffrey Carlyle
f22059f21f Add BatteryStatusFeatureProvider
This allows the battery header status line to be overridden.

Bug: 150239363
Test: implemented provider and changed status line text
Signed-off-by: Jeffrey Carlyle <jcarlyle@google.com>
Change-Id: I05bedbee641f087de5ee1b25a00724ce2de51f87
Merged-In: I05bedbee641f087de5ee1b25a00724ce2de51f87
2020-08-11 13:49:27 -07:00
Edgar Wang
dea18dff70 Merge "Update language to comply with Android's inclusive language guidance" 2020-08-06 06:31:49 +00:00
Dmitri Plotnikov
ea27b5d092 Merge "Adjust for changing BatteryStats.Uid API" 2020-08-05 18:15:16 +00:00
TreeHugger Robot
6daf67a792 Merge "Update language to comply with Android's inclusive language guidance" 2020-08-04 15:40:55 +00:00
Edgar Wang
c2e4513fb6 Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference

Bug: 161896447
Test: robotest & manual
Change-Id: I36829e0055437dab79d9e5339ac002a87a4b874f
2020-08-04 18:12:48 +08:00
Edgar Wang
f480c1c3fc Update language to comply with Android's inclusive language guidance
Refactor PowerWhitelistBackend to PowerAllowlistBackend
See https://source.android.com/setup/contribute/respectful-code for reference

Bug: 161896447
Test: robotest & manual
Change-Id: I3d56e6dac1515b49a89f59c34edf403ecb891420
2020-08-04 15:47:57 +08:00
Edgar Wang
41711581d6 Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference

Bug: 161896447
Test: robotest & manual
Change-Id: I1eaa45b576913e57ad9728e3a6fc892c4cf9fdc7
2020-08-04 15:33:15 +08:00
Edgar Wang
8829e515ca Update language to comply with Android's inclusive language guidance
See https://source.android.com/setup/contribute/respectful-code for reference

Bug: 161896447
Test: robotest & manual
Change-Id: Ibe64a68d7bddf84780dfac33555c097ff55c97a8
2020-07-30 12:54:27 +08:00
Dmitri Plotnikov
e99f810c28 Adjust for changing BatteryStats.Uid API
Test: flash the build and go to Settings/Battery
Change-Id: Iaf57d98bde7ac4978bcd71f0772970e1446e845d
2020-07-17 19:21:32 -07:00
Jeffrey Carlyle
4e2071ae78 Add BatteryStatusFeatureProvider
This allows the battery header status line to be overridden.

Bug: 150239363
Test: implemented provider and changed status line text
Signed-off-by: Jeffrey Carlyle <jcarlyle@google.com>
Change-Id: I05bedbee641f087de5ee1b25a00724ce2de51f87
2020-06-18 01:50:36 -07:00
TreeHugger Robot
f42a7a56d9 Merge "Suppress battery saver suggestion notification" into rvc-dev am: 62ec08f7bd am: b607801762 am: 2ba19aba50 am: 64c98414af
Original change: undetermined

Change-Id: I6f9d3da311659d8f3e8c9345b0e8aa99c393952b
2020-06-02 08:13:37 +00:00
Mill Chen
418c85f139 Suppress battery saver suggestion notification
When users turn on battery saver manually more than 3 times, the "Tap to
schedule Battery Saver" notification will suggest users to enable
scheduling battery saver. But this notification is still shown if users
have already turned on scheduling battery saver, which is caused by no
mechanism to suppress this notification.

Solution:
Adding a mechanism to suppress battery saver suggestion if users
scheduled battery saver.

Bug: 147862112
Test: robotests
Change-Id: I8290d76dac09104e64fb98b8a9f4d783a8177d7c
2020-06-02 13:50:48 +08:00
TreeHugger Robot
dc480fe4c4 Merge "Disable anomaly app detection for battery" into rvc-dev am: 90331c0f20 am: ef95b4781b am: 424c5ad859 am: 51b53dd01f
Change-Id: If786ba1387136708d83bc649cbbaf3a50cc08039
2020-05-29 07:37:53 +00:00
Tsung-Mao Fang
850bafbf58 Disable anomaly app detection for battery
This feature is introducing some false positive cases,
so we're going to disable this feature now.
Battery team will make it more precise in the next release.

Test: Run robotest. See there's no related card in battery page.
Fix: 156369998
Change-Id: I2dfe2f772e561b768af6af45ac92fdc65c1fafee
2020-05-28 20:14:32 +08:00
Kweku Adams
eb4786ed70 Migrate to PowerWhitelistManager.
In preparation for DeviceIdle mainlining, we have to define stable APIs
for other modules and the rest of the system to use. This migrates to
the stable PowerWhitelistManager API.

Bug: 142420609
Bug: 144864180
Test: Android builds
Change-Id: Ic1006c03f3b73c2855fd127ee2cd7fff676caf3e
2020-05-15 10:42:40 -07:00
Kweku Adams
bddd652bb0 Hide RESTRICTED bucket from list when off.
Hide the RESTRICTED bucket from the standby list if it's been disabled
since developers won't be able to use it.

Bug: 155670438
Test: manual check toggling settings value
Change-Id: I0e31764ce7f1ccb108905aa2f2be1c61405f1726
2020-05-06 08:30:10 -07:00
Jason Chiu
819abf7f87 Refine metrics log in infrastructure
- Add interfaces to set/get metrics category in BasePreferenceController
  for descendants having a chance to get it.
- Set metrics category in DashboardFragment
- Automatically log metrics in onPreferenceChange of
  TogglePreferenceController
- Add support for TwoStateButtonPreference in TogglePreferenceController
  to make the preference generic

Bug: 137559984
Test: robotest
Change-Id: Ia7e0d24a3db1991b18e0286d9894570fa71247a3
2020-04-07 14:08:39 +08:00
Jason Chiu
26343b82ee Add metric logs for special cases in Display and Battery page
Bug: 137559984
Test: robotest
Change-Id: I60f6237ac2c533306879f46ee4c25d54002cf0e9
2020-03-26 11:31:39 +08:00
Kweku Adams
a7e58d7732 Change to public POWER_SAVE_MODE_CHANGED broadcast.
The POWER_SAVE_MODE_CHANGING broadcast is sent at the same time as the
POWER_SAVE_MODE_CHANGED broadcast. Since broadcasts are asynchronous,
there's no reason to have both, so we're simplifying down to just one.

Bug: 79580230
Test: atest BatterySaverReceiverTest
Change-Id: Ib27fc91bc23126f58532e534575d912e3b72ac43
2020-03-16 12:56:46 -07:00
Sunny Shao
3d3757683c Update the OWNER files
Bug: 151179432
Test: manual review
Change-Id: I2bfd917c2bea2d71303ed9aecf29d850f12eec3d
2020-03-11 16:45:14 +08:00
Edgar Wang
4af4f276bd Merge "Make the fragment title can’t searchable" 2020-02-07 08:07:01 +00:00
Raff Tsai
1aa958f588 Merge "Sync lastest SettingsLib interface" 2020-02-07 00:53:12 +00:00
Edgar Wang
0934babbfc Make the fragment title can’t searchable
we shouldn't take users so deep into the settings IA because it's easy
to feel lost in settings after clicking on a result without additional
context.

Bug: 143055215
Test: robotest & manual
Change-Id: I337cb5ead31e1e4e7bf9be78132e90630f83ee43
2020-02-06 19:07:11 +08:00
Kweku Adams
24fffd106d Add RESTRICTED bucket to Developer Options.
Add the RESTRICTED to the Standby Apps section in Developer Options so
that developers can easily test the behavior of their app in the bucket.

Bug: 145551233
Test: flash and use UI to put app into RESTRICTED bucket
Change-Id: I786f55a08c1fc53ace2031a635396a0529b2b772
2020-01-23 10:24:01 -08:00
Edgar Wang
e19ee9a01f Revert "Settings search - Navigate user to exact page"
This reverts commit 08f2a58459.

Reason for revert: design changed, we decide to take the user to
the entry after clicking on a search result.
It's opposite with what we did, so we revert related CL first.

Test: robotest

Change-Id: Iadb9a94a7ef7838be34a54499e2d934d6396c336
2020-01-16 14:07:38 +08:00
Raff Tsai
376ce87f00 Fix battery tip app name is empty
- Top waste app is linux process not android process. Therefore
it doesn't contains application label. Fixed by return the process
name if packages label is empty.

Fixes: 146558570
Test: follow the steps:
1. adb shell settings put global battery_tip_constants test_low_battery_tip=true
2. Unplug usb. Go to Settings -> Battery, it should show an item
"Phone used more than usual"
3. Click "phone used more than usual" item, all the items should
have title and icon.

Change-Id: I85c232bc6a048b3104c4fce0fcec2b944e8ac1b4
2020-01-06 01:14:21 +08:00
Raff Tsai
791ad4d568 Sync lastest SettingsLib interface
Test: rebuild
Change-Id: I3131f701deb47acae9f19436cbe66e077ea004ee
2019-12-26 11:58:38 +08:00
Edgar Wang
08f2a58459 Settings search - Navigate user to exact page
- remove duplicate index preference
- default set searchable = false when the preference has fragment
- make some fragments indexable

Bug: 143057584
Test: robotest & manual

Change-Id: I4d64f6106d2f92f0a45e8c7e26388677f593f412
2019-12-24 21:04:11 +08:00
Roshan Pius
c68aab5f56 wifi: Use constants from BatteryStatsManager
Bug: 146009681
Test: Compiles
Change-Id: I99cf476ab0c5e8ad33ef6e1a0f586f7941b5af28
2019-12-12 05:56:05 -08:00
Tsung-Mao Fang
cb8dbbeac2 Hide summary for Google app in battery usage
"Google" app is quicksearchbox which always has a foreground service running.
This causes it shows a huge usage time.
So, we make the summary invisible now.

Test: Rebuild and visual
Change-Id: Iba8083cc058e1d391dc20610fb6eb140c2c25350
Fix: 144063003
2019-12-10 14:20:29 +08:00
Yi-Ling Chuang
430c16c012 Make some existing slices public.
Only PreferenceControllers with isPublicSlice() set to true are exposed
to other apps. Others will be Settings only.

Bug: 141088937
Test: robotests
Change-Id: I5934e89bc1b268fdd44acd630621fa46987728ff
2019-11-28 14:32:15 +08:00
Raff Tsai
84327f6aa3 Add storage_summary_donut above ProfileSelectStorageFragment
- Modify ProfileSelectFragment to support add preference xml in the
top, and tabLayout below the preferences. Base preference layout is
dummy_preference_screen.xml which contains no preference.
ProfileSelectStorageFragment contains StorageSummaryDonutPreference
above the tabLayout.
- Make StorageSummaryDonutPreferenceController self workable without
StorageDashboardFragment dependence.
- Rename inactive_apps.xml to dummy_preference_screen.xml
- Move ShadowPrivateStorageInfo from LowStorageSliceTest

Bug: 141601408
Test: manual
Change-Id: Ide12840dc81bb104f328e230ecda5d35bba01d7a
2019-11-18 18:18:29 +08:00