This patchset contains multiple changes for keyboard handling: - handle better raw events on Windows; - do client syncronization for modifiers if possible instead of always try to sync to guest and force. This reduces spurious key insertion. Most of the patches was already sent on the ML a reason for or another. The client modifier setting code for Windows is new and I tested (wrote a test problem) under Windows XP 32 bit, 7 64 bit and 10 64 bit. Tested the overall patches under Windows 7 and works very fine with different layout settings. Frediano Ziglio (9): widget: Do not ignore unsupported keys from keyboard widget: Do not mix function linkage widget: Always hook keyboard on Windows Move code to handle modifier in a specific file Add set_keyboard_lock_modifiers Avoid too much #ifdef inside set_keyboard_lock_modifiers functions Implements set_keyboard_lock_modifiers for Windows Add can_set_keyboard_lock_modifiers function Sync only on focus change src/Makefile.am | 2 + src/keyboard-modifiers.c | 714 +++++++++++++++++++++++++++++++++++++++++++ src/keyboard-modifiers.h | 36 +++ src/spice-gtk-session-priv.h | 2 +- src/spice-gtk-session.c | 126 ++++---- src/spice-widget.c | 69 +++-- tests/Makefile.am | 15 + tests/keyboard-test.c | 9 + 8 files changed, 878 insertions(+), 95 deletions(-) create mode 100644 src/keyboard-modifiers.c create mode 100644 src/keyboard-modifiers.h create mode 100644 tests/keyboard-test.c -- 2.7.4 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel