Reprioritize AOD battery info

- Make charge limited string higher than charged string

Bug: 198382005
Test: atest SystemUITests
Change-Id: I65125184a9cc8dd4983121f72dc68184125dc398
This commit is contained in:
Wesley.CW Wang
2021-09-06 18:34:30 +08:00
parent 9ca7052183
commit c67c64f4a0
2 changed files with 23 additions and 6 deletions

View File

@@ -723,15 +723,13 @@ public class KeyguardIndicationController {
}
protected String computePowerIndication() {
if (mPowerCharged) {
return mContext.getResources().getString(R.string.keyguard_charged);
}
int chargingId;
String percentage = NumberFormat.getPercentInstance().format(mBatteryLevel / 100f);
if (mBatteryOverheated) {
chargingId = R.string.keyguard_plugged_in_charging_limited;
String percentage = NumberFormat.getPercentInstance().format(mBatteryLevel / 100f);
return mContext.getResources().getString(chargingId, percentage);
} else if (mPowerCharged) {
return mContext.getResources().getString(R.string.keyguard_charged);
}
final boolean hasChargingTime = mChargingTimeRemaining > 0;
@@ -759,6 +757,7 @@ public class KeyguardIndicationController {
: R.string.keyguard_plugged_in_wireless;
}
String percentage = NumberFormat.getPercentInstance().format(mBatteryLevel / 100f);
if (hasChargingTime) {
String chargingTimeFormatted = Formatter.formatShortElapsedTimeRoundingUpToMinutes(
mContext, mChargingTimeRemaining);

View File

@@ -639,7 +639,7 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase {
}
@Test
public void onRefreshBatteryInfo_fullChargedWithOverheat_presentCharged() {
public void onRefreshBatteryInfo_fullChargedWithOverheat_presentChargingLimited() {
createController();
BatteryStatus status = new BatteryStatus(BatteryManager.BATTERY_STATUS_CHARGING,
100 /* level */, BatteryManager.BATTERY_PLUGGED_AC,
@@ -649,6 +649,24 @@ public class KeyguardIndicationControllerTest extends SysuiTestCase {
mController.getKeyguardCallback().onRefreshBatteryInfo(status);
mController.setVisible(true);
verifyIndicationMessage(
INDICATION_TYPE_BATTERY,
mContext.getString(
R.string.keyguard_plugged_in_charging_limited,
NumberFormat.getPercentInstance().format(100 / 100f)));
}
@Test
public void onRefreshBatteryInfo_fullChargedWithoutOverheat_presentCharged() {
createController();
BatteryStatus status = new BatteryStatus(BatteryManager.BATTERY_STATUS_CHARGING,
100 /* level */, BatteryManager.BATTERY_PLUGGED_AC,
BatteryManager.BATTERY_HEALTH_GOOD, 0 /* maxChargingWattage */,
true /* present */);
mController.getKeyguardCallback().onRefreshBatteryInfo(status);
mController.setVisible(true);
verifyIndicationMessage(
INDICATION_TYPE_BATTERY,
mContext.getString(R.string.keyguard_charged));