From cf15f47ac77fd0f9da7a43abba9ce83ec5bba585 Mon Sep 17 00:00:00 2001 From: hughchen Date: Thu, 3 Oct 2019 15:40:58 +0800 Subject: [PATCH] Make battery icon as red when battery level < 20% Bug: 139457284 Test: manually Change-Id: I235dd86975b3c867183ff845893c3ed95c847356 --- .../AdvancedBluetoothDetailsHeaderController.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java b/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java index 6817d0d3ee3..7e100438a4e 100644 --- a/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java +++ b/src/com/android/settings/bluetooth/AdvancedBluetoothDetailsHeaderController.java @@ -60,6 +60,7 @@ import java.util.Map; public class AdvancedBluetoothDetailsHeaderController extends BasePreferenceController implements LifecycleObserver, OnStart, OnStop, OnDestroy, CachedBluetoothDevice.Callback { private static final String TAG = "AdvancedBtHeaderCtrl"; + private static final int LOW_BATTERY_LEVEL = 20; @VisibleForTesting LayoutPreference mLayoutPreference; @@ -182,9 +183,11 @@ public class AdvancedBluetoothDetailsHeaderController extends BasePreferenceCont new BatteryMeterView.BatteryMeterDrawable(context, context.getColor(R.color.meter_background_color)); drawable.setBatteryLevel(level); + final int attr = level > LOW_BATTERY_LEVEL || charging + ? android.R.attr.colorControlNormal + : android.R.attr.colorError; drawable.setColorFilter(new PorterDuffColorFilter( - com.android.settings.Utils.getColorAttrDefaultColor(context, - android.R.attr.colorControlNormal), + com.android.settings.Utils.getColorAttrDefaultColor(context, attr), PorterDuff.Mode.SRC_IN)); drawable.setCharging(charging);