diff mbox series

hw/display/xenfb: Simulate auto-repeat key events

Message ID 20171027201207.5979-1-lyan@suse.com
State New
Headers show
Series hw/display/xenfb: Simulate auto-repeat key events | expand

Commit Message

Liang Yan Oct. 27, 2017, 8:12 p.m. UTC
New tigervnc server changes the way to send long pressed key,
from "down up down up ..." to "down down ... up". So we insert
an up event after each key down event to simulate auto-repeat
key events for xen keyboard frontend driver.

Signed-off-by: Liang Yan <lyan@suse.com>

---
 hw/display/xenfb.c | 3 +++
 1 file changed, 3 insertions(+)

-- 
2.14.2
diff mbox series

Patch

diff --git a/hw/display/xenfb.c b/hw/display/xenfb.c
index 8e2547ac05..a5f787a3f3 100644
--- a/hw/display/xenfb.c
+++ b/hw/display/xenfb.c
@@ -292,6 +292,9 @@  static void xenfb_key_event(void *opaque, int scancode)
     }
     trace_xenfb_key_event(opaque, scancode2linux[scancode], down);
     xenfb_send_key(xenfb, down, scancode2linux[scancode]);
+    if (down) { /* simulate auto-repeat key events */
+    xenfb_send_key(xenfb, 0, scancode2linux[scancode]);
+    }
 }
 
 /*