Those patches implement support for virDomainSendKey in the VBOX driver. Since
VBOX SDK does not support "holdtime" natively, it's being simulated by
using
usleep to wait for that time before "key-up" scancodes are sent. The
"key-up"
scancodes are automatically generated by add 0x80 to "key-down" scancodes. This
is done to make the implementation match the behavior of how QEMU driver handles
this, and therefore is different from what native VBoxManage command does - e.g.
one has to type in "key-up" scancodes explicitely and no hold time support at
all.
---
v1 (for reference):
https://www.redhat.com/archives/libvir-list/2015-March/msg01028.html
v2:
- add virReportError in all potentially failing code paths
- coding style adjustment
- mark for 1.2.15
Dawid Zamirski (2):
vbox: Register IKeyboard with the unified API.
vbox: Implement virDomainSendKey
src/vbox/vbox_common.c | 120 ++++++++++++++++++++++++++++++++++++++++++
src/vbox/vbox_common.h | 1 +
src/vbox/vbox_tmpl.c | 27 ++++++++++
src/vbox/vbox_uniformed_api.h | 8 +++
4 files changed, 156 insertions(+)
--
2.3.4