Fix CTS test on devices not supporting concurrent display

In onSupportedStatesChanged and
updateRearDisplayPresentationStatusListeners, it tries to get the rear
display metrics, which will crash on devices without the mode.

Bug: 251747141
Test: atest ExtensionWindowLayoutComponentTest
Change-Id: I8698e62fdb414f798b9268d568119e9be2712f72
This commit is contained in:
Jiaming Liu
2023-02-03 06:37:24 +00:00
committed by Andrii Kulian
parent d159371dbd
commit 195aad55fa

View File

@@ -429,6 +429,9 @@ public class WindowAreaComponentImpl implements WindowAreaComponent,
@GuardedBy("mLock")
private void updateRearDisplayStatusListeners(@WindowAreaStatus int windowAreaStatus) {
if (mRearDisplayState == INVALID_DEVICE_STATE) {
return;
}
synchronized (mLock) {
for (int i = 0; i < mRearDisplayStatusListeners.size(); i++) {
mRearDisplayStatusListeners.valueAt(i).accept(windowAreaStatus);
@@ -454,6 +457,9 @@ public class WindowAreaComponentImpl implements WindowAreaComponent,
@GuardedBy("mLock")
private void updateRearDisplayPresentationStatusListeners(
@WindowAreaStatus int windowAreaStatus) {
if (mConcurrentDisplayState == INVALID_DEVICE_STATE) {
return;
}
RearDisplayPresentationStatus consumerValue = new RearDisplayPresentationStatus(
windowAreaStatus, getRearDisplayMetrics());
synchronized (mLock) {