Support App and System tabs for battery usage breakdown.

design_doc: go/usage-frontend-dd

screen_record: https://drive.google.com/file/d/1I8dnoMf7y9KUg0eVeqLJpHqGGOtaX6_0/view?usp=share_link&resourcekey=0-Mte0-LKN1LULRssg9t7zGg

Bug b/260786962 is also fixed in this cl.

Bug: 258123381
Bug: 260786962
Fix: 258123381
Fix: 260786962
Test: manual
Change-Id: Ifd337331d02dc10c3234c594b2e142bcd459c00f
This commit is contained in:
Zaiyue Xue
2022-11-29 13:46:23 +08:00
parent ec1c9d94f2
commit 00fb008e9c
13 changed files with 1013 additions and 916 deletions

View File

@@ -50,8 +50,7 @@ import java.util.Map;
public class PowerUsageAdvanced extends PowerUsageBase {
private static final String TAG = "AdvancedBatteryUsage";
private static final String KEY_REFRESH_TYPE = "refresh_type";
private static final String KEY_BATTERY_GRAPH = "battery_graph";
private static final String KEY_APP_LIST = "app_list";
private static final String KEY_BATTERY_CHART = "battery_chart";
@VisibleForTesting
BatteryHistoryPreference mHistPref;
@@ -81,7 +80,7 @@ public class PowerUsageAdvanced extends PowerUsageBase {
super.onCreate(icicle);
final Context context = getContext();
refreshFeatureFlag(context);
mHistPref = (BatteryHistoryPreference) findPreference(KEY_BATTERY_GRAPH);
mHistPref = (BatteryHistoryPreference) findPreference(KEY_BATTERY_CHART);
setBatteryChartPreferenceController();
}
@@ -134,9 +133,17 @@ public class PowerUsageAdvanced extends PowerUsageBase {
refreshFeatureFlag(context);
final List<AbstractPreferenceController> controllers = new ArrayList<>();
mBatteryChartPreferenceController =
new BatteryChartPreferenceController(context, KEY_APP_LIST,
getSettingsLifecycle(), (SettingsActivity) getActivity(), this);
new BatteryChartPreferenceController(
context, getSettingsLifecycle(), (SettingsActivity) getActivity());
BatteryUsageBreakdownController batteryUsageBreakdownController =
new BatteryUsageBreakdownController(
context, getSettingsLifecycle(), (SettingsActivity) getActivity(), this);
mBatteryChartPreferenceController.setOnBatteryUsageUpdatedListener(
batteryUsageBreakdownController::handleBatteryUsageUpdated);
controllers.add(mBatteryChartPreferenceController);
controllers.add(batteryUsageBreakdownController);
setBatteryChartPreferenceController();
return controllers;
}
@@ -196,8 +203,10 @@ public class PowerUsageAdvanced extends PowerUsageBase {
public List<AbstractPreferenceController> createPreferenceControllers(
Context context) {
final List<AbstractPreferenceController> controllers = new ArrayList<>();
controllers.add(new BatteryChartPreferenceController(context,
KEY_APP_LIST, null /* lifecycle */, null /* activity */,
controllers.add(new BatteryChartPreferenceController(
context, null /* lifecycle */, null /* activity */));
controllers.add(new BatteryUsageBreakdownController(
context, null /* lifecycle */, null /* activity */,
null /* fragment */));
return controllers;
}