Refactor background optimization mode in Power Usage Detail page.
[Screenshot]: before: https://screenshot.googleplex.com/6m5jYWHofY2pFov after: [App battery usage] - [normal] https://screenshot.googleplex.com/7aurWk7cHKaWds7 - [always unrestried/optimized] https://screenshot.googleplex.com/3rGAh4ccUYTKBAr [Allow Background usage] - [Restricted]: https://screenshot.googleplex.com/MPXjQe5kPWw2nhr - [Optimized]: https://screenshot.googleplex.com/6w4zTT6r34APnGc - [Unrestricted]: https://screenshot.googleplex.com/97FgvHWMrwASqYH Bug: 302063050 Bug: 306295660 Bug: 308359833 Test: manual Change-Id: I3237d015549fe26e62d6d68c13403cc2cbdf0017
This commit is contained in:
@@ -17,7 +17,6 @@
|
||||
package com.android.settings.fuelgauge;
|
||||
|
||||
import android.content.Context;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
import androidx.preference.Preference;
|
||||
@@ -31,8 +30,10 @@ public class OptimizedPreferenceController extends AbstractPreferenceController
|
||||
|
||||
private static final String TAG = "OPTIMIZED_PREF";
|
||||
|
||||
@VisibleForTesting String KEY_OPTIMIZED_PREF = "optimized_pref";
|
||||
@VisibleForTesting BatteryOptimizeUtils mBatteryOptimizeUtils;
|
||||
@VisibleForTesting
|
||||
static final String KEY_OPTIMIZED_PREF = "optimized_preference";
|
||||
@VisibleForTesting
|
||||
BatteryOptimizeUtils mBatteryOptimizeUtils;
|
||||
|
||||
public OptimizedPreferenceController(Context context, int uid, String packageName) {
|
||||
super(context);
|
||||
@@ -46,24 +47,12 @@ public class OptimizedPreferenceController extends AbstractPreferenceController
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
if (mBatteryOptimizeUtils.isDisabledForOptimizeModeOnly()) {
|
||||
Log.d(TAG, "disable preference for " + mBatteryOptimizeUtils.getPackageName());
|
||||
preference.setEnabled(true);
|
||||
((SelectorWithWidgetPreference) preference).setChecked(true);
|
||||
return;
|
||||
}
|
||||
preference.setEnabled(mBatteryOptimizeUtils.isSelectorPreferenceEnabled());
|
||||
|
||||
if (mBatteryOptimizeUtils.getAppOptimizationMode()
|
||||
== BatteryOptimizeUtils.MODE_OPTIMIZED) {
|
||||
Log.d(TAG, "is optimized states");
|
||||
((SelectorWithWidgetPreference) preference).setChecked(true);
|
||||
} else {
|
||||
((SelectorWithWidgetPreference) preference).setChecked(false);
|
||||
if (mBatteryOptimizeUtils.isSystemOrDefaultApp()) {
|
||||
Log.d(TAG, "is system or default app, disable pref");
|
||||
preference.setEnabled(false);
|
||||
}
|
||||
}
|
||||
final boolean isOptimized = mBatteryOptimizeUtils.isDisabledForOptimizeModeOnly()
|
||||
|| mBatteryOptimizeUtils.getAppOptimizationMode()
|
||||
== BatteryOptimizeUtils.MODE_OPTIMIZED;
|
||||
((SelectorWithWidgetPreference) preference).setChecked(isOptimized);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
Reference in New Issue
Block a user