From 30b66159aa6a8b985686eff77f2365b118f3fd3f Mon Sep 17 00:00:00 2001 From: Michael Wright Date: Mon, 29 Jan 2018 16:52:47 +0000 Subject: [PATCH] Change automatic brightness summary to absolute brightness. The brightness slider now always represents the absolute brightness, including when adaptive brightness is enabled. This changes the summary of the brightness setting to reflect that. Bug: 72627086 Test: ROBOTEST_FILTER=BrightnessLevelPreferenceControllerTest m -j RunSettingsRoboTests Change-Id: I76eed8aa9ee88fe6b70e30d54bfc0d18d1141377 --- .../BrightnessLevelPreferenceController.java | 19 ++++--------------- ...ightnessLevelPreferenceControllerTest.java | 12 ++++-------- 2 files changed, 8 insertions(+), 23 deletions(-) diff --git a/src/com/android/settings/display/BrightnessLevelPreferenceController.java b/src/com/android/settings/display/BrightnessLevelPreferenceController.java index ee573eb5804..fc08511b815 100644 --- a/src/com/android/settings/display/BrightnessLevelPreferenceController.java +++ b/src/com/android/settings/display/BrightnessLevelPreferenceController.java @@ -45,7 +45,6 @@ public class BrightnessLevelPreferenceController extends AbstractPreferenceContr private static final String TAG = "BrightnessPrefCtrl"; private static final String KEY_BRIGHTNESS = "brightness"; - private static final Uri BRIGHTNESS_MODE_URI; private static final Uri BRIGHTNESS_URI; private static final Uri BRIGHTNESS_FOR_VR_URI; private static final Uri BRIGHTNESS_ADJ_URI; @@ -59,7 +58,6 @@ public class BrightnessLevelPreferenceController extends AbstractPreferenceContr private Preference mPreference; static { - BRIGHTNESS_MODE_URI = System.getUriFor(System.SCREEN_BRIGHTNESS_MODE); BRIGHTNESS_URI = System.getUriFor(System.SCREEN_BRIGHTNESS); BRIGHTNESS_FOR_VR_URI = System.getUriFor(System.SCREEN_BRIGHTNESS_FOR_VR); BRIGHTNESS_ADJ_URI = System.getUriFor(System.SCREEN_AUTO_BRIGHTNESS_ADJ); @@ -112,10 +110,8 @@ public class BrightnessLevelPreferenceController extends AbstractPreferenceContr public void updateState(Preference preference) { updatedSummary(preference); } - @Override public void onStart() { - mContentResolver.registerContentObserver(BRIGHTNESS_MODE_URI, false, mBrightnessObserver); mContentResolver.registerContentObserver(BRIGHTNESS_URI, false, mBrightnessObserver); mContentResolver.registerContentObserver(BRIGHTNESS_FOR_VR_URI, false, mBrightnessObserver); mContentResolver.registerContentObserver(BRIGHTNESS_ADJ_URI, false, mBrightnessObserver); @@ -137,18 +133,11 @@ public class BrightnessLevelPreferenceController extends AbstractPreferenceContr final double value = System.getInt(mContentResolver, System.SCREEN_BRIGHTNESS_FOR_VR, mMaxBrightness); return getPercentage(value, mMinVrBrightness, mMaxVrBrightness); + } else { + final double value = Settings.System.getInt(mContentResolver, System.SCREEN_BRIGHTNESS, + mMinBrightness); + return getPercentage(value, mMinBrightness, mMaxBrightness); } - final int brightnessMode = Settings.System.getInt(mContentResolver, - System.SCREEN_BRIGHTNESS_MODE, System.SCREEN_BRIGHTNESS_MODE_MANUAL); - if (brightnessMode == System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC) { - final float value = Settings.System.getFloat(mContentResolver, - System.SCREEN_AUTO_BRIGHTNESS_ADJ, 0); - // auto brightness is between -1 and 1 - return getPercentage(value, -1, 1); - } - final double value = Settings.System.getInt(mContentResolver, System.SCREEN_BRIGHTNESS, - mMinBrightness); - return getPercentage(value, mMinBrightness, mMaxBrightness); } private double getPercentage(double value, int min, int max) { diff --git a/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java index 95144bd7aa5..f1cf79e9924 100644 --- a/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java +++ b/tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java @@ -89,8 +89,6 @@ public class BrightnessLevelPreferenceControllerTest { controller.onStart(); - assertThat(shadowContentResolver.getContentObservers( - System.getUriFor(System.SCREEN_BRIGHTNESS_MODE))).isNotEmpty(); assertThat(shadowContentResolver.getContentObservers( System.getUriFor(System.SCREEN_BRIGHTNESS))).isNotEmpty(); assertThat(shadowContentResolver.getContentObservers( @@ -110,8 +108,6 @@ public class BrightnessLevelPreferenceControllerTest { controller.onStart(); controller.onStop(); - assertThat(shadowContentResolver.getContentObservers( - System.getUriFor(System.SCREEN_BRIGHTNESS_MODE))).isEmpty(); assertThat(shadowContentResolver.getContentObservers( System.getUriFor(System.SCREEN_BRIGHTNESS))).isEmpty(); assertThat(shadowContentResolver.getContentObservers( @@ -136,11 +132,11 @@ public class BrightnessLevelPreferenceControllerTest { System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS_MODE, System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC); - System.putFloat(mContentResolver, System.SCREEN_AUTO_BRIGHTNESS_ADJ, 0.0f); + System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS, 31); mController.updateState(mPreference); - verify(mPreference).setSummary("50%"); + verify(mPreference).setSummary("31%"); } @Test @@ -175,11 +171,11 @@ public class BrightnessLevelPreferenceControllerTest { System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC); reset(mPreference); - System.putFloat(mContentResolver, System.SCREEN_AUTO_BRIGHTNESS_ADJ, 1.5f); + System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS, 115); mController.updateState(mPreference); verify(mPreference).setSummary("100%"); - System.putFloat(mContentResolver, System.SCREEN_AUTO_BRIGHTNESS_ADJ, -1.5f); + System.putInt(mContentResolver, System.SCREEN_BRIGHTNESS, -10); mController.updateState(mPreference); verify(mPreference).setSummary("0%");