Merge "Fix brightness curve when user sets slider to min." into rvc-dev am: 4736a08273

Change-Id: I0f53a3bdf2d53e112c1a67befb4eb9b2088470e4
This commit is contained in:
Fiona Campbell
2020-05-19 08:13:08 +00:00
committed by Automerger Merge Worker

View File

@@ -51,6 +51,11 @@ public abstract class BrightnessMappingStrategy {
private static final float MAX_GRAD = 1.0f;
private static final float SHORT_TERM_MODEL_THRESHOLD_RATIO = 0.6f;
// Constant that ensures that each step of the curve can increase by up to at least
// MIN_PERMISSABLE_INCREASE. Otherwise when the brightness is set to 0, the curve will never
// increase and will always be 0.
private static final float MIN_PERMISSABLE_INCREASE = 0.004f;
protected boolean mLoggingEnabled;
private static final Plog PLOG = Plog.createSystemPlog(TAG);
@@ -400,7 +405,9 @@ public abstract class BrightnessMappingStrategy {
for (int i = idx+1; i < lux.length; i++) {
float currLux = lux[i];
float currBrightness = brightness[i];
float maxBrightness = prevBrightness * permissibleRatio(currLux, prevLux);
float maxBrightness = MathUtils.max(
prevBrightness * permissibleRatio(currLux, prevLux),
prevBrightness + MIN_PERMISSABLE_INCREASE);
float newBrightness = MathUtils.constrain(
currBrightness, prevBrightness, maxBrightness);
if (newBrightness == currBrightness) {