Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3d9ce7bc authored by Dan Gittik's avatar Dan Gittik
Browse files

Added screen brightness override feedback.

Added code to reflect the screen brightness override in the brightness
slider, and reset any user changes to it to communicate that they're
not taking effect.

Test: manual (launch an app that sets the screen brightness override
      and see that it's reflected in the brightness slider, and that
      any user changes to it are reset).

Change-Id: Id6758e6fdfeb80a6c206d08215c1001a437a23c3
Fixes: 78006624
parent 682ca412
Loading
Loading
Loading
Loading
+12 −1
Original line number Diff line number Diff line
@@ -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) {