Merge "Add labels to intensity slider and flip labels" into sc-dev

This commit is contained in:
Sally Yuen
2021-06-17 15:37:32 +00:00
committed by Android (Google) Code Review
4 changed files with 24 additions and 9 deletions

View File

@@ -5598,6 +5598,10 @@
</string> </string>
<!-- Title for setting the brightness intensity of the display using Reduce Brightness. [CHAR LIMIT=NONE] --> <!-- Title for setting the brightness intensity of the display using Reduce Brightness. [CHAR LIMIT=NONE] -->
<string name="reduce_bright_colors_intensity_preference_title">Intensity</string> <string name="reduce_bright_colors_intensity_preference_title">Intensity</string>
<!-- Start label for slider that reduces the brightness intensity of the display using Extra Dim. [CHAR LIMIT=NONE] -->
<string name="reduce_bright_colors_intensity_start_label">Dimmer</string>
<!-- End label for slider that reduces the brightness intensity of the display using Extra Dim. [CHAR LIMIT=NONE] -->
<string name="reduce_bright_colors_intensity_end_label">Brighter</string>
<!-- Title for setting whether the Reduce Brightness activation state persists across reboots. [CHAR LIMIT=NONE] --> <!-- Title for setting whether the Reduce Brightness activation state persists across reboots. [CHAR LIMIT=NONE] -->
<string name="reduce_bright_colors_persist_preference_title">Keep on after device restarts</string> <string name="reduce_bright_colors_persist_preference_title">Keep on after device restarts</string>

View File

@@ -17,13 +17,18 @@
<PreferenceScreen <PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:settings="http://schemas.android.com/apk/res-auto"
android:persistent="false" android:persistent="false"
android:title="@string/reduce_bright_colors_preference_title"> android:title="@string/reduce_bright_colors_preference_title">
<com.android.settings.widget.SeekBarPreference <com.android.settings.widget.LabeledSeekBarPreference
android:key="rbc_intensity" android:key="rbc_intensity"
android:persistent="false" android:persistent="false"
android:title="@string/reduce_bright_colors_intensity_preference_title"/> android:title="@string/reduce_bright_colors_intensity_preference_title"
settings:textStart="@string/reduce_bright_colors_intensity_start_label"
settings:textEnd="@string/reduce_bright_colors_intensity_end_label"
settings:tickMark="@android:color/transparent"
/>
<SwitchPreference <SwitchPreference
android:key="rbc_persist" android:key="rbc_persist"

View File

@@ -28,6 +28,7 @@ import com.android.settings.widget.SeekBarPreference;
/** PreferenceController for feature intensity. */ /** PreferenceController for feature intensity. */
public class ReduceBrightColorsIntensityPreferenceController extends SliderPreferenceController { public class ReduceBrightColorsIntensityPreferenceController extends SliderPreferenceController {
private static final int INVERSE_PERCENTAGE_BASE = 100;
private final ColorDisplayManager mColorDisplayManager; private final ColorDisplayManager mColorDisplayManager;
public ReduceBrightColorsIntensityPreferenceController(Context context, String key) { public ReduceBrightColorsIntensityPreferenceController(Context context, String key) {
@@ -66,21 +67,24 @@ public class ReduceBrightColorsIntensityPreferenceController extends SliderPrefe
@Override @Override
public int getSliderPosition() { public int getSliderPosition() {
return mColorDisplayManager.getReduceBrightColorsStrength(); return INVERSE_PERCENTAGE_BASE - mColorDisplayManager.getReduceBrightColorsStrength();
} }
@Override @Override
public boolean setSliderPosition(int position) { public boolean setSliderPosition(int position) {
return mColorDisplayManager.setReduceBrightColorsStrength(position); return mColorDisplayManager.setReduceBrightColorsStrength(
INVERSE_PERCENTAGE_BASE - position);
} }
@Override @Override
public int getMax() { public int getMax() {
return ColorDisplayManager.getMaximumReduceBrightColorsStrength(mContext); return INVERSE_PERCENTAGE_BASE
- ColorDisplayManager.getMinimumReduceBrightColorsStrength(mContext);
} }
@Override @Override
public int getMin() { public int getMin() {
return ColorDisplayManager.getMinimumReduceBrightColorsStrength(mContext); return INVERSE_PERCENTAGE_BASE
- ColorDisplayManager.getMaximumReduceBrightColorsStrength(mContext);
} }
} }

View File

@@ -84,7 +84,7 @@ public class ReduceBrightColorsIntensityPreferenceControllerTest {
assertThat( assertThat(
Settings.Secure.getInt(mContext.getContentResolver(), Settings.Secure.getInt(mContext.getContentResolver(),
Settings.Secure.REDUCE_BRIGHT_COLORS_LEVEL, 0)) Settings.Secure.REDUCE_BRIGHT_COLORS_LEVEL, 0))
.isEqualTo(20); .isEqualTo(80);
} }
@Test @Test
@@ -92,8 +92,10 @@ public class ReduceBrightColorsIntensityPreferenceControllerTest {
when(mResources.getInteger( when(mResources.getInteger(
R.integer.config_reduceBrightColorsStrengthMax)).thenReturn(90); R.integer.config_reduceBrightColorsStrengthMax)).thenReturn(90);
when(mResources.getInteger( when(mResources.getInteger(
R.integer.config_reduceBrightColorsStrengthMin)).thenReturn(10); R.integer.config_reduceBrightColorsStrengthMin)).thenReturn(15);
assertThat(mPreferenceController.getMax()).isEqualTo(85);
assertThat(mPreferenceController.getMin()).isEqualTo(10);
assertThat(mPreferenceController.getMax() - mPreferenceController.getMin()) assertThat(mPreferenceController.getMax() - mPreferenceController.getMin())
.isEqualTo(80); .isEqualTo(75);
} }
} }