evdev: fix xkb_state handling

We must pass X11 keycodes, not evdev ones, to libxkbcommon,
otherwise the modifier state is wrong.

https://bugzilla.gnome.org/show_bug.cgi?id=705710
This commit is contained in:
Giovanni Campagna 2013-08-09 10:53:31 +02:00
parent a3557f7a2f
commit d844cf5462

View File

@ -177,7 +177,7 @@ notify_key (ClutterEventSource *source,
stage,
source->xkb,
time_, key, state);
xkb_state_update_key (source->xkb, key, state ? XKB_KEY_DOWN : XKB_KEY_UP);
xkb_state_update_key (source->xkb, event->key.hardware_keycode, state ? XKB_KEY_DOWN : XKB_KEY_UP);
}
queue_event (event);