Fix to show correct percentage in battery details.
Change-Id: I5745ca4dc6330b044e02e94630cf3d2c3e1266af
This commit is contained in:
@@ -80,15 +80,16 @@ public class PowerUsageDetail extends Fragment implements Button.OnClickListener
|
|||||||
};
|
};
|
||||||
|
|
||||||
public static void startBatteryDetailPage(
|
public static void startBatteryDetailPage(
|
||||||
SettingsActivity caller, BatteryStatsHelper helper, BatteryEntry entry,
|
SettingsActivity caller, BatteryStatsHelper helper, int statsType, BatteryEntry entry,
|
||||||
boolean showLocationButton) {
|
boolean showLocationButton) {
|
||||||
// Initialize mStats if necessary.
|
// Initialize mStats if necessary.
|
||||||
helper.getStats();
|
helper.getStats();
|
||||||
|
|
||||||
|
final int dischargeAmount = helper.getStats().getDischargeAmount(statsType);
|
||||||
Bundle args = new Bundle();
|
Bundle args = new Bundle();
|
||||||
args.putString(PowerUsageDetail.EXTRA_TITLE, entry.name);
|
args.putString(PowerUsageDetail.EXTRA_TITLE, entry.name);
|
||||||
args.putInt(PowerUsageDetail.EXTRA_PERCENT, (int)
|
args.putInt(PowerUsageDetail.EXTRA_PERCENT, (int)
|
||||||
Math.ceil(entry.sipper.value * 100 / helper.getTotalPower()));
|
((entry.sipper.value * dischargeAmount / helper.getTotalPower()) + .5));
|
||||||
args.putInt(PowerUsageDetail.EXTRA_GAUGE, (int)
|
args.putInt(PowerUsageDetail.EXTRA_GAUGE, (int)
|
||||||
Math.ceil(entry.sipper.value * 100 / helper.getMaxPower()));
|
Math.ceil(entry.sipper.value * 100 / helper.getMaxPower()));
|
||||||
args.putLong(PowerUsageDetail.EXTRA_USAGE_DURATION, helper.getStatsPeriod());
|
args.putLong(PowerUsageDetail.EXTRA_USAGE_DURATION, helper.getStatsPeriod());
|
||||||
|
@@ -152,7 +152,7 @@ public class PowerUsageSummary extends PreferenceFragment {
|
|||||||
PowerGaugePreference pgp = (PowerGaugePreference) preference;
|
PowerGaugePreference pgp = (PowerGaugePreference) preference;
|
||||||
BatteryEntry entry = pgp.getInfo();
|
BatteryEntry entry = pgp.getInfo();
|
||||||
PowerUsageDetail.startBatteryDetailPage((SettingsActivity) getActivity(), mStatsHelper,
|
PowerUsageDetail.startBatteryDetailPage((SettingsActivity) getActivity(), mStatsHelper,
|
||||||
entry, true);
|
mStatsType, entry, true);
|
||||||
return super.onPreferenceTreeClick(preferenceScreen, preference);
|
return super.onPreferenceTreeClick(preferenceScreen, preference);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -238,13 +238,7 @@ public class PowerUsageSummary extends PreferenceFragment {
|
|||||||
addNotAvailableMessage();
|
addNotAvailableMessage();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
int dischargeAmount = mStatsType == BatteryStats.STATS_SINCE_CHARGED
|
final int dischargeAmount = mStatsHelper.getStats().getDischargeAmount(mStatsType);
|
||||||
? mStatsHelper.getStats().getHighDischargeAmountSinceCharge()
|
|
||||||
: (mStatsHelper.getStats().getDischargeStartLevel()
|
|
||||||
- mStatsHelper.getStats().getDischargeCurrentLevel());
|
|
||||||
if (dischargeAmount < 0) {
|
|
||||||
dischargeAmount = 0;
|
|
||||||
}
|
|
||||||
mStatsHelper.refreshStats(BatteryStats.STATS_SINCE_CHARGED, UserHandle.myUserId());
|
mStatsHelper.refreshStats(BatteryStats.STATS_SINCE_CHARGED, UserHandle.myUserId());
|
||||||
List<BatterySipper> usageList = mStatsHelper.getUsageList();
|
List<BatterySipper> usageList = mStatsHelper.getUsageList();
|
||||||
for (int i=0; i<usageList.size(); i++) {
|
for (int i=0; i<usageList.size(); i++) {
|
||||||
|
Reference in New Issue
Block a user