diff --git a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java index a66f473fb7897..e985e354f5663 100644 --- a/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java +++ b/services/core/java/com/android/server/hdmi/HdmiCecLocalDeviceTv.java @@ -556,6 +556,9 @@ final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { @ServiceThreadOnly private void clearDeviceInfoList() { assertRunOnServiceThread(); + for (HdmiCecDeviceInfo info : mSafeExternalInputs) { + mService.invokeDeviceEventListeners(info, false); + } mDeviceInfos.clear(); updateSafeDeviceInfoList(); } @@ -1129,6 +1132,7 @@ final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice { disableSystemAudioIfExist(); disableArcIfExist(); + clearDeviceInfoList(); checkIfPendingActionsCleared(); }