Loading res/xml/battery_saver_settings.xml +2 −2 Original line number Diff line number Diff line Loading @@ -29,8 +29,8 @@ <com.android.settings.widget.SeekBarPreference android:key="battery_saver_seek_bar" android:title="@string/battery_saver_seekbar_title_placeholder" android:max="75" android:min="5" /> android:max="15" android:min="1" /> <com.android.settings.widget.TwoStateButtonPreference android:key="battery_saver" Loading src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceController.java +4 −3 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ import com.android.settingslib.core.lifecycle.events.OnStop; public class AutoBatterySeekBarPreferenceController extends BasePreferenceController implements LifecycleObserver, OnStart, OnStop, SeekBarPreference.OnPreferenceChangeListener { private static final String TAG = "AutoBatterySeekBarPreferenceController"; private static final int INTERVAL = 5; @VisibleForTesting static final String KEY_AUTO_BATTERY_SEEK_BAR = "battery_saver_seek_bar"; private SeekBarPreference mPreference; Loading Loading @@ -92,7 +93,7 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro public boolean onPreferenceChange(Preference preference, Object newValue) { final int progress = (int) newValue; Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, progress); Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, progress * INTERVAL); return true; } Loading @@ -102,7 +103,7 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro // Override the max value with LOW_POWER_MODE_TRIGGER_LEVEL_MAX, if set. final int maxLevel = Settings.Global.getInt(contentResolver, Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL_MAX, 0); Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL_MAX, 0) / INTERVAL; if (maxLevel > 0) { if (!(preference instanceof SeekBarPreference)) { Log.e(TAG, "Unexpected preference class: " + preference.getClass()); Loading @@ -127,7 +128,7 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro preference.setTitle(mContext.getString(R.string.battery_saver_seekbar_title, Utils.formatPercentage(level))); SeekBarPreference seekBarPreference = (SeekBarPreference) preference; seekBarPreference.setProgress(level); seekBarPreference.setProgress(level / INTERVAL); seekBarPreference.setSeekBarContentDescription( mContext.getString(R.string.battery_saver_turn_on_automatically_title)); } Loading tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceControllerTest.java +6 −3 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.settings.fuelgauge.batterysaver; import static com.google.common.truth.Truth.assertThat; import androidx.lifecycle.LifecycleOwner; import android.content.Context; import android.provider.Settings; Loading @@ -39,6 +40,7 @@ public class AutoBatterySeekBarPreferenceControllerTest { private static final int TRIGGER_LEVEL = 20; private static final int DEFAULT_LEVEL = 15; private static final int INTERVAL = 5; private AutoBatterySeekBarPreferenceController mController; private Context mContext; Loading Loading @@ -85,15 +87,16 @@ public class AutoBatterySeekBarPreferenceControllerTest { assertThat(mPreference.isVisible()).isTrue(); assertThat(mPreference.getTitle()).isEqualTo("At 20%"); assertThat(mPreference.getProgress()).isEqualTo(TRIGGER_LEVEL); assertThat(mPreference.getProgress()).isEqualTo(TRIGGER_LEVEL / INTERVAL); } @Test public void testOnPreferenceChange_updateValue() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0); mController.onPreferenceChange(mPreference, TRIGGER_LEVEL); mController.onPreferenceChange(mPreference, TRIGGER_LEVEL / INTERVAL); assertThat(Settings.Global.getInt(mContext.getContentResolver(), Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0)).isEqualTo(TRIGGER_LEVEL); Loading @@ -106,7 +109,7 @@ public class AutoBatterySeekBarPreferenceControllerTest { mController.updateState(mPreference); assertThat(mPreference.getMax()).isEqualTo(50); assertThat(mPreference.getMax()).isEqualTo(50 / INTERVAL); } @Test Loading Loading
res/xml/battery_saver_settings.xml +2 −2 Original line number Diff line number Diff line Loading @@ -29,8 +29,8 @@ <com.android.settings.widget.SeekBarPreference android:key="battery_saver_seek_bar" android:title="@string/battery_saver_seekbar_title_placeholder" android:max="75" android:min="5" /> android:max="15" android:min="1" /> <com.android.settings.widget.TwoStateButtonPreference android:key="battery_saver" Loading
src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceController.java +4 −3 Original line number Diff line number Diff line Loading @@ -43,6 +43,7 @@ import com.android.settingslib.core.lifecycle.events.OnStop; public class AutoBatterySeekBarPreferenceController extends BasePreferenceController implements LifecycleObserver, OnStart, OnStop, SeekBarPreference.OnPreferenceChangeListener { private static final String TAG = "AutoBatterySeekBarPreferenceController"; private static final int INTERVAL = 5; @VisibleForTesting static final String KEY_AUTO_BATTERY_SEEK_BAR = "battery_saver_seek_bar"; private SeekBarPreference mPreference; Loading Loading @@ -92,7 +93,7 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro public boolean onPreferenceChange(Preference preference, Object newValue) { final int progress = (int) newValue; Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, progress); Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, progress * INTERVAL); return true; } Loading @@ -102,7 +103,7 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro // Override the max value with LOW_POWER_MODE_TRIGGER_LEVEL_MAX, if set. final int maxLevel = Settings.Global.getInt(contentResolver, Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL_MAX, 0); Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL_MAX, 0) / INTERVAL; if (maxLevel > 0) { if (!(preference instanceof SeekBarPreference)) { Log.e(TAG, "Unexpected preference class: " + preference.getClass()); Loading @@ -127,7 +128,7 @@ public class AutoBatterySeekBarPreferenceController extends BasePreferenceContro preference.setTitle(mContext.getString(R.string.battery_saver_seekbar_title, Utils.formatPercentage(level))); SeekBarPreference seekBarPreference = (SeekBarPreference) preference; seekBarPreference.setProgress(level); seekBarPreference.setProgress(level / INTERVAL); seekBarPreference.setSeekBarContentDescription( mContext.getString(R.string.battery_saver_turn_on_automatically_title)); } Loading
tests/robotests/src/com/android/settings/fuelgauge/batterysaver/AutoBatterySeekBarPreferenceControllerTest.java +6 −3 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ package com.android.settings.fuelgauge.batterysaver; import static com.google.common.truth.Truth.assertThat; import androidx.lifecycle.LifecycleOwner; import android.content.Context; import android.provider.Settings; Loading @@ -39,6 +40,7 @@ public class AutoBatterySeekBarPreferenceControllerTest { private static final int TRIGGER_LEVEL = 20; private static final int DEFAULT_LEVEL = 15; private static final int INTERVAL = 5; private AutoBatterySeekBarPreferenceController mController; private Context mContext; Loading Loading @@ -85,15 +87,16 @@ public class AutoBatterySeekBarPreferenceControllerTest { assertThat(mPreference.isVisible()).isTrue(); assertThat(mPreference.getTitle()).isEqualTo("At 20%"); assertThat(mPreference.getProgress()).isEqualTo(TRIGGER_LEVEL); assertThat(mPreference.getProgress()).isEqualTo(TRIGGER_LEVEL / INTERVAL); } @Test public void testOnPreferenceChange_updateValue() { Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0); mController.onPreferenceChange(mPreference, TRIGGER_LEVEL); mController.onPreferenceChange(mPreference, TRIGGER_LEVEL / INTERVAL); assertThat(Settings.Global.getInt(mContext.getContentResolver(), Settings.Global.LOW_POWER_MODE_TRIGGER_LEVEL, 0)).isEqualTo(TRIGGER_LEVEL); Loading @@ -106,7 +109,7 @@ public class AutoBatterySeekBarPreferenceControllerTest { mController.updateState(mPreference); assertThat(mPreference.getMax()).isEqualTo(50); assertThat(mPreference.getMax()).isEqualTo(50 / INTERVAL); } @Test Loading