Loading core/res/res/values/config.xml +7 −3 Original line number Diff line number Diff line Loading @@ -1178,9 +1178,13 @@ <integer-array name="config_dynamicHysteresisLuxLevels"> </integer-array> <!-- This flag requires config_dozeSensorLuxLevels to have one or more entries and only affects the screen brightness while dozing. The screen brightness of a device is based off of a ring buffer of the last n seconds of ambient light sensor sample readings. <!-- This flag requires config_dozeBrightnessBacklightValues to have two or more entries; it is recommended that config_screenBrightnessDoze be greater than or equal to all these entries since this value is used as the doze screen brightness until a new sensor sample is acquired. This flag only affects the screen brightness while dozing. The screen brightness of a device is based off of a ring buffer of the last n seconds of ambient light sensor sample readings. If this flag is true, then this buffer is cleared and the screen brightness is based off of ambient light sensor readings that are obtained while the device is dozing. This mode may Loading services/core/java/com/android/server/display/DisplayPowerController.java +12 −6 Original line number Diff line number Diff line Loading @@ -153,6 +153,9 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call // True if should use light sensor to automatically determine doze screen brightness. private final boolean mAllowAutoBrightnessWhileDozingConfig; // True if using only new sensor samples to automatically determine doze screen brightness. private boolean mUseNewSensorSamplesForDoze; // True if we should fade the screen while turning it off, false if we should play // a stylish color fade animation instead. private boolean mColorFadeFadesConfig; Loading Loading @@ -345,10 +348,10 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call com.android.internal.R.array.config_dozeSensorLuxLevels); int[] dozeBrightnessBacklightValues = resources.getIntArray( com.android.internal.R.array.config_dozeBrightnessBacklightValues); boolean useNewSensorSamplesForDoze = resources.getBoolean( mUseNewSensorSamplesForDoze = resources.getBoolean( com.android.internal.R.bool.config_useNewSensorSamplesForDoze); LuxLevels luxLevels = new LuxLevels(brightHysteresisLevels, darkHysteresisLevels, luxHysteresisLevels, useNewSensorSamplesForDoze, dozeSensorLuxLevels, luxHysteresisLevels, mUseNewSensorSamplesForDoze, dozeSensorLuxLevels, dozeBrightnessBacklightValues); Spline screenAutoBrightnessSpline = createAutoBrightnessSpline(lux, screenBrightness); Loading Loading @@ -671,10 +674,13 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call mAppliedAutoBrightness = false; } // Use default brightness when dozing unless overridden. if (brightness < 0 && (state == Display.STATE_DOZE || state == Display.STATE_DOZE_SUSPEND)) { // Use default brightness when dozing unless overridden or if collecting sensor samples. if (state == Display.STATE_DOZE || state == Display.STATE_DOZE_SUSPEND) { if (brightness < 0) { brightness = mScreenBrightnessDozeConfig; } else if (mUseNewSensorSamplesForDoze) { brightness = Math.min(brightness, mScreenBrightnessDozeConfig); } } // Apply manual brightness. Loading Loading
core/res/res/values/config.xml +7 −3 Original line number Diff line number Diff line Loading @@ -1178,9 +1178,13 @@ <integer-array name="config_dynamicHysteresisLuxLevels"> </integer-array> <!-- This flag requires config_dozeSensorLuxLevels to have one or more entries and only affects the screen brightness while dozing. The screen brightness of a device is based off of a ring buffer of the last n seconds of ambient light sensor sample readings. <!-- This flag requires config_dozeBrightnessBacklightValues to have two or more entries; it is recommended that config_screenBrightnessDoze be greater than or equal to all these entries since this value is used as the doze screen brightness until a new sensor sample is acquired. This flag only affects the screen brightness while dozing. The screen brightness of a device is based off of a ring buffer of the last n seconds of ambient light sensor sample readings. If this flag is true, then this buffer is cleared and the screen brightness is based off of ambient light sensor readings that are obtained while the device is dozing. This mode may Loading
services/core/java/com/android/server/display/DisplayPowerController.java +12 −6 Original line number Diff line number Diff line Loading @@ -153,6 +153,9 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call // True if should use light sensor to automatically determine doze screen brightness. private final boolean mAllowAutoBrightnessWhileDozingConfig; // True if using only new sensor samples to automatically determine doze screen brightness. private boolean mUseNewSensorSamplesForDoze; // True if we should fade the screen while turning it off, false if we should play // a stylish color fade animation instead. private boolean mColorFadeFadesConfig; Loading Loading @@ -345,10 +348,10 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call com.android.internal.R.array.config_dozeSensorLuxLevels); int[] dozeBrightnessBacklightValues = resources.getIntArray( com.android.internal.R.array.config_dozeBrightnessBacklightValues); boolean useNewSensorSamplesForDoze = resources.getBoolean( mUseNewSensorSamplesForDoze = resources.getBoolean( com.android.internal.R.bool.config_useNewSensorSamplesForDoze); LuxLevels luxLevels = new LuxLevels(brightHysteresisLevels, darkHysteresisLevels, luxHysteresisLevels, useNewSensorSamplesForDoze, dozeSensorLuxLevels, luxHysteresisLevels, mUseNewSensorSamplesForDoze, dozeSensorLuxLevels, dozeBrightnessBacklightValues); Spline screenAutoBrightnessSpline = createAutoBrightnessSpline(lux, screenBrightness); Loading Loading @@ -671,10 +674,13 @@ final class DisplayPowerController implements AutomaticBrightnessController.Call mAppliedAutoBrightness = false; } // Use default brightness when dozing unless overridden. if (brightness < 0 && (state == Display.STATE_DOZE || state == Display.STATE_DOZE_SUSPEND)) { // Use default brightness when dozing unless overridden or if collecting sensor samples. if (state == Display.STATE_DOZE || state == Display.STATE_DOZE_SUSPEND) { if (brightness < 0) { brightness = mScreenBrightnessDozeConfig; } else if (mUseNewSensorSamplesForDoze) { brightness = Math.min(brightness, mScreenBrightnessDozeConfig); } } // Apply manual brightness. Loading