diff options
| -rw-r--r-- | services/core/java/com/android/server/display/DisplayPowerController.java | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/display/DisplayPowerController.java b/services/core/java/com/android/server/display/DisplayPowerController.java index 5f4c8efd4d9e..cfec114941d0 100644 --- a/services/core/java/com/android/server/display/DisplayPowerController.java +++ b/services/core/java/com/android/server/display/DisplayPowerController.java @@ -760,8 +760,14 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call brightness = mScreenBrightnessForVr; } + boolean setBrightnessToOverride = false; if (brightness < 0 && mPowerRequest.screenBrightnessOverride > 0) { brightness = mPowerRequest.screenBrightnessOverride; + // If there's a screen brightness override, we want to reset the brightness to it + // whenever the user changes it, to communicate that these changes aren't taking + // effect. However, for a nicer user experience, we don't do it here, but rather after + // the temporary brightness has been taken into account. + setBrightnessToOverride = true; } final boolean autoBrightnessEnabledInDoze = @@ -784,6 +790,12 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call brightnessIsTemporary = true; } + // Reset the brightness to the screen brightness override to communicate to the user that + // her changes aren't taking effect. + if (setBrightnessToOverride && !brightnessIsTemporary) { + putScreenBrightnessSetting(brightness); + } + final boolean autoBrightnessAdjustmentChanged = updateAutoBrightnessAdjustment(); if (autoBrightnessAdjustmentChanged) { mTemporaryAutoBrightnessAdjustment = Float.NaN; @@ -867,7 +879,6 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call brightness = clampScreenBrightness(mCurrentScreenBrightnessSetting); } - // Apply dimming by at least some minimum amount when user activity // timeout is about to expire. if (mPowerRequest.policy == DisplayPowerRequest.POLICY_DIM) { |