Also auto fix some lint issues.
Bug: 243337537
Test: Manual
Change-Id: I55a393517ae01d6a8c17106a3e7750323838cebb
(cherry picked from commit 67599bce4e)
Merged-In: I55a393517ae01d6a8c17106a3e7750323838cebb
Moving the old restricted page to the new optimization page will happen
in a follow-up CL.
Test: Unit, manual
Bug: 238026672
Change-Id: I5fee9ebe03284a013da6bfca9ada8b166c6af91c
(cherry picked from commit 5ecb1a1d69)
Merged-In: I5fee9ebe03284a013da6bfca9ada8b166c6af91c
There are 3 conditions we need to check.
1. Has locale config file
2. Has locale config file w/o content
3. Has locale config file w/ content
Currently, we do not have condition 2 into the condition group, and we
need to add it into.
Bug: b/243099750
Test: Manual
Change-Id: I58d0275af53031ba4f4c705022017d5143f45795
Panlingual successfully landed. Hence, we can remove the feature flag
right now.
Bug: b/209775925
Test: atest pass
Test: Manual test pass
Change-Id: I464a206027fd63ee1763acaf17d1b6251e839bc0
This cl is a merge of the following 36 cls:
ag/19250259 Duplicate BatteryChartPreferenceController and BatteryChartView into new files for better diff review purpose
ag/19279660 Use Mockito 4.6.1 API for BatteryChartPreferenceControllerV2Test
ag/19267975 Add class BatteryLevelData used to parcel the battery timestamps and levels. It behaves as an interface between UI and data.
ag/19289086 Refactor BatteryChartView X-axis labels. Instead of only timestamps, also support any string[] labels.
ag/19238586 Add interpolation for the history data since last full charge loaded from database.
ag/19331746 Return raw history map in function getHistoryMapSinceLastFullCharge.
ag/19308838 In BatteryChartViewV2, use levels.length-1 to replace mTrapezoidCount. So the chartview could show any number of slots as the given levels length-1.
ag/19332266 Add class BatteryDiffData used to parcel battery usage data
ag/19331467 Refactor Battery Chart View State Controll
ag/19358207 Add DataProcessor to process raw history map for UI.
ag/19332276 Add battery chart view model.
ag/19394744 Update trapezoid validation in battery chart view.
ag/19379730 Support daily and hourly battery chartview.
ag/19428426 Improve X axis labels in battery chart (1)
ag/19446215 Improve X axis labels in battery chart (2)
ag/19394745 Add the async task to compute diff usage data and load labels and icons.
ag/19447624 Support showing app usage list for two battery charts
ag/19500907 Updates battery usage messages from last 24hr to last full charge. (Part1: V2 files)
ag/19505324 Update the selected period message in battery chart
ag/19500905 Updates battery usage messages from last 24hr to last full charge. (Part2: non-V2 files)
ag/19510363 Update usage data for EBS app usage list and App usage detail from 24 hours to last full charge.
ag/19523184 Update usage data for EBS app usage list and App usage detail from 24 hours to last full charge.
ag/19534864 Add margin between battery daily and hourly charts
ag/19491093 Always do interpolation for battery level data in daily chart.
ag/19565630 Avoid NullPointerException when batteryLevelData is null.
ag/19561239 Fix b/241872474 Battery usage page will crash when selecting the last hour chart bar, going to app detail page, and going back
ag/19565633 Fix b/241885070: Unexpected texts moving when going back to battery usage page
ag/19534850 New way to draw battery chart axis labels
ag/19561240 Switch Battery Usage Chart from V1 to V2.
ag/19561338 Switch Battery Usage Chart from V1 to V2.
ag/19600174 Fix b/242254055 Battery usage initial screen improvements (long data loading time)
ag/19600284 Fix b/242252080: Add padding space on the top of the battery chart
ag/19647338 Consider usage map valid even if [all][all] is null.
ag/19634227 Use new content uri everytime to avoid cache
ag/19600177 Fix b/242009481: Refine the battery usage chart timestamp label rule
ag/19647337 Fix b/242809981 Charge battery to 100% when battery usage page opened, the chart will refresh, but the app list isn't refreshed in that case.
Test: manual
Bug: 239491373
Bug: 236101166
Bug: 236101687
Fix: 236101166
Change-Id: I7de8d9dcee14627da10752534991f1ec9f616020
Merged-In: I9142c0d4e00dea3771777ba9aedeab07b635fa1a
The ArrayEquals, ArrayHashCode, ArrayToString, and
ArraysAsListPrimitiveArray errorprone findings were
demoted from errors to warnings. Fix existing
occurrences of them so they can be made errors again.
Bug: 242630963
Test: RUN_ERROR_PRONE=true m javac-check
Change-Id: Ida6513002f8fd845a385924be290b720f06c4748
When DISALLOW_APPS_CONTROL restriction is enabled, users should not be
able to enable/disable apps, clear app caches and clear app data.
The function of reset app preferences will re-enable the disabled apps,
it can let users bypass DISALLOW_APPS_CONTROL to enable an app disabled
by IT admin to see sensitive information.
To fix this vulnerability, we add a check for DISALLOW_APPS_CONTROL
restriction before users reset app preferences. Once the restriction is
enabled, it will show dialog “Blocked by your IT admin” instead.
Bug: 238745070
Test: Verify change by turning on/off DISALLOW_APPS_CONTROL with TestDPC.
Change-Id: Iffee73cf4952b686a78b4c7aaa54747971337d03
(cherry picked from commit 4356c9c653)
Currently Kotlin files cannot build with library app-compat-annotations.
Only one @ChangeId need this library, create separate build target
library Settings-change-ids to solve this issue.
After this cl, Kotlin could be used for Settings App.
Fix: 229037247
Test: make Settings
Change-Id: I4a0d99425c9e6cc2cbc015d2561daa68609ca0fd
The "Pause app activity if unused" SwitchPreference under App info page.
Currently, the preference controller updates the UI state in the
onOpChanged(), which is unnecessary and is called in another non-UI
thread.
Not updating state in onOpChanged() to fix.
Note: This controller implements the LifecycleObserver to handle
lifecycle related logic, but it's actually a no-op before change
If9e48e44267de8e89a5e8f45d256719130936320. So it used to work fine
without the OnOpChangedListener, we can remove it now.
Fix: 227762370
Test: manual
Change-Id: I33f1f55a706407d7b409c3544f9889c45855b34d
This reverts commit d9453bf8c6.
Reason for revert: This introduces a new flicker which doesn't seem good. Will have another solution once all things are ready.
Fixes: 232355879
Change-Id: I0bbc4561ce4fbef36d59de15ae98705a6d81574c
Getting app locale config will spend a lot of time. Removing the log
to prevent getting locale-config for each system app.
Bug: 232557302
Test: Saving about 80% under java stack tracing mode
Change-Id: I2e755286a4e493be7fd73028ade8d190f6571e46
Hide apps Preference summary when a summary is empty
then its title will be vertically centered.
Bug: 229646669
Test: manual visual
Settings -> Apps -> See all apps
Settings -> Notifications -> App settings
Settings -> Storage -> Apps
Settings -> System -> Language & input -> App Languages
Change-Id: I6fceba243e2ccac9ea180b940b571da07e1ba805
Merged-In: I6fceba243e2ccac9ea180b940b571da07e1ba805
Fix the issue that Optimization Mode is not reset when users click the
"Reset apps" button in the setting.
Bug: 222037028
Test: make RunSettingsRoboTests ROBOTEST_FILTER="com.android.settings.fuelgauge" + emulator
Change-Id: I22fb8aa19e284e11882b2920b77b544dee4cc33c
- show a message for app selection of user to avoid any confusion of
searching app.
Bug: b/230689178
Test: see b/230689178
Change-Id: I597e718b81bd7a5019c69dbdfc02f26d7f3af5fd