diff options
author | Frediano Ziglio <fziglio@redhat.com> | 2015-08-14 10:22:07 +0100 |
---|---|---|
committer | Frediano Ziglio <fziglio@redhat.com> | 2015-08-14 10:22:07 +0100 |
commit | 890ca81de7845f8b498cabf8e45135da0a321984 (patch) | |
tree | c6d067385c64c97f47b94ccf0f28b7cb0487831a | |
parent | 6927a77cae11578f9a2726a734f1f344aae59f5c (diff) |
Record keysym, not only keycode
This allow to have a different keyboard during replay.
Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
-rw-r--r-- | record.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -9,6 +9,7 @@ #ifdef HAVE_XI2 #include <X11/extensions/XInput2.h> #endif +#include <X11/XKBlib.h> #include "global.h" #include "rec.h" @@ -141,6 +142,9 @@ DoRecord::handle_xi_keys(XIDeviceEvent* ev) r.set_field(Record::State, ev->mods.effective); r.set_field(Record::Detail, ev->detail); r.set_field(Record::Window, win); + KeySym key = XkbKeycodeToKeysym(dpy, ev->detail, + 0, ev->mods.effective & ShiftMask ? 1 : 0); + r.set_field(Record::Keysym, key); file.put(r); } |