diff options
author | 2023-03-28 12:19:14 +0000 | |
---|---|---|
committer | 2023-03-28 12:19:14 +0000 | |
commit | f1c4b2ef9970c1be70c1248cea1fac591d6af5cc (patch) | |
tree | 66d4c3a6a2376b3b952d4e13178bb1b14d85c591 | |
parent | 17d7b4b2a62797c933f19093ed78b3d10a3f1e60 (diff) | |
parent | ca58ae12c1060d5804254280cdeb5bfecc6a2c63 (diff) |
Merge "Don't update desired display mode specs for disabled displays" into udc-dev
-rw-r--r-- | services/core/java/com/android/server/display/DisplayManagerService.java | 3 | ||||
-rw-r--r-- | services/core/java/com/android/server/display/LogicalDisplayMapper.java | 9 |
2 files changed, 10 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/display/DisplayManagerService.java b/services/core/java/com/android/server/display/DisplayManagerService.java index ad5ae5f4d0d9..745e40411bad 100644 --- a/services/core/java/com/android/server/display/DisplayManagerService.java +++ b/services/core/java/com/android/server/display/DisplayManagerService.java @@ -4600,7 +4600,8 @@ public final class DisplayManagerService extends SystemService { public void onDesiredDisplayModeSpecsChanged() { synchronized (mSyncRoot) { mChanged = false; - mLogicalDisplayMapper.forEachLocked(mSpecsChangedConsumer); + mLogicalDisplayMapper.forEachLocked(mSpecsChangedConsumer, + /* includeDisabled= */ false); if (mChanged) { scheduleTraversalLocked(false); mChanged = false; diff --git a/services/core/java/com/android/server/display/LogicalDisplayMapper.java b/services/core/java/com/android/server/display/LogicalDisplayMapper.java index 250ba4350f1d..424eedc876ec 100644 --- a/services/core/java/com/android/server/display/LogicalDisplayMapper.java +++ b/services/core/java/com/android/server/display/LogicalDisplayMapper.java @@ -302,9 +302,16 @@ class LogicalDisplayMapper implements DisplayDeviceRepository.Listener { } public void forEachLocked(Consumer<LogicalDisplay> consumer) { + forEachLocked(consumer, /* includeDisabled= */ true); + } + + public void forEachLocked(Consumer<LogicalDisplay> consumer, boolean includeDisabled) { final int count = mLogicalDisplays.size(); for (int i = 0; i < count; i++) { - consumer.accept(mLogicalDisplays.valueAt(i)); + LogicalDisplay display = mLogicalDisplays.valueAt(i); + if (display.isEnabledLocked() || includeDisabled) { + consumer.accept(display); + } } } |