From 1a20f184c6945ba1c9754fd90e7f016d98329309 Mon Sep 17 00:00:00 2001 From: Kriti Dang Date: Wed, 3 Aug 2022 16:50:31 +0200 Subject: [PATCH] Ignore the preferredModeId for non-focussed windows If a window sets preferredModeId, and then enters pip mode. Then if the mode/refresh-rate/resolution is chosen by user from Settings menu, it doesn't take effect because of preferredModeId of the pip window. Bug: 232711732 Test: atest DisplayContentTests Change-Id: Ief48c38ff9dc85c9033d502cc4006130678ae808 Merged-In: Ief48c38ff9dc85c9033d502cc4006130678ae808 (cherry picked from commit 3f864738e23ce06cfcb6c35ed46677212476e67b) --- services/core/java/com/android/server/wm/DisplayContent.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/core/java/com/android/server/wm/DisplayContent.java b/services/core/java/com/android/server/wm/DisplayContent.java index ecb9fe3a00ccf..96e50195810af 100644 --- a/services/core/java/com/android/server/wm/DisplayContent.java +++ b/services/core/java/com/android/server/wm/DisplayContent.java @@ -946,7 +946,7 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp final int preferredModeId = getDisplayPolicy().getRefreshRatePolicy() .getPreferredModeId(w); - if (mTmpApplySurfaceChangesTransactionState.preferredModeId == 0 + if (w.isFocused() && mTmpApplySurfaceChangesTransactionState.preferredModeId == 0 && preferredModeId != 0) { mTmpApplySurfaceChangesTransactionState.preferredModeId = preferredModeId; }