Fix onStateChanged issue.

[Description]
inputState will override by wrong state
when call onStateChaned directly.

[Test Report]
Test pass

Bug: 196189979

Change-Id: I13377407c9ea9f4f0727edea5d57135c6569cba0
This commit is contained in:
Ping Fan
2021-09-07 12:17:43 +08:00
committed by daren.liao
parent 2823967c2d
commit 167d4a3c33

View File

@@ -1265,12 +1265,14 @@ class TvInputHardwareManager implements TvInputHal.Callback {
if (inputId != null) {
if (connection.updateCableConnectionStatusLocked(cableConnectionStatus)) {
if (previousCableConnectionStatus != connection.getInputStateLocked()) {
mListener.onStateChanged(inputId, connection.getInputStateLocked());
mHandler.obtainMessage(ListenerHandler.STATE_CHANGED,
connection.getInputStateLocked(), 0, inputId).sendToTarget();
}
} else {
if ((previousConfigsLength == 0)
!= (connection.getConfigsLengthLocked() == 0)) {
mListener.onStateChanged(inputId, connection.getInputStateLocked());
mHandler.obtainMessage(ListenerHandler.STATE_CHANGED,
connection.getInputStateLocked(), 0, inputId).sendToTarget();
}
}
}