It's possible that in the future the peak refresh rate setting will have multiple values (e.g. 90, 120). For that reason, we shouldn't convert it to a boolean like in the previous CLs (ag/24604787, ag/24604847).
- set peak/min refresh rate to infinity if it's the highest refresh rate so that when we restore the setting on another device, we also choose the highest refresh rate
- back up peak/min refresh rate and add validators
- upgrade settings in SettingsProvider
- create a utils class - RefreshRateSettingsUtils
Bug: 211737588
Test: atest DisplayModeDirectorTest
Test: atest ForcePeakRefreshRatePreferenceControllerTest
Test: atest PeakRefreshRatePreferenceControllerTest
Test: atest SettingsBackupTest
Test: atest SettingsProviderTest
Test: atest RefreshRateSettingsUtilsTest
Change-Id: Ie1d8cfc76e42c7d98c4a36743463ccaf3ca5d483
Block BatteryUsageBroadcastReceiver when context is work profile.
Bug: 304441610
Fix: 304441610
Test: manual
Change-Id: I91a41d5570e7cacf77a8d126c7700ee4bd766d40
When slotUsageData is null, the UI should update screen time to 0
instead of skipping update.
Bug: 304432148
Bug: 299801782
Bug: 301943900
Fix: 304432148
Fix: 299801782
Fix: 301943900
Test: manual
Change-Id: I25da1abf8ea79305ebf5468977b2a57ce917609f
We only need aggregated summary, but NetworkCycleDataForUidLoader loads
usage for all cycles.
Create AppDataUsageSummaryRepository to reduce the system api call to
only once.
Fix: 304421722
Test: manual - on AppInfoSettings
Test: unit test
Change-Id: I115dfb51dbf77ed3fdde985aa1a968ff7462bebc
refreshStats() needs to be called on worker thread, and all usage places
call refreshStats() after setDuration().
So no need to call refreshStats() in setDuration(), this also prevent
ANRs.
Fix: 241167275
Test: manual - on dev options
Change-Id: I8f4ad57c3843f14f6baee1d06d29eea1341509f1
Replay sensorType once to avoid |contentLayoutId| to be null when
Education is recreated.
Bug: 295206773
Test: manual test - proceed Enroll page and rotate, no crash happens
Change-Id: I0ec49d138ebe74044ba3554b38722984e78ed5d7
On AppDataUsage page, using single source of truth to calculate the
default template, and set title base on the current template.
Fix: 213266028
Fix: 234104784
Test: visual - on AppDataUsage
Test: unit test
Change-Id: I80facca0b000964e901905af51a344a4bc9f498b
Status header (DataUsageSummaryPreference) is not clickable in the
DataUsageSummary.
So remove the legacy logics, to unblock unified default template.
Bug: 234104784
Test: m RunSettingsRoboTests
Change-Id: I3dddf4ec3f84d53fd07afbb62d171942a6acce5d
To improve performance and better organization and testings.
Fix: 240931350
Test: manual - on AppDataUsage
Test: unit test
Change-Id: I277133b55378a3445aceb826d771b14c0fc91e4a
For better organization and testings.
Bug: 240931350
Test: manual - on AppDataUsage
Test: unit test
Change-Id: Ie3d35f5d112cf06cca585c9859624d705fbe2655
This is one action post P0 bug b/301362376.
Bug: 304067689
Bug: 303838369
Fix: 304067689
Fix: 303838369
Test: manual
Change-Id: I8bb6bfe9c3fca78ab19dfbfd2a184b0f92f4ef09
For better organization and testings.
Bug: 240931350
Test: manual - on AppDataUsage
Test: unit test
Change-Id: I77ceeccc7055fcd948fe40d5dfb9cc4a9b9ad2ee