Loading services/core/java/com/android/server/hdmi/HdmiControlService.java +22 −17 Original line number Diff line number Diff line Loading @@ -379,7 +379,7 @@ public final class HdmiControlService extends SystemService { } mWakeUpMessageReceived = false; if (isTvDevice()) { if (isTvDeviceEnabled()) { mCecController.setOption(OPTION_CEC_AUTO_WAKEUP, toInt(tv().getAutoWakeup())); } int reason = -1; Loading Loading @@ -430,11 +430,15 @@ public final class HdmiControlService extends SystemService { setControlEnabled(enabled); break; case Global.HDMI_CONTROL_AUTO_WAKEUP_ENABLED: if (isTvDeviceEnabled()) { tv().setAutoWakeup(enabled); } setCecOption(OPTION_CEC_AUTO_WAKEUP, toInt(enabled)); break; case Global.HDMI_CONTROL_AUTO_DEVICE_OFF_ENABLED: if (isTvDeviceEnabled()) { tv().setAutoDeviceOff(enabled); } // No need to propagate to HAL. break; case Global.MHL_INPUT_SWITCHING_ENABLED: Loading Loading @@ -665,11 +669,7 @@ public final class HdmiControlService extends SystemService { @ServiceThreadOnly HdmiDeviceInfo getDeviceInfo(int logicalAddress) { assertRunOnServiceThread(); HdmiCecLocalDeviceTv tv = tv(); if (tv == null) { return null; } return tv.getCecDeviceInfo(logicalAddress); return tv() == null ? null : tv().getCecDeviceInfo(logicalAddress); } /** Loading Loading @@ -1431,8 +1431,8 @@ public final class HdmiControlService extends SystemService { runOnServiceThread(new Runnable() { @Override public void run() { if (!isTvDevice()) { Slog.w(TAG, "No TV is available."); if (!isTvDeviceEnabled()) { Slog.w(TAG, "TV device is not enabled."); return; } tv().startOneTouchRecord(recorderAddress, recordSource); Loading @@ -1446,8 +1446,8 @@ public final class HdmiControlService extends SystemService { runOnServiceThread(new Runnable() { @Override public void run() { if (!isTvDevice()) { Slog.w(TAG, "No TV is available."); if (!isTvDeviceEnabled()) { Slog.w(TAG, "TV device is not enabled."); return; } tv().stopOneTouchRecord(recorderAddress); Loading @@ -1462,8 +1462,8 @@ public final class HdmiControlService extends SystemService { runOnServiceThread(new Runnable() { @Override public void run() { if (!isTvDevice()) { Slog.w(TAG, "No TV is available."); if (!isTvDeviceEnabled()) { Slog.w(TAG, "TV device is not enabled."); return; } tv().startTimerRecording(recorderAddress, sourceType, recordSource); Loading @@ -1478,8 +1478,8 @@ public final class HdmiControlService extends SystemService { runOnServiceThread(new Runnable() { @Override public void run() { if (!isTvDevice()) { Slog.w(TAG, "No TV is available."); if (!isTvDeviceEnabled()) { Slog.w(TAG, "TV device is not enabled."); return; } tv().clearTimerRecording(recorderAddress, sourceType, recordSource); Loading Loading @@ -1800,6 +1800,10 @@ public final class HdmiControlService extends SystemService { return mLocalDevices.contains(HdmiDeviceInfo.DEVICE_TV); } boolean isTvDeviceEnabled() { return isTvDevice() && tv() != null; } private HdmiCecLocalDevicePlayback playback() { return (HdmiCecLocalDevicePlayback) mCecController.getLocalDevice(HdmiDeviceInfo.DEVICE_PLAYBACK); Loading Loading @@ -1907,7 +1911,7 @@ public final class HdmiControlService extends SystemService { assertRunOnServiceThread(); mLanguage = language; if (isTvDevice()) { if (isTvDeviceEnabled()) { tv().broadcastMenuLanguage(language); } } Loading Loading @@ -2131,6 +2135,7 @@ public final class HdmiControlService extends SystemService { @ServiceThreadOnly void changeInputForMhl(int portId, boolean contentOn) { assertRunOnServiceThread(); if (tv() == null) return; final int lastInput = contentOn ? tv().getActivePortId() : Constants.INVALID_PORT_ID; tv().doManualPortSwitching(portId, new IHdmiControlCallback.Stub() { @Override Loading Loading
services/core/java/com/android/server/hdmi/HdmiControlService.java +22 −17 Original line number Diff line number Diff line Loading @@ -379,7 +379,7 @@ public final class HdmiControlService extends SystemService { } mWakeUpMessageReceived = false; if (isTvDevice()) { if (isTvDeviceEnabled()) { mCecController.setOption(OPTION_CEC_AUTO_WAKEUP, toInt(tv().getAutoWakeup())); } int reason = -1; Loading Loading @@ -430,11 +430,15 @@ public final class HdmiControlService extends SystemService { setControlEnabled(enabled); break; case Global.HDMI_CONTROL_AUTO_WAKEUP_ENABLED: if (isTvDeviceEnabled()) { tv().setAutoWakeup(enabled); } setCecOption(OPTION_CEC_AUTO_WAKEUP, toInt(enabled)); break; case Global.HDMI_CONTROL_AUTO_DEVICE_OFF_ENABLED: if (isTvDeviceEnabled()) { tv().setAutoDeviceOff(enabled); } // No need to propagate to HAL. break; case Global.MHL_INPUT_SWITCHING_ENABLED: Loading Loading @@ -665,11 +669,7 @@ public final class HdmiControlService extends SystemService { @ServiceThreadOnly HdmiDeviceInfo getDeviceInfo(int logicalAddress) { assertRunOnServiceThread(); HdmiCecLocalDeviceTv tv = tv(); if (tv == null) { return null; } return tv.getCecDeviceInfo(logicalAddress); return tv() == null ? null : tv().getCecDeviceInfo(logicalAddress); } /** Loading Loading @@ -1431,8 +1431,8 @@ public final class HdmiControlService extends SystemService { runOnServiceThread(new Runnable() { @Override public void run() { if (!isTvDevice()) { Slog.w(TAG, "No TV is available."); if (!isTvDeviceEnabled()) { Slog.w(TAG, "TV device is not enabled."); return; } tv().startOneTouchRecord(recorderAddress, recordSource); Loading @@ -1446,8 +1446,8 @@ public final class HdmiControlService extends SystemService { runOnServiceThread(new Runnable() { @Override public void run() { if (!isTvDevice()) { Slog.w(TAG, "No TV is available."); if (!isTvDeviceEnabled()) { Slog.w(TAG, "TV device is not enabled."); return; } tv().stopOneTouchRecord(recorderAddress); Loading @@ -1462,8 +1462,8 @@ public final class HdmiControlService extends SystemService { runOnServiceThread(new Runnable() { @Override public void run() { if (!isTvDevice()) { Slog.w(TAG, "No TV is available."); if (!isTvDeviceEnabled()) { Slog.w(TAG, "TV device is not enabled."); return; } tv().startTimerRecording(recorderAddress, sourceType, recordSource); Loading @@ -1478,8 +1478,8 @@ public final class HdmiControlService extends SystemService { runOnServiceThread(new Runnable() { @Override public void run() { if (!isTvDevice()) { Slog.w(TAG, "No TV is available."); if (!isTvDeviceEnabled()) { Slog.w(TAG, "TV device is not enabled."); return; } tv().clearTimerRecording(recorderAddress, sourceType, recordSource); Loading Loading @@ -1800,6 +1800,10 @@ public final class HdmiControlService extends SystemService { return mLocalDevices.contains(HdmiDeviceInfo.DEVICE_TV); } boolean isTvDeviceEnabled() { return isTvDevice() && tv() != null; } private HdmiCecLocalDevicePlayback playback() { return (HdmiCecLocalDevicePlayback) mCecController.getLocalDevice(HdmiDeviceInfo.DEVICE_PLAYBACK); Loading Loading @@ -1907,7 +1911,7 @@ public final class HdmiControlService extends SystemService { assertRunOnServiceThread(); mLanguage = language; if (isTvDevice()) { if (isTvDeviceEnabled()) { tv().broadcastMenuLanguage(language); } } Loading Loading @@ -2131,6 +2135,7 @@ public final class HdmiControlService extends SystemService { @ServiceThreadOnly void changeInputForMhl(int portId, boolean contentOn) { assertRunOnServiceThread(); if (tv() == null) return; final int lastInput = contentOn ? tv().getActivePortId() : Constants.INVALID_PORT_ID; tv().doManualPortSwitching(portId, new IHdmiControlCallback.Stub() { @Override Loading