Even Dimmer for manual screen brightness mode
Bug: 338416256 Fixes: 331324279 Test: atest EvenDimmerPreferenceControllerTest Change-Id: I039f90df1b77348cde543964905c0745c888413d
This commit is contained in:
@@ -50,11 +50,7 @@ public class EvenDimmerPreferenceController extends TogglePreferenceController {
|
|||||||
com.android.internal.R.bool.config_evenDimmerEnabled);
|
com.android.internal.R.bool.config_evenDimmerEnabled);
|
||||||
|
|
||||||
if (Flags.evenDimmer() && enabledInConfig) {
|
if (Flags.evenDimmer() && enabledInConfig) {
|
||||||
return Settings.System.getInt(mContext.getContentResolver(),
|
return AVAILABLE;
|
||||||
Settings.System.SCREEN_BRIGHTNESS_MODE,
|
|
||||||
Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL)
|
|
||||||
== Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC ? AVAILABLE
|
|
||||||
: DISABLED_DEPENDENT_SETTING;
|
|
||||||
} else {
|
} else {
|
||||||
return UNSUPPORTED_ON_DEVICE;
|
return UNSUPPORTED_ON_DEVICE;
|
||||||
}
|
}
|
||||||
|
@@ -18,7 +18,6 @@ package com.android.settings.display;
|
|||||||
|
|
||||||
|
|
||||||
import static com.android.settings.core.BasePreferenceController.AVAILABLE;
|
import static com.android.settings.core.BasePreferenceController.AVAILABLE;
|
||||||
import static com.android.settings.core.BasePreferenceController.DISABLED_DEPENDENT_SETTING;
|
|
||||||
import static com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_DEVICE;
|
import static com.android.settings.core.BasePreferenceController.UNSUPPORTED_ON_DEVICE;
|
||||||
|
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
@@ -36,7 +35,6 @@ import android.provider.Settings;
|
|||||||
import com.android.server.display.feature.flags.Flags;
|
import com.android.server.display.feature.flags.Flags;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
import org.junit.Ignore;
|
|
||||||
import org.junit.Rule;
|
import org.junit.Rule;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
import org.junit.runner.RunWith;
|
import org.junit.runner.RunWith;
|
||||||
@@ -65,7 +63,7 @@ public class EvenDimmerPreferenceControllerTest {
|
|||||||
|
|
||||||
@RequiresFlagsDisabled(Flags.FLAG_EVEN_DIMMER)
|
@RequiresFlagsDisabled(Flags.FLAG_EVEN_DIMMER)
|
||||||
@Test
|
@Test
|
||||||
public void testGetAvailabilityStatus_flagOffconfigTrue() {
|
public void testGetAvailabilityStatus_flagOffConfigTrue() {
|
||||||
when(mContext.getResources()).thenReturn(mResources);
|
when(mContext.getResources()).thenReturn(mResources);
|
||||||
when(mResources.getBoolean(
|
when(mResources.getBoolean(
|
||||||
com.android.internal.R.bool.config_evenDimmerEnabled)).thenReturn(true);
|
com.android.internal.R.bool.config_evenDimmerEnabled)).thenReturn(true);
|
||||||
@@ -86,7 +84,6 @@ public class EvenDimmerPreferenceControllerTest {
|
|||||||
Settings.Secure.EVEN_DIMMER_ACTIVATED)).isEqualTo(0.0f); // false
|
Settings.Secure.EVEN_DIMMER_ACTIVATED)).isEqualTo(0.0f); // false
|
||||||
}
|
}
|
||||||
|
|
||||||
@Ignore("b/331324279")
|
|
||||||
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
|
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
|
||||||
@Test
|
@Test
|
||||||
public void testGetAvailabilityStatus_flagOnConfigTrue() {
|
public void testGetAvailabilityStatus_flagOnConfigTrue() {
|
||||||
@@ -99,10 +96,24 @@ public class EvenDimmerPreferenceControllerTest {
|
|||||||
assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
|
assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Ignore("b/331324279")
|
|
||||||
|
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
|
||||||
|
@Test
|
||||||
|
public void testGetAvailabilityStatus_flagOnConfigFalse() {
|
||||||
|
when(mContext.getResources()).thenReturn(mResources);
|
||||||
|
when(mResources.getBoolean(
|
||||||
|
com.android.internal.R.bool.config_evenDimmerEnabled)).thenReturn(false);
|
||||||
|
// setup
|
||||||
|
mController = new EvenDimmerPreferenceController(mContext, "key");
|
||||||
|
|
||||||
|
assertThat(mController.getAvailabilityStatus()).isEqualTo(UNSUPPORTED_ON_DEVICE);
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
|
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
|
||||||
public void testSetChecked_enable() throws Settings.SettingNotFoundException {
|
public void testSetChecked_enable() throws Settings.SettingNotFoundException {
|
||||||
|
when(mResources.getBoolean(
|
||||||
|
com.android.internal.R.bool.config_evenDimmerEnabled)).thenReturn(true);
|
||||||
mController.setChecked(true);
|
mController.setChecked(true);
|
||||||
assertThat(Settings.Secure.getFloat(mContext.getContentResolver(),
|
assertThat(Settings.Secure.getFloat(mContext.getContentResolver(),
|
||||||
Settings.Secure.EVEN_DIMMER_ACTIVATED)).isEqualTo(1.0f); // true
|
Settings.Secure.EVEN_DIMMER_ACTIVATED)).isEqualTo(1.0f); // true
|
||||||
@@ -111,23 +122,10 @@ public class EvenDimmerPreferenceControllerTest {
|
|||||||
@Test
|
@Test
|
||||||
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
|
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
|
||||||
public void testSetChecked_disable() throws Settings.SettingNotFoundException {
|
public void testSetChecked_disable() throws Settings.SettingNotFoundException {
|
||||||
|
when(mResources.getBoolean(
|
||||||
|
com.android.internal.R.bool.config_evenDimmerEnabled)).thenReturn(true);
|
||||||
mController.setChecked(false);
|
mController.setChecked(false);
|
||||||
assertThat(Settings.Secure.getFloat(mContext.getContentResolver(),
|
assertThat(Settings.Secure.getFloat(mContext.getContentResolver(),
|
||||||
Settings.Secure.EVEN_DIMMER_ACTIVATED)).isEqualTo(0.0f); // false
|
Settings.Secure.EVEN_DIMMER_ACTIVATED)).isEqualTo(0.0f); // false
|
||||||
}
|
}
|
||||||
|
|
||||||
@Ignore("b/331324279")
|
|
||||||
@Test
|
|
||||||
@RequiresFlagsEnabled(Flags.FLAG_EVEN_DIMMER)
|
|
||||||
public void testDisabledIfAutobrightnessIsOff() {
|
|
||||||
// Autobrightness off
|
|
||||||
Settings.System.putInt(mContext.getContentResolver(),
|
|
||||||
Settings.System.SCREEN_BRIGHTNESS_MODE,
|
|
||||||
Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
|
|
||||||
// Try turn controller on
|
|
||||||
mController.setChecked(true);
|
|
||||||
|
|
||||||
assertThat(mController.getAvailabilityStatus()).isEqualTo(
|
|
||||||
DISABLED_DEPENDENT_SETTING);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user