diff options
| author | Daniel Sandler <dsandler@android.com> | 2012-11-29 15:11:50 -0500 |
|---|---|---|
| committer | Daniel Sandler <dsandler@android.com> | 2012-11-29 15:11:50 -0500 |
| commit | fe0e1e445fe697d59baf5736da20356a4e548fc9 (patch) | |
| tree | 3bb55d3f7be054a19c1430d435aef384762546da /packages | |
| parent | bf0e106a7d755355d7ff53a2b319e2e91c154641 (diff) | |
| download | frameworks_base-fe0e1e445fe697d59baf5736da20356a4e548fc9.zip frameworks_base-fe0e1e445fe697d59baf5736da20356a4e548fc9.tar.gz frameworks_base-fe0e1e445fe697d59baf5736da20356a4e548fc9.tar.bz2 | |
Only show "charging" if the battery is really charging.
If there's a charge problem (battery health/temperature out
of spec, or low charging current), the lockscreen and status
bar should not indicate that charging is occurring.
(Previously we showed "Charging" and a lightning bolt any
time the device was plugged in.)
Bug: 7509976
Change-Id: I27ec0e2cec1307fbc6ef262dd5181a4db6d3bed0
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java index 7f9bcac..716341f 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryController.java @@ -68,9 +68,20 @@ public class BatteryController extends BroadcastReceiver { final String action = intent.getAction(); if (action.equals(Intent.ACTION_BATTERY_CHANGED)) { final int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0); - final boolean plugged = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, 0) != 0; - final int icon = plugged ? R.drawable.stat_sys_battery_charge + final int status = intent.getIntExtra(BatteryManager.EXTRA_STATUS, + BatteryManager.BATTERY_STATUS_UNKNOWN); + + boolean plugged = false; + switch (status) { + case BatteryManager.BATTERY_STATUS_CHARGING: + case BatteryManager.BATTERY_STATUS_FULL: + plugged = true; + break; + } + + final int icon = plugged ? R.drawable.stat_sys_battery_charge : R.drawable.stat_sys_battery; + int N = mIconViews.size(); for (int i=0; i<N; i++) { ImageView v = mIconViews.get(i); |
