Merge "Fixed a bug where the scrim could flash black when snoozing huns" into nyc-dev

This commit is contained in:
Selim Cinek
2016-05-23 19:25:55 +00:00
committed by Android (Google) Code Review

View File

@@ -322,6 +322,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener,
if (scrim instanceof ScrimView) { if (scrim instanceof ScrimView) {
float alpha2 = getDozeAlpha(scrim); float alpha2 = getDozeAlpha(scrim);
float alpha = 1 - (1 - alpha1) * (1 - alpha2); float alpha = 1 - (1 - alpha1) * (1 - alpha2);
alpha = Math.max(0, Math.min(1.0f, alpha));
((ScrimView) scrim).setScrimColor(Color.argb((int) (alpha * 255), 0, 0, 0)); ((ScrimView) scrim).setScrimColor(Color.argb((int) (alpha * 255), 0, 0, 0));
} else { } else {
scrim.setAlpha(alpha1); scrim.setAlpha(alpha1);
@@ -468,6 +469,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener,
PropertyValuesHolder[] values = previousAnimator.getValues(); PropertyValuesHolder[] values = previousAnimator.getValues();
float relativeDiff = alpha - previousEndValue; float relativeDiff = alpha - previousEndValue;
float newStartValue = previousStartValue + relativeDiff; float newStartValue = previousStartValue + relativeDiff;
newStartValue = Math.max(0, Math.min(1.0f, newStartValue));
values[0].setFloatValues(newStartValue, alpha); values[0].setFloatValues(newStartValue, alpha);
scrim.setTag(TAG_START_ALPHA, newStartValue); scrim.setTag(TAG_START_ALPHA, newStartValue);
scrim.setTag(TAG_END_ALPHA, alpha); scrim.setTag(TAG_END_ALPHA, alpha);