Hi all, I'm struggling with the QEMU VNC on qemu-kvm-1.2.0 a bit, the following two things are not working properly:
1) Shift key pressed and hold for several seconds causes multiple shift key press + release events => I would expect getting one press, one or more hold and one release event (minor issue) 2) German Umlaute and german keyboard layouts are not interpreted properly. I added some debug output into: static void do_key_event(VncState *vs, int down, int keycode, int sym) { printf("do_key_event1: %d %d %d\n",down,keycode,sym); and: void kbd_put_keycode(int keycode) { if (!runstate_is_running() && !runstate_check(RUN_STATE_SUSPENDED)) { return; } if (qemu_put_kbd_event) { printf("kbd_put_keycode: %d\n",keycode); qemu_put_kbd_event(qemu_put_kbd_event_opaque, keycode); } } This reports to me when e.g. pressing "#" on a german keyboard: do_key_event1: 1 4 35 kbd_put_keycode: 4 do_key_event1: 0 4 35 kbd_put_keycode: 132 => This results into a "3" on the guest side... And when I press the "3" on the german keyboard, I get the following events: do_key_event1: 1 4 51 kbd_put_keycode: 4 do_key_event1: 0 4 51 kbd_put_keycode: 132 => result is a "3", too... And when pressing one of the Umlaute (ä), I get a keymap error: Warning: no scancode found for keysym 228 do_key_event1: 1 0 228 kbd_put_keycode: 0 Warning: no scancode found for keysym 228 do_key_event1: 0 0 228 kbd_put_keycode: 128 do_key_event7: 0 0 228 => why is 228 not transported to the guest? this is definitvely the correct sign - according to the table in vnc_keysym.h ... { "adiaeresis", 0x0e4}, I tested it with several VNC clients - all with the same results. Any hints and ideas how to get it running properly would be great. When I use the same system directly via SDL and a real hardware keyboard, it works perfect - without changing anything in the qemu configuration even with different keyboard layouts (I tested US/International, German, French and Spain keyboards) Thanks. Best regards, Erik