Commit Graph

1268 Commits

Author SHA1 Message Date
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
timhypeng
c71f996da9 Battery icon is too large
-sync layout from SystemUI

Bug: 141139595
Test: make -j42 RunSettingsRoboTests
Change-Id: I5e165e953682fcfdebf0d06475bb1abd171684d9
2019-11-14 10:55:54 +08:00
Raff Tsai
1ade809ff9 Filter invalid uid from Battery list
- Normally uid is start from 0. That was a bug in framework during
some time period, and was not reproduced later. We just remove this
kind of invalid item from UI.

Fixes: 141404334
Test: manual
Change-Id: I964a8b8af18ac6a5d8d2dea89722ea466e27e6ad
2019-11-08 08:30:38 +00:00
TreeHugger Robot
d4959ee116 Merge "Execute getting battery info on the parallel executor" 2019-09-27 11:18:39 +00:00
Jason Chiu
86e98bf448 Execute getting battery info on the parallel executor
Getting battery info is time consuming and may block other tasks in the
same background thread.

Executing it on the parallel executor can improve app launch performance.

Bug: 141694556
Test: robotest
Change-Id: I55517e03961929c2b288e230ed474d45915d63fd
2019-09-27 17:33:08 +08:00
Raff Tsai
966fa01423 Use SettingsLib Indexable
- Use SettingsLib Indexable
- Directly use resource id in getPreferenceScreenResId

Bug: 135053028
Test: roboletric
Change-Id: I05f493b55e8b6e2091301e9231ba5615215618e6
2019-09-25 18:24:56 +08:00
Raff Tsai
ac3e0d0988 Directly use BaseIndexableProvider
- Add function getXmlResourceId, Fragments don't need to write
xml resource id twice.
- Remove getPreferenceControllers from Indexable.java. Because it will
move to SettingsLib later for other apps which don't need this function

Bug: 135053028
Test: robolectric
Change-Id: I1e74519aecdea3dde64a5aea79f08d766dbc0003
2019-09-24 00:35:52 +08:00
Raff Tsai
1f30b1cd67 Merge similar BaseSearchIndexProvider code together
Bug: 135053028
Test: robolectric, check search_index.db contains the same items
Change-Id: If3c18a170b0e671690df1fdf26e59a421d2c48cd
2019-09-12 11:09:09 +08:00
Raff Tsai
8291671f97 Fix testcase error and UI refresh issue
Restricted App list can be update in RestrictedAppDetails page and
go back to SmartBatterySettings page without update the App list.
We need to update the list in updateState() again.

Fixes: 140585454
Test: manual, robolectric
Change-Id: I48a197351ffb9b07490f1de7ba1f7417102458a2
2019-09-09 12:00:21 +08:00
Raff Tsai
577240642d Fix Battery usage page refresh issue
restartBatteryStatsLoader made a loader existed in fragment. onStart
will resume the loader. onResume registers mBatteryBroadcastReceiver
will caused the loader activated the second time. We move
restartBatteryStatsLoader to onStart can reduce the loader runs only
once.

Fixes: 140488811
Test: manual
Change-Id: I4cac574ea8e9c07c1a9df48a57fb8140d5687b21
2019-09-05 14:37:21 +08:00
Raff Tsai
8641986401 Prevent UI jank
Move hide preference logic to getAvailabilityStatus, it can remove
the preference before onresume.

Fixes: 140366463
Test: manual, robolectric
Change-Id: Ie11b5357b1e9340b30b8f19eac60c479cdb7687e
2019-09-03 14:16:27 +08:00
TreeHugger Robot
34b1e00ca7 Merge "Fix Battery page animation" 2019-08-29 03:41:25 +00:00
TreeHugger Robot
2e010612ee Merge "Don't allow Settings to change its own standby bucket." 2019-08-26 23:57:35 +00:00
Varun Shah
778d38a551 Don't allow Settings to change its own standby bucket.
When on the "Standby apps" developer options screen, the Settings app
will be greyed out, indicating that its standby bucket cannot be
changed.

Manual Test 1: Go to the "Standby apps" screen in developer options and
observe that the Settings app is greyed out.
Manual Test 2: Turn off "Adaptive Battery" in Settings and then go to
the "Standby apps" screen in developer options - observe that the
Settings app is greyed out.

Bug: 132922935
Test: manual (listed above)
Change-Id: Idb29e6105024feacc270867e46156fc6a0396b01
2019-08-26 14:46:45 -07:00
TreeHugger Robot
8d59885bc2 Merge "Use FooterPreference in xml explicitly" 2019-08-19 14:00:45 +00:00
Raff Tsai
648ada031d Fix Battery page animation
TextView summary1 has default height 2 line. If the content is longer
than 2 line, the TextView increases itself which causes the animation.
By increasing minLines to 3, it can avoid the animation. And remove
summary2 because it is only for debug purpose, the debug information
can be merged to summary1.

Fixes: 139554919
Test: visual, make RunSettingsRoboTests
Change-Id: I167ac87c9bd83035e00d4991961599e76f4f69e1
2019-08-19 16:47:53 +08:00
Sunny Shao
d04c885ff9 Use FooterPreference in xml explicitly
Removed the FooterPreferenceMixin from the RestrictedAppDetails page.

Fixes: 139641334
Test: manual test
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.fuelgauge
Change-Id: I6a4e56725d88353bde361de1dfff4a2a449c842c
2019-08-19 11:50:06 +08:00
Sunny Shao
513cc9561c Use FooterPreference in xml explicitly
Removed the FooterPreferenceMixin from the SmartBatterySettings page.

Fixes: 139514284
Test: manual test
Change-Id: If9aee92916d02b731bdb71e9c95237e1c3ff7f1d
2019-08-16 17:14:57 +08:00
Sunny Shao
a3961cd6d7 Use FooterPreference in xml explicitly
Removed the FooterPreferenceMixin from the PowerUsageSummary page.

Fixes: 139515012
Test: manual test
Change-Id: I29af8ad4df303edeeb511057d53d38c847f0ff21
2019-08-16 16:49:59 +08:00
Raff Tsai
946441ca27 Learn mode link is not in footer text
Use wrong footerPreference key.

Change-Id: Ic88b4bf9cf336474231329aa2154242d3f95b91a
Fix: 139086150
Test: visual
2019-08-09 17:21:18 +08:00
TreeHugger Robot
87ecb5deed Merge "Import RadioButtonPreference from SettingsLib" 2019-08-03 02:52:36 +00:00
Raff Tsai
1ebf80446f Fix arabic language % character in wrong place
info.batteryPercentString is applied language format.
We don't need to format it again in BidiFormatter.

Fixes: 136699046
Test: visual
Change-Id: Ie89823c23fd23bd6a9a97821f3062cad4dfb3709
2019-08-01 18:31:13 +08:00
Raff Tsai
71a37d138b Import RadioButtonPreference from SettingsLib
Bug: 138620011
Test: manual, robolectric
Change-Id: I3b8a2be021a1b4a07aae61483f2329b7a5bd4655
2019-08-01 07:16:55 +00:00
Raff Tsai
58cd356273 Remove deprecated code
Fixes: 137106225
Test: rebuild
Change-Id: I7c757fc39197d2b6166fc8cbd9ad585ba16a7e2e
2019-07-16 10:35:04 +08:00
Raff Tsai
5fe166075f Remove deprecated code
Fixes: 137106225
Test: rebuild
Change-Id: If978f765fd1f6ec0fded1eb0f7e93e386c5d3163
2019-07-11 11:15:39 +08:00
TreeHugger Robot
2ab371b13a Merge "TODO about BatteryStats.STATS_SINCE deprecation" 2019-07-09 19:41:54 +00:00
Lei Yu
09c60c349f Merge "Fix issues in battery usage accounting" into qt-dev am: 2148c1a207 am: fad8cec592
am: a22bf1cd8b

Change-Id: Iaadee52c55098da5941dab5edfa1087dac7822c3
2019-05-31 11:10:26 -07:00
Lei Yu
2148c1a207 Merge "Fix issues in battery usage accounting" into qt-dev 2019-05-31 17:17:51 +00:00
Fan Zhang
ec81d6121e Override 2 getSliceUri() instance to return platform slice
Bug: 126222433
Test: robotest
Change-Id: I3f9c8202d9b75b24b80ebcf385abc95f8df851e2
2019-05-30 16:50:43 -07:00
Lei Yu
c89ba29e92 Fix issues in battery usage accounting
1. In High usage dialog, show top apps based on battery usage, not app
time.
2. Refactor the check for hidden system modules into ShouldHideSipper,
however don't smear it, this is also the current logic before this CL.

Bug: 133445008
Test: RunSettingsRoboTests
Change-Id: I851a1c9ef9b79a934ba0501cd96001f2e450bda4
2019-05-29 13:57:04 -07:00
Salvador Martinez
12731cce3d Break infinite refresh loop in battery estimates
There was an infinite loop that could occur in BatterySaverUtils
what was caused by battery saver utils updating the battery estimate
which then told the page to check for an estimate and then it would
repeat from there. This cleans up the logic in that loop slightly
to prevent it from refreshing more than is necessary.

Test: atest BatteryUtilsTest
Bug: 132751712
Change-Id: I918484747ecd9735315570ad608489e0f61d7578
2019-05-17 15:36:55 -07:00
TreeHugger Robot
cbd925bf73 Merge "Clear preferences when dialog acknowledged and increase order" into qt-dev 2019-05-08 21:12:52 +00:00
Salvador Martinez
fb940feebf Clear preferences when dialog acknowledged and increase order
This CL makes it so that the order on the seekbar is increased
to a very large value to ensure it gets added to the end in the
case where a refresh is triggered due to the first time battery
saver dialog. Additionally it clears the preferences on the screen
when we receive confirmation to ensure that no caching can cause
the seekbar ot show up on top of other preferences.

Test: atest BatterySaverScheduleSeekBarControllerTest
Bug: 132107662
Change-Id: I26bf2772ed7135daa4879bca17e0ecfc22a2d0dd
2019-05-08 12:28:43 -07:00
Lei Yu
b47b99ed38 Add null check when restart batteryinfo loader
Even though we unregister contentObserver in onPause and register
in onResume, callback still be called while fragment is detached.

Anyhow add a null check in settings to stop crash

Fixes: 131905853
Test: RunSettingsRoboTests
Change-Id: I8c0c2c04c3b8d942e0c97cf71a7d3e735a24b467
2019-05-08 11:12:55 -07:00