Add SHOW_INPUT_PICKER remote command #561
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I noticed that there wasn't a remote command for showing the input picker.
I use an AVR, so all inputs are only tied to one HDMI port and show up as (virtual) CEC player inputs in the input picker (basically the same as #515). But selecting the input on the AVR doesn't help in cases where I need to interact with the TV via the Control Center remote after switching the input. This is because the TV doesn't register that the AVR switched sources and keeps sending subsequent CEC remote commands to the device that is no longer shown on the screen.
That's why I wanted to have the option to show the input picker from the Control Center remote.
After some searching I came across this guide which mentions that
com.webos.surfacemanager/showInputPickercan be used to show the input picker.With my proposed changes,
SHOW_INPUT_PICKERcan now be set e.g. inccRemoteRemapto make the input picker appear on screen.I've implemented this in a somewhat minimally invasive way as a part of
sendRemoteInputSocketCommand. This doesn't really fit the function's name anymore, since it's not using the remote input socket. It also means that the debug log output doesn't really match anymore. But I'm not sure if this could be implemented in a cleaner way without also making other major changes to how remote commands are handled.