Avoid showing "0 minute" in the charge time label
Remove the charge to full time label if its value is invalid
https://screenshot.googleplex.com/5psbvFpcm2CFdRB
Test: make test RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.fuelgauge.*
Fix: 278740808
Change-Id: I765cdcdee8525adb2583d5950bc646c604c744de
diff --git a/src/com/android/settings/fuelgauge/BatteryInfo.java b/src/com/android/settings/fuelgauge/BatteryInfo.java
index d164e93..9824044 100644
--- a/src/com/android/settings/fuelgauge/BatteryInfo.java
+++ b/src/com/android/settings/fuelgauge/BatteryInfo.java
@@ -299,9 +299,10 @@
(double) PowerUtil.convertUsToMs(info.remainingTimeUs), false /* withSeconds */,
true /* collapseTimeUnit */);
int resId = R.string.power_charging_duration;
- info.remainingLabel = context.getString(R.string.power_remaining_charging_duration_only,
- timeString);
- info.chargeLabel = context.getString(resId, info.batteryPercentString, timeString);
+ info.remainingLabel = chargeTimeMs <= 0 ? null : context.getString(
+ R.string.power_remaining_charging_duration_only, timeString);
+ info.chargeLabel = chargeTimeMs <= 0 ? info.batteryPercentString
+ : context.getString(resId, info.batteryPercentString, timeString);
} else if (dockDefenderMode == BatteryUtils.DockDefenderMode.FUTURE_BYPASS) {
// Dock defender will be triggered in the future, charging will be optimized.
info.chargeLabel = context.getString(R.string.power_charging_future_paused,