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

Commit 597a9a91 authored by Yan Han's avatar Yan Han Committed by Automerger Merge Worker
Browse files

Merge "Fix OTT devices not reacting to messages in Standby" am: 4065fa64 am:...

Merge "Fix OTT devices not reacting to messages in Standby" am: 4065fa64 am: acc1ea43 am: 002a7924 am: 26d79e36

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2055913



Change-Id: Ie68861ab21f4f433be112ba9d040729dea6c408a
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents 2a2b27f8 26d79e36
Loading
Loading
Loading
Loading
+10 −5
Original line number Diff line number Diff line
@@ -83,7 +83,9 @@ public final class HdmiCecStandbyModeHandler {
    private final HdmiCecLocalDevice mDevice;

    private final SparseArray<CecMessageHandler> mCecMessageHandlers = new SparseArray<>();
    private final CecMessageHandler mDefaultHandler = new Aborter(
    private final CecMessageHandler mDefaultHandler;

    private final CecMessageHandler mAborterUnrecognizedOpcode = new Aborter(
            Constants.ABORT_UNRECOGNIZED_OPCODE);
    private final CecMessageHandler mAborterIncorrectMode = new Aborter(
            Constants.ABORT_NOT_IN_CORRECT_MODE);
@@ -95,6 +97,10 @@ public final class HdmiCecStandbyModeHandler {
            mUserControlProcessedHandler = new UserControlProcessedHandler();

    private void addCommonHandlers() {
        addHandler(Constants.MESSAGE_USER_CONTROL_PRESSED, mUserControlProcessedHandler);
    }

    private void addTvHandlers() {
        addHandler(Constants.MESSAGE_ACTIVE_SOURCE, mBystander);
        addHandler(Constants.MESSAGE_REQUEST_ACTIVE_SOURCE, mBystander);
        addHandler(Constants.MESSAGE_ROUTING_CHANGE, mBystander);
@@ -118,17 +124,13 @@ public final class HdmiCecStandbyModeHandler {
        addHandler(Constants.MESSAGE_REPORT_POWER_STATUS, mBypasser);
        addHandler(Constants.MESSAGE_GIVE_FEATURES, mBypasser);

        addHandler(Constants.MESSAGE_USER_CONTROL_PRESSED, mUserControlProcessedHandler);

        addHandler(Constants.MESSAGE_GIVE_DEVICE_POWER_STATUS, mBypasser);
        addHandler(Constants.MESSAGE_ABORT, mBypasser);
        addHandler(Constants.MESSAGE_GET_CEC_VERSION, mBypasser);

        addHandler(Constants.MESSAGE_VENDOR_COMMAND_WITH_ID, mAborterIncorrectMode);
        addHandler(Constants.MESSAGE_SET_SYSTEM_AUDIO_MODE, mAborterIncorrectMode);
    }

    private void addTvHandlers() {
        addHandler(Constants.MESSAGE_IMAGE_VIEW_ON, mAutoOnHandler);
        addHandler(Constants.MESSAGE_TEXT_VIEW_ON, mAutoOnHandler);

@@ -153,6 +155,9 @@ public final class HdmiCecStandbyModeHandler {
        addCommonHandlers();
        if (mDevice.getType() == HdmiDeviceInfo.DEVICE_TV) {
            addTvHandlers();
            mDefaultHandler = mAborterUnrecognizedOpcode;
        } else {
            mDefaultHandler = mBypasser;
        }
    }