diff options
author | Amos Kong <akong@redhat.com> | 2012-08-31 10:56:26 +0800 |
---|---|---|
committer | Luiz Capitulino <lcapitulino@redhat.com> | 2012-09-05 15:48:57 -0300 |
commit | e4c8f004c55d9da3eae3e14df740238bf805b5d6 (patch) | |
tree | 15dfdb6d109c4d093fa08e4f7fa79bfbaf29c6b1 /qmp-commands.hx | |
parent | 1048c88f03545fa42bdebb077871a743a614d2ab (diff) | |
download | hqemu-e4c8f004c55d9da3eae3e14df740238bf805b5d6.zip hqemu-e4c8f004c55d9da3eae3e14df740238bf805b5d6.tar.gz |
qapi: convert sendkey
Convert 'sendkey' to use QAPI.
QAPI passes key's index of mapping table to qmp_send_key(),
not keycode. So we use help functions to convert key/code to
index of key_defs, and 'index' will be converted to 'keycode'
inside qmp_send_key().
For qmp, QAPI would check invalid key and raise error.
For hmp, invalid key is checked in hmp_send_key().
'send-key' of QMP doesn't support key in hexadecimal format.
Signed-off-by: Amos Kong <akong@redhat.com>
Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
Diffstat (limited to 'qmp-commands.hx')
-rw-r--r-- | qmp-commands.hx | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/qmp-commands.hx b/qmp-commands.hx index 3745a21..470f08e 100644 --- a/qmp-commands.hx +++ b/qmp-commands.hx @@ -335,6 +335,34 @@ Example: EQMP { + .name = "send-key", + .args_type = "keys:O,hold-time:i?", + .mhandler.cmd_new = qmp_marshal_input_send_key, + }, + +SQMP +send-key +---------- + +Send keys to VM. + +Arguments: + +keys array: + - "key": key sequence (a json-array of key enum values) + +- hold-time: time to delay key up events, milliseconds. Defaults to 100 + (json-int, optional) + +Example: + +-> { "execute": "send-key", + "arguments": { 'keys': [ 'ctrl', 'alt', 'delete' ] } } +<- { "return": {} } + +EQMP + + { .name = "cpu", .args_type = "index:i", .mhandler.cmd_new = qmp_marshal_input_cpu, |