Keep screen on when on AC even if the battery stops charging.
Bug: 3126403
Change-Id: Ie2316202ffe8c86306c84fcea97d93d56f1aeda2
diff --git a/src/com/android/deskclock/DeskClock.java b/src/com/android/deskclock/DeskClock.java
index 2e16b4d..7460e7d 100644
--- a/src/com/android/deskclock/DeskClock.java
+++ b/src/com/android/deskclock/DeskClock.java
@@ -38,6 +38,7 @@
import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.net.Uri;
+import android.os.BatteryManager;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
@@ -186,8 +187,9 @@
refreshDate();
} else if (Intent.ACTION_BATTERY_CHANGED.equals(action)) {
handleBatteryUpdate(
- intent.getIntExtra("status", BATTERY_STATUS_UNKNOWN),
- intent.getIntExtra("level", 0));
+ intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, 0),
+ intent.getIntExtra(BatteryManager.EXTRA_STATUS, BATTERY_STATUS_UNKNOWN),
+ intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0));
} else if (UiModeManager.ACTION_EXIT_DESK_MODE.equals(action)) {
if (mLaunchedFromDock) {
// moveTaskToBack(false);
@@ -473,8 +475,8 @@
}
// Adapted from KeyguardUpdateMonitor.java
- private void handleBatteryUpdate(int plugStatus, int batteryLevel) {
- final boolean pluggedIn = (plugStatus == BATTERY_STATUS_CHARGING || plugStatus == BATTERY_STATUS_FULL);
+ private void handleBatteryUpdate(int plugged, int status, int level) {
+ final boolean pluggedIn = (plugged != 0);
if (pluggedIn != mPluggedIn) {
setWakeLock(pluggedIn);
@@ -483,8 +485,8 @@
requestWeatherDataFetch();
}
}
- if (pluggedIn != mPluggedIn || batteryLevel != mBatteryLevel) {
- mBatteryLevel = batteryLevel;
+ if (pluggedIn != mPluggedIn || level != mBatteryLevel) {
+ mBatteryLevel = level;
mPluggedIn = pluggedIn;
refreshBattery();
}