diff options
author | Gerd Hoffmann <kraxel@redhat.com> | 2012-02-23 15:24:24 +0100 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2012-02-27 11:13:26 +0100 |
commit | 299aa1c6df1a308cc4d49666e7eb75655c0d40ce (patch) | |
tree | beb19b5dc3839871a8016cdd1429f43f4485f723 /hw/usb-hid.c | |
parent | b4bd0b168e9f4898b98308f4a8a089f647a86d16 (diff) | |
download | qemu-299aa1c6df1a308cc4d49666e7eb75655c0d40ce.zip qemu-299aa1c6df1a308cc4d49666e7eb75655c0d40ce.tar.gz qemu-299aa1c6df1a308cc4d49666e7eb75655c0d40ce.tar.bz2 |
usb-hid: fix tablet activation
Activate usb hid pointer devices (mouse+tablet) unconditionally
on polls, even if we NAK the poll due to lack of new events.
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'hw/usb-hid.c')
-rw-r--r-- | hw/usb-hid.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/hw/usb-hid.c b/hw/usb-hid.c index 7fc0bd8..37bca78 100644 --- a/hw/usb-hid.c +++ b/hw/usb-hid.c @@ -466,6 +466,9 @@ static int usb_hid_handle_data(USBDevice *dev, USBPacket *p) case USB_TOKEN_IN: if (p->ep->nr == 1) { int64_t curtime = qemu_get_clock_ns(vm_clock); + if (hs->kind == HID_MOUSE || hs->kind == HID_TABLET) { + hid_pointer_activate(hs); + } if (!hid_has_events(hs) && (!hs->idle || hs->next_idle_clock - curtime > 0)) { return USB_RET_NAK; |