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

Commit 2a070546 authored by Jinsuk Kim's avatar Jinsuk Kim Committed by Android (Google) Code Review
Browse files

Merge "Do not have HdmiControlService report deviceEvent for TV itself"

parents 7eca94c1 13c030e8
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -78,7 +78,7 @@ final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice {
     */
    void deviceSelect(int targetAddress, IHdmiControlCallback callback) {
        assertRunOnServiceThread();
        HdmiCecDeviceInfo targetDevice = mService.getDeviceInfo(targetAddress);
        HdmiCecDeviceInfo targetDevice = getDeviceInfo(targetAddress);
        if (targetDevice == null) {
            invokeCallback(callback, HdmiCec.RESULT_TARGET_NOT_AVAILABLE);
            return;
@@ -458,8 +458,11 @@ final class HdmiCecLocalDeviceTv extends HdmiCecLocalDevice {
    final void addCecDevice(HdmiCecDeviceInfo info) {
        assertRunOnServiceThread();
        addDeviceInfo(info);
        if (info.getLogicalAddress() == mAddress) {
            // The addition of TV device itself should not be notified.
            return;
        }
        mService.invokeDeviceEventListeners(info, true);
        // TODO: announce new device detection.
    }

    /**
+2 −1
Original line number Diff line number Diff line
@@ -158,6 +158,7 @@ public final class HdmiControlService extends SystemService {
        // A container for [Logical Address, Local device info].
        final SparseArray<HdmiCecLocalDevice> devices = new SparseArray<>();
        final SparseIntArray finished = new SparseIntArray();
        mCecController.clearLogicalAddress();
        for (int type : deviceTypes) {
            final HdmiCecLocalDevice localDevice = HdmiCecLocalDevice.create(this, type);
            localDevice.init();
@@ -189,7 +190,7 @@ public final class HdmiControlService extends SystemService {
        for (int i = 0; i < devices.size(); ++i) {
            int address = devices.keyAt(i);
            HdmiCecLocalDevice device = devices.valueAt(i);
            device.onAddressAllocated(address);
            device.handleAddressAllocated(address);
        }
    }