Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 96c64c02 authored by Paul Colța's avatar Paul Colța Committed by Gerrit Code Review
Browse files

Merge "cec: resolve HdmiCecTvPowerToggleTest issue [1/1]"

parents 7591dd40 5271e515
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -1125,6 +1125,16 @@ abstract class HdmiCecLocalDevice {
        removeActionExcept(clazz, null);
    }

    // Remove all running actions.
    @ServiceThreadOnly
    void removeAllActions() {
        assertRunOnServiceThread();
        for (HdmiCecFeatureAction action : mActions) {
            action.finish(false);
        }
        mActions.clear();
    }

    // Remove all actions matched with the given Class type besides |exception|.
    @ServiceThreadOnly
    <T extends HdmiCecFeatureAction> void removeActionExcept(
+8 −0
Original line number Diff line number Diff line
@@ -229,6 +229,14 @@ public class HdmiCecLocalDeviceAudioSystem extends HdmiCecLocalDeviceSource {
        super.disableDevice(initiatedByCec, callback);
        assertRunOnServiceThread();
        mService.unregisterTvInputCallback(mTvInputCallback);
        // Removing actions and invoking the callback is similar to
        // HdmiCecLocalDevicePlayback#disableDevice and HdmiCecLocalDeviceTv#disableDevice,
        // with the difference that in those classes only specific actions are removed and
        // here we remove all actions. We don't expect any issues with removing all actions
        // at this time, but we have to pay attention in the future.
        removeAllActions();
        // Call the callback instantly or else it will be called 5 seconds later.
        checkIfPendingActionsCleared();
    }

    @Override