summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryControllerImpl.java44
1 files changed, 33 insertions, 11 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryControllerImpl.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryControllerImpl.java
index 775f34d54e3f..d281920ab1c4 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryControllerImpl.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/BatteryControllerImpl.java
@@ -174,15 +174,24 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
IndentingPrintWriter ipw = asIndenting(pw);
ipw.println("BatteryController state:");
ipw.increaseIndent();
- ipw.print("mHasReceivedBattery="); ipw.println(mHasReceivedBattery);
- ipw.print("mLevel="); ipw.println(mLevel);
- ipw.print("mPluggedIn="); ipw.println(mPluggedIn);
- ipw.print("mCharging="); ipw.println(mCharging);
- ipw.print("mCharged="); ipw.println(mCharged);
- ipw.print("mIsBatteryDefender="); ipw.println(mIsBatteryDefender);
- ipw.print("mIsIncompatibleCharging="); ipw.println(mIsIncompatibleCharging);
- ipw.print("mPowerSave="); ipw.println(mPowerSave);
- ipw.print("mStateUnknown="); ipw.println(mStateUnknown);
+ ipw.print("mHasReceivedBattery=");
+ ipw.println(mHasReceivedBattery);
+ ipw.print("mLevel=");
+ ipw.println(mLevel);
+ ipw.print("mPluggedIn=");
+ ipw.println(mPluggedIn);
+ ipw.print("mCharging=");
+ ipw.println(mCharging);
+ ipw.print("mCharged=");
+ ipw.println(mCharged);
+ ipw.print("mIsBatteryDefender=");
+ ipw.println(mIsBatteryDefender);
+ ipw.print("mIsIncompatibleCharging=");
+ ipw.println(mIsIncompatibleCharging);
+ ipw.print("mPowerSave=");
+ ipw.println(mPowerSave);
+ ipw.print("mStateUnknown=");
+ ipw.println(mStateUnknown);
ipw.println("Callbacks:------------------");
// Since the above lines are already indented, we need to indent twice for the callbacks.
ipw.increaseIndent();
@@ -272,7 +281,7 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
}
int chargingStatus = intent.getIntExtra(EXTRA_CHARGING_STATUS, CHARGING_POLICY_DEFAULT);
- boolean isBatteryDefender = chargingStatus == CHARGING_POLICY_ADAPTIVE_LONGLIFE;
+ boolean isBatteryDefender = isBatteryDefenderMode(chargingStatus);
if (isBatteryDefender != mIsBatteryDefender) {
mIsBatteryDefender = isBatteryDefender;
fireIsBatteryDefenderChanged();
@@ -359,11 +368,24 @@ public class BatteryControllerImpl extends BroadcastReceiver implements BatteryC
return mPluggedChargingSource == BatteryManager.BATTERY_PLUGGED_WIRELESS;
}
- public boolean isBatteryDefender() {
+ /**
+ * This method is used for tests only. Returns whether the device is in battery defender
+ * mode.
+ */
+ @VisibleForTesting
+ protected boolean isBatteryDefender() {
return mIsBatteryDefender;
}
/**
+ * Checks whether the device is in battery defender mode based on the current charging
+ * status. This method can be overridden to have a different definition for its subclasses.
+ */
+ protected boolean isBatteryDefenderMode(int chargingStatus) {
+ return chargingStatus == CHARGING_POLICY_ADAPTIVE_LONGLIFE;
+ }
+
+ /**
* Returns whether the charging adapter is incompatible.
*/
public boolean isIncompatibleCharging() {