Merge "Don't update desired display mode specs for disabled displays" into udc-dev

This commit is contained in:
TreeHugger Robot
2023-03-28 12:19:14 +00:00
committed by Android (Google) Code Review
2 changed files with 10 additions and 2 deletions

View File

@@ -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;

View File

@@ -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);
}
}
}