diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java index eae0b8e476140..9c4480e60efaa 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/ScrimController.java @@ -322,6 +322,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, if (scrim instanceof ScrimView) { float alpha2 = getDozeAlpha(scrim); 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)); } else { scrim.setAlpha(alpha1); @@ -468,6 +469,7 @@ public class ScrimController implements ViewTreeObserver.OnPreDrawListener, PropertyValuesHolder[] values = previousAnimator.getValues(); float relativeDiff = alpha - previousEndValue; float newStartValue = previousStartValue + relativeDiff; + newStartValue = Math.max(0, Math.min(1.0f, newStartValue)); values[0].setFloatValues(newStartValue, alpha); scrim.setTag(TAG_START_ALPHA, newStartValue); scrim.setTag(TAG_END_ALPHA, alpha);