| Index: services/device/battery/android/java/src/org/chromium/device/battery/BatteryStatusManager.java
|
| diff --git a/services/device/battery/android/java/src/org/chromium/device/battery/BatteryStatusManager.java b/services/device/battery/android/java/src/org/chromium/device/battery/BatteryStatusManager.java
|
| index 53f3b0d6560ebbfb56f849bf2533d9643ac67dce..36fa24f5e98efe4760f15f3a28931cfb5f528d40 100644
|
| --- a/services/device/battery/android/java/src/org/chromium/device/battery/BatteryStatusManager.java
|
| +++ b/services/device/battery/android/java/src/org/chromium/device/battery/BatteryStatusManager.java
|
| @@ -12,6 +12,7 @@ import android.content.IntentFilter;
|
| import android.os.BatteryManager;
|
| import android.os.Build;
|
|
|
| +import org.chromium.base.ContextUtils;
|
| import org.chromium.base.Log;
|
| import org.chromium.base.VisibleForTesting;
|
| import org.chromium.device.mojom.BatteryStatus;
|
| @@ -30,8 +31,6 @@ class BatteryStatusManager {
|
| void onBatteryStatusChanged(BatteryStatus batteryStatus);
|
| }
|
|
|
| - // A reference to the application context in order to acquire the SensorService.
|
| - private final Context mAppContext;
|
| private final BatteryStatusCallback mCallback;
|
| private final IntentFilter mFilter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
|
| private final BroadcastReceiver mReceiver = new BroadcastReceiver() {
|
| @@ -63,22 +62,21 @@ class BatteryStatusManager {
|
| }
|
| }
|
|
|
| - private BatteryStatusManager(Context context, BatteryStatusCallback callback,
|
| - boolean ignoreBatteryPresentState,
|
| + private BatteryStatusManager(BatteryStatusCallback callback, boolean ignoreBatteryPresentState,
|
| @Nullable AndroidBatteryManagerWrapper batteryManager) {
|
| - mAppContext = context.getApplicationContext();
|
| mCallback = callback;
|
| mIgnoreBatteryPresentState = ignoreBatteryPresentState;
|
| mAndroidBatteryManager = batteryManager;
|
| }
|
|
|
| - BatteryStatusManager(Context context, BatteryStatusCallback callback) {
|
| + BatteryStatusManager(BatteryStatusCallback callback) {
|
| // BatteryManager.EXTRA_PRESENT appears to be unreliable on Galaxy Nexus,
|
| // Android 4.2.1, it always reports false. See http://crbug.com/384348.
|
| - this(context, callback, Build.MODEL.equals("Galaxy Nexus"),
|
| + this(callback, Build.MODEL.equals("Galaxy Nexus"),
|
| Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP
|
| ? new AndroidBatteryManagerWrapper(
|
| - (BatteryManager) context.getSystemService(Context.BATTERY_SERVICE))
|
| + (BatteryManager) ContextUtils.getApplicationContext()
|
| + .getSystemService(Context.BATTERY_SERVICE))
|
| : null);
|
| }
|
|
|
| @@ -88,7 +86,7 @@ class BatteryStatusManager {
|
| */
|
| static BatteryStatusManager createBatteryStatusManagerForTesting(Context context,
|
| BatteryStatusCallback callback, @Nullable AndroidBatteryManagerWrapper batteryManager) {
|
| - return new BatteryStatusManager(context, callback, false, batteryManager);
|
| + return new BatteryStatusManager(callback, false, batteryManager);
|
| }
|
|
|
| /**
|
| @@ -96,7 +94,9 @@ class BatteryStatusManager {
|
| * @return True on success.
|
| */
|
| boolean start() {
|
| - if (!mEnabled && mAppContext.registerReceiver(mReceiver, mFilter) != null) {
|
| + if (!mEnabled
|
| + && ContextUtils.getApplicationContext().registerReceiver(mReceiver, mFilter)
|
| + != null) {
|
| // success
|
| mEnabled = true;
|
| }
|
| @@ -108,7 +108,7 @@ class BatteryStatusManager {
|
| */
|
| void stop() {
|
| if (mEnabled) {
|
| - mAppContext.unregisterReceiver(mReceiver);
|
| + ContextUtils.getApplicationContext().unregisterReceiver(mReceiver);
|
| mEnabled = false;
|
| }
|
| }
|
|
|