diff options
| author | 2025-02-13 07:07:01 -0800 | |
|---|---|---|
| committer | 2025-02-13 07:07:01 -0800 | |
| commit | c79584098d267ec889ad56b5f37eaa110b70e686 (patch) | |
| tree | 90671a8bed59dc7cd6744529b7350c084cd6ba8d | |
| parent | 2110ae2227cf7cb7b9057d371689d112fe045d69 (diff) | |
| parent | 3e778317b11090891dbf751db436e570a9442290 (diff) | |
Merge "Request display change transition when canHostTasks changes" into main
| -rw-r--r-- | services/core/java/com/android/server/wm/DeferredDisplayUpdater.java | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/services/core/java/com/android/server/wm/DeferredDisplayUpdater.java b/services/core/java/com/android/server/wm/DeferredDisplayUpdater.java index 4eaa11bac016..f473b7b7e4fb 100644 --- a/services/core/java/com/android/server/wm/DeferredDisplayUpdater.java +++ b/services/core/java/com/android/server/wm/DeferredDisplayUpdater.java @@ -60,10 +60,11 @@ class DeferredDisplayUpdater { */ @VisibleForTesting static final DisplayInfoFieldsUpdater DEFERRABLE_FIELDS = (out, override) -> { - // Treat unique id and address change as WM-specific display change as we re-query display - // settings and parameters based on it which could cause window changes + // Treat unique id, address, and canHostTasks change as WM-specific display change as we + // re-query display settings and parameters based on it which could cause window changes. out.uniqueId = override.uniqueId; out.address = override.address; + out.canHostTasks = override.canHostTasks; // Also apply WM-override fields, since they might produce differences in window hierarchy WM_OVERRIDE_FIELDS.setFields(out, override); @@ -433,7 +434,7 @@ class DeferredDisplayUpdater { second.thermalRefreshRateThrottling) || !Objects.equals(first.thermalBrightnessThrottlingDataId, second.thermalBrightnessThrottlingDataId) - || first.canHostTasks != second.canHostTasks) { + ) { diff |= DIFF_NOT_WM_DEFERRABLE; } @@ -454,6 +455,7 @@ class DeferredDisplayUpdater { || !Objects.equals(first.displayShape, second.displayShape) || !Objects.equals(first.uniqueId, second.uniqueId) || !Objects.equals(first.address, second.address) + || first.canHostTasks != second.canHostTasks ) { diff |= DIFF_WM_DEFERRABLE; } |