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 /policy/src | |
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 'policy/src')
-rw-r--r-- | policy/src/com/android/internal/policy/impl/keyguard/KeyguardMessageArea.java | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMessageArea.java b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMessageArea.java index ee5c4a6..210312a 100644 --- a/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMessageArea.java +++ b/policy/src/com/android/internal/policy/impl/keyguard/KeyguardMessageArea.java @@ -21,6 +21,7 @@ import android.animation.AnimatorListenerAdapter; import android.animation.ObjectAnimator; import android.content.ContentResolver; import android.content.Context; +import android.os.BatteryManager; import android.os.Handler; import android.os.Looper; import android.os.UserHandle; @@ -51,7 +52,7 @@ class KeyguardMessageArea extends TextView { boolean mShowingBouncer = false; // last known plugged in state - boolean mPluggedIn = false; + boolean mCharging = false; // last known battery level int mBatteryLevel = 100; @@ -134,7 +135,8 @@ class KeyguardMessageArea extends TextView { @Override public void onRefreshBatteryInfo(KeyguardUpdateMonitor.BatteryStatus status) { mShowingBatteryInfo = status.isPluggedIn() || status.isBatteryLow(); - mPluggedIn = status.isPluggedIn(); + mCharging = status.status == BatteryManager.BATTERY_STATUS_CHARGING + || status.status == BatteryManager.BATTERY_STATUS_FULL; mBatteryLevel = status.level; mBatteryCharged = status.isCharged(); mBatteryIsLow = status.isBatteryLow(); @@ -223,11 +225,11 @@ class KeyguardMessageArea extends TextView { CharSequence string = null; if (mShowingBatteryInfo && !mShowingMessage) { // Battery status - if (mPluggedIn) { + if (mCharging) { // Charging, charged or waiting to charge. - string = getContext().getString(mBatteryCharged ? - com.android.internal.R.string.lockscreen_charged - :com.android.internal.R.string.lockscreen_plugged_in, mBatteryLevel); + string = getContext().getString(mBatteryCharged + ? com.android.internal.R.string.lockscreen_charged + : com.android.internal.R.string.lockscreen_plugged_in, mBatteryLevel); icon.value = CHARGING_ICON; } else if (mBatteryIsLow) { // Battery is low |