Init the pref summary in onCreate()
The visibility of bottom summary in BatteryHistoryPrefence will
be changed dynamically(charging status + flags). Before this cl,
we only update it in a callback, which makes other preference
may have unnecessary moves.
This cl add init method in onCreate(), which removes the uncessary
preference position moves.
Bug: 65529494
Test: RoboTest still pass
Change-Id: I09d2e26fc3caaeb272422997c16957770cdc1d3f
(cherry picked from commit 65dea0a7b2f44422aa3778b6565f1c4b7e5d9eb1)
diff --git a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java b/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
index fe002b0..d29364d 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageAdvanced.java
@@ -124,6 +124,9 @@
mPackageManager = context.getPackageManager();
mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE);
mBatteryUtils = BatteryUtils.getInstance(context);
+
+ // init the summary so other preferences won't have unnecessary move
+ updateHistPrefSummary(context);
}
@Override
@@ -175,7 +178,13 @@
}
updatePreference(mHistPref);
refreshPowerUsageDataList(mStatsHelper, mUsageListGroup);
+ updateHistPrefSummary(context);
+ BatteryEntry.startRequestQueue();
+ BatteryUtils.logRuntime(TAG, "refreshUI", startTime);
+ }
+
+ private void updateHistPrefSummary(Context context) {
Intent batteryIntent =
context.registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
final boolean plugged = batteryIntent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1) != 0;
@@ -186,9 +195,6 @@
} else {
mHistPref.hideBottomSummary();
}
-
- BatteryEntry.startRequestQueue();
- BatteryUtils.logRuntime(TAG, "refreshUI", startTime);
}
@VisibleForTesting