xbmc/xbmc — pull request #1056 by Montellese (2012-06-08 15:49:53+00:00)
Title: JSON-RPC SendKey, ExecuteAction, ShowCodec and ShowOSD in Input namespace

This PR adds the methods Input.ShowCodec and Input.ShowOSD on joethefox's request for the official remote app. Furthermore I've added the generic methods Input.SendKey and Input.ExecuteAction. The former takes a string (because a unicode character can be more than a single (ASCII) character) and picks/processes the first unicode character and can therefore be used to send (almost) any key to XBMC e.g. to emulate a keyboard in a remote control app. The latter takes an action and executes it. More sophisticated actions like ExecBuiltIn() are not supported because they can't be validated against a static string in JSON-RPC.

There seems to be quite an interest in Input.SendKey because it would allow clients to do all the input through JSON-RPC and they can drop the EventServer implementation. I've just added Input.ExecuteAction because it belongs in the same area as Input.SendKey but I have to admit that I wouldn't object to removing it from the PR again.