Update strings for charging optimization mode.

Update the battery settings summary and the charging string on the Battery settings page if charging optimization mode is applied.

Bug: 329020954
Test: atest SettingsRoboTests
Change-Id: Ie906a010d70bcef7fafe235f0287b289ea934705
This commit is contained in:
Yiling Chuang
2024-05-06 03:57:22 +00:00
parent 45cf636b1a
commit 7b77729db6
6 changed files with 182 additions and 19 deletions

View File

@@ -78,6 +78,21 @@ public class BatteryHeaderPreferenceController extends BasePreferenceController
}
private CharSequence generateLabel(BatteryInfo info) {
if (Utils.containsIncompatibleChargers(mContext, TAG)) {
return mContext.getString(
com.android.settingslib.R.string.battery_info_status_not_charging);
}
if (BatteryUtils.isBatteryDefenderOn(info)) {
return mContext.getString(
com.android.settingslib.R.string.battery_info_status_charging_on_hold);
}
if (info.remainingLabel == null
|| info.batteryStatus == BatteryManager.BATTERY_STATUS_NOT_CHARGING) {
return info.statusLabel;
}
if (mBatterySettingsFeatureProvider.isChargingOptimizationMode(mContext)) {
return info.remainingLabel;
}
if (info.pluggedStatus == BatteryManager.BATTERY_PLUGGED_WIRELESS) {
final CharSequence wirelessChargingLabel =
mBatterySettingsFeatureProvider.getWirelessChargingLabel(mContext, info);
@@ -85,18 +100,7 @@ public class BatteryHeaderPreferenceController extends BasePreferenceController
return wirelessChargingLabel;
}
}
if (Utils.containsIncompatibleChargers(mContext, TAG)) {
return mContext.getString(
com.android.settingslib.R.string.battery_info_status_not_charging);
} else if (BatteryUtils.isBatteryDefenderOn(info)) {
return mContext.getString(
com.android.settingslib.R.string.battery_info_status_charging_on_hold);
} else if (info.remainingLabel == null
|| info.batteryStatus == BatteryManager.BATTERY_STATUS_NOT_CHARGING) {
// Present status only if no remaining time or status anomalous
return info.statusLabel;
} else if (info.statusLabel != null && !info.discharging) {
if (info.statusLabel != null && !info.discharging) {
// Charging state
if (com.android.settingslib.fuelgauge.BatteryUtils.isChargingStringV2Enabled()) {
return info.isFastCharging