Support incompatible charger state in the Settings main page

https://screenshot.googleplex.com/9af4YCnCCjKHCFY

Bug: 271775549
Test: make test RunSettingsRoboTests
Change-Id: I6562e1b48a85ceceb20389ed87e55e0093040be2
This commit is contained in:
ykhung
2023-05-02 00:02:40 +08:00
parent d7bbff0041
commit 09c1a4a850
2 changed files with 57 additions and 4 deletions

View File

@@ -30,6 +30,7 @@ import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
import com.android.settingslib.Utils;
import com.android.settingslib.utils.ThreadUtils;
public class TopLevelBatteryPreferenceController extends BasePreferenceController implements
@@ -129,6 +130,9 @@ public class TopLevelBatteryPreferenceController extends BasePreferenceControlle
}
private CharSequence generateLabel(BatteryInfo info) {
if (Utils.containsIncompatibleChargers(mContext, TAG)) {
return mContext.getString(R.string.battery_tip_incompatible_charging_title);
}
if (!info.discharging && info.chargeLabel != null) {
return info.chargeLabel;
} else if (info.remainingLabel == null) {
@@ -170,4 +174,4 @@ public class TopLevelBatteryPreferenceController extends BasePreferenceControlle
String pkgName = lastPkgIndex > 0 ? classPath.substring(0, lastPkgIndex) : "";
return new ComponentName(pkgName, split[classNameIndex]);
}
}
}