From f7655c8788e6e7d5c7eebab51805135b0723d3da Mon Sep 17 00:00:00 2001 From: John Reck Date: Mon, 7 Aug 2023 17:24:24 -0400 Subject: [PATCH] invalidate if the colormode changes Bug: 294134660 Test: setColorMode() in a postDelayed; apk in bug Change-Id: Ib79551f05e58366e6ab988ac23c929f0b246b0b7 --- core/java/android/view/ViewRootImpl.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index b369c450cb73b..6edf0e24d5abf 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -1808,6 +1808,9 @@ public final class ViewRootImpl implements ViewParent, // Request to update light center. mAttachInfo.mNeedsUpdateLightCenter = true; } + if ((changes & WindowManager.LayoutParams.COLOR_MODE_CHANGED) != 0) { + invalidate(); + } if (mWindowAttributes.packageName == null) { mWindowAttributes.packageName = mBasePackageName; } @@ -5513,6 +5516,7 @@ public final class ViewRootImpl implements ViewParent, if (desiredRatio != mDesiredHdrSdrRatio) { mDesiredHdrSdrRatio = desiredRatio; updateRenderHdrSdrRatio(); + invalidate(); if (mDesiredHdrSdrRatio < 1.01f) { mDisplay.unregisterHdrSdrRatioChangedListener(mHdrSdrRatioChangedListener);