Merge "Disable even dimmer setting conditionally" into main
This commit is contained in:
committed by
Android (Google) Code Review
commit
333b21c6d0
@@ -47,7 +47,16 @@ public class EvenDimmerPreferenceController extends TogglePreferenceController {
|
|||||||
// enable based on flag and config.xml
|
// enable based on flag and config.xml
|
||||||
final boolean enabledInConfig = mResources.getBoolean(
|
final boolean enabledInConfig = mResources.getBoolean(
|
||||||
com.android.internal.R.bool.config_evenDimmerEnabled);
|
com.android.internal.R.bool.config_evenDimmerEnabled);
|
||||||
return (Flags.evenDimmer() && enabledInConfig) ? AVAILABLE : UNSUPPORTED_ON_DEVICE;
|
|
||||||
|
if (Flags.evenDimmer() && enabledInConfig) {
|
||||||
|
return Settings.System.getInt(mContext.getContentResolver(),
|
||||||
|
Settings.System.SCREEN_BRIGHTNESS_MODE,
|
||||||
|
Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL)
|
||||||
|
== Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC ? AVAILABLE
|
||||||
|
: DISABLED_DEPENDENT_SETTING;
|
||||||
|
} else {
|
||||||
|
return UNSUPPORTED_ON_DEVICE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@@ -18,6 +18,7 @@ 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;
|
||||||
@@ -111,4 +112,18 @@ public class EvenDimmerPreferenceControllerTest {
|
|||||||
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
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@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