HDMICEC: Create deviceselect shell command
Create deviceSelect method in HdmiControlShellCommand. The command's argument is representing the id of the device to be selected. Bug: 196934198 Test: make Change-Id: Ic3a92f15897898f3af30a452fc922a21a5cc3337
This commit is contained in:
@@ -92,6 +92,9 @@ final class HdmiControlShellCommand extends ShellCommand {
|
||||
pw.println(" Sets the System Audio Mode feature on or off on TV devices");
|
||||
pw.println(" setarc [on|off]");
|
||||
pw.println(" Sets the ARC feature on or off on TV devices");
|
||||
pw.println(" deviceselect <device id>");
|
||||
pw.println(" Switch to device with given id");
|
||||
pw.println(" The device's id is represented by its logical address.");
|
||||
}
|
||||
|
||||
private int handleShellCommand(String cmd) throws RemoteException {
|
||||
@@ -110,12 +113,30 @@ final class HdmiControlShellCommand extends ShellCommand {
|
||||
return setSystemAudioMode(pw);
|
||||
case "setarc":
|
||||
return setArcMode(pw);
|
||||
case "deviceselect":
|
||||
return deviceSelect(pw);
|
||||
}
|
||||
|
||||
getErrPrintWriter().println("Unhandled command: " + cmd);
|
||||
return 1;
|
||||
}
|
||||
|
||||
private int deviceSelect(PrintWriter pw) throws RemoteException {
|
||||
if (getRemainingArgsCount() != 1) {
|
||||
throw new IllegalArgumentException("Expected exactly 1 argument.");
|
||||
}
|
||||
int deviceId = Integer.parseInt(getNextArg());
|
||||
|
||||
pw.print("Sending Device Select...");
|
||||
mBinderService.deviceSelect(deviceId, mHdmiControlCallback);
|
||||
|
||||
if (!receiveCallback("Device Select")) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
return mCecResult.get() == HdmiControlManager.RESULT_SUCCESS ? 0 : 1;
|
||||
}
|
||||
|
||||
private int oneTouchPlay(PrintWriter pw) throws RemoteException {
|
||||
pw.print("Sending One Touch Play...");
|
||||
mBinderService.oneTouchPlay(mHdmiControlCallback);
|
||||
|
||||
Reference in New Issue
Block a user