diff options
author | Makoto Onuki <omakoto@google.com> | 2018-03-20 13:05:22 -0700 |
---|---|---|
committer | Makoto Onuki <omakoto@google.com> | 2018-03-21 11:14:20 -0700 |
commit | 5b60fdba81245056de69ecefbf6bb37c90c4978f (patch) | |
tree | b319b12054d49d5f8d794458198eca7b707fcad5 /src/com/android/settings | |
parent | 940630bae187ee8861f7a0db923684d70df3238d (diff) | |
download | packages_apps_Settings-5b60fdba81245056de69ecefbf6bb37c90c4978f.tar.gz packages_apps_Settings-5b60fdba81245056de69ecefbf6bb37c90c4978f.tar.bz2 packages_apps_Settings-5b60fdba81245056de69ecefbf6bb37c90c4978f.zip |
Implement new BS warning / notification flow (2/2)
Bug: 74120126
Test: Manual tests
Change-Id: Ieea6ee97695cd5a30e55f5c6ccec8135ec2d0ef4
Diffstat (limited to 'src/com/android/settings')
4 files changed, 15 insertions, 16 deletions
diff --git a/src/com/android/settings/dashboard/conditional/BatterySaverCondition.java b/src/com/android/settings/dashboard/conditional/BatterySaverCondition.java index 618fed3a81..d1135784d4 100644 --- a/src/com/android/settings/dashboard/conditional/BatterySaverCondition.java +++ b/src/com/android/settings/dashboard/conditional/BatterySaverCondition.java @@ -23,6 +23,7 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.settings.R; import com.android.settings.core.SubSettingLauncher; import com.android.settings.fuelgauge.batterysaver.BatterySaverSettings; +import com.android.settingslib.fuelgauge.BatterySaverUtils; public class BatterySaverCondition extends Condition { public BatterySaverCondition(ConditionManager manager) { @@ -68,7 +69,8 @@ public class BatterySaverCondition extends Condition { @Override public void onActionClick(int index) { if (index == 0) { - mManager.getContext().getSystemService(PowerManager.class).setPowerSaveMode(false); + BatterySaverUtils.setPowerSaveMode(mManager.getContext(), false, + /*needFirstTimeWarning*/ false); refreshState(); } else { throw new IllegalArgumentException("Unexpected index " + index); diff --git a/src/com/android/settings/fuelgauge/BatterySaverModeVoiceActivity.java b/src/com/android/settings/fuelgauge/BatterySaverModeVoiceActivity.java index 3fc0cd823e..04624bb8c7 100644 --- a/src/com/android/settings/fuelgauge/BatterySaverModeVoiceActivity.java +++ b/src/com/android/settings/fuelgauge/BatterySaverModeVoiceActivity.java @@ -16,14 +16,13 @@ package com.android.settings.fuelgauge; -import android.content.Context; +import static android.provider.Settings.EXTRA_BATTERY_SAVER_MODE_ENABLED; + import android.content.Intent; -import android.os.PowerManager; import android.util.Log; import com.android.settings.utils.VoiceSettingsActivity; - -import static android.provider.Settings.EXTRA_BATTERY_SAVER_MODE_ENABLED; +import com.android.settingslib.fuelgauge.BatterySaverUtils; /** * Activity for modifying the {@link android.os.PowerManager} power save mode @@ -35,9 +34,9 @@ public class BatterySaverModeVoiceActivity extends VoiceSettingsActivity { @Override protected boolean onVoiceSettingInteraction(Intent intent) { if (intent.hasExtra(EXTRA_BATTERY_SAVER_MODE_ENABLED)) { - PowerManager powerManager = (PowerManager) getSystemService(Context.POWER_SERVICE); - if (powerManager.setPowerSaveMode( - intent.getBooleanExtra(EXTRA_BATTERY_SAVER_MODE_ENABLED, false))) { + if (BatterySaverUtils.setPowerSaveMode(this, + intent.getBooleanExtra(EXTRA_BATTERY_SAVER_MODE_ENABLED, false), + /*needFirstTimeWarning=*/ true)) { notifySuccess(null); } else { Log.v(TAG, "Unable to set power mode"); diff --git a/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java index 1d427c9f95..b23a5f08a7 100644 --- a/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java +++ b/src/com/android/settings/fuelgauge/batterysaver/BatterySaverButtonPreferenceController.java @@ -21,13 +21,13 @@ import android.os.PowerManager; import android.support.annotation.VisibleForTesting; import android.support.v7.preference.Preference; -import com.android.settings.fuelgauge.BatteryBroadcastReceiver; import com.android.settings.fuelgauge.BatterySaverReceiver; import com.android.settings.widget.TwoStateButtonPreferenceController; import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.events.OnStart; import com.android.settingslib.core.lifecycle.events.OnStop; +import com.android.settingslib.fuelgauge.BatterySaverUtils; /** * Controller to update the battery saver button @@ -73,7 +73,8 @@ public class BatterySaverButtonPreferenceController extends @Override public void onButtonClicked(boolean stateOn) { - mPowerManager.setPowerSaveMode(stateOn); + // This screen already shows a warning, so we don't need another warning. + BatterySaverUtils.setPowerSaveMode(mContext, stateOn, /*needFirstTimeWarning*/ false); } @Override @@ -85,4 +86,4 @@ public class BatterySaverButtonPreferenceController extends public void onBatteryChanged(boolean pluggedIn) { setButtonEnabled(!pluggedIn); } -}
\ No newline at end of file +} diff --git a/src/com/android/settings/fuelgauge/batterytip/actions/BatterySaverAction.java b/src/com/android/settings/fuelgauge/batterytip/actions/BatterySaverAction.java index bb526236bb..6eff47a6b4 100644 --- a/src/com/android/settings/fuelgauge/batterytip/actions/BatterySaverAction.java +++ b/src/com/android/settings/fuelgauge/batterytip/actions/BatterySaverAction.java @@ -17,16 +17,13 @@ package com.android.settings.fuelgauge.batterytip.actions; import android.content.Context; -import android.os.PowerManager; import com.android.internal.logging.nano.MetricsProto; +import com.android.settingslib.fuelgauge.BatterySaverUtils; public class BatterySaverAction extends BatteryTipAction { - private PowerManager mPowerManager; - public BatterySaverAction(Context context) { super(context); - mPowerManager = (PowerManager) context.getSystemService(Context.POWER_SERVICE); } /** @@ -34,7 +31,7 @@ public class BatterySaverAction extends BatteryTipAction { */ @Override public void handlePositiveAction(int metricsKey) { - mPowerManager.setPowerSaveMode(true); + BatterySaverUtils.setPowerSaveMode(mContext, true, /*needFirstTimeWarning*/ true); mMetricsFeatureProvider.action(mContext, MetricsProto.MetricsEvent.ACTION_TIP_TURN_ON_BATTERY_SAVER, metricsKey); } |