evdev: Set button modifier state to input devices.

Input devices must get the proper button state, in addition to keyboard
modifiers.

https://bugzilla.gnome.org/show_bug.cgi?id=733062
This commit is contained in:
Carlos Garnacho 2014-07-11 15:30:29 +02:00
parent 8d669ab8ce
commit f6fd02970c

View File

@ -645,7 +645,8 @@ clutter_event_dispatch (GSource *g_source,
_clutter_stage_queue_event (event->any.stage, event, FALSE);
/* update the device states *after* the event */
event_state = xkb_state_serialize_mods (seat->xkb, XKB_STATE_MODS_EFFECTIVE);
event_state = seat->button_state |
xkb_state_serialize_mods (seat->xkb, XKB_STATE_MODS_EFFECTIVE);
_clutter_input_device_set_state (seat->core_pointer, event_state);
_clutter_input_device_set_state (seat->core_keyboard, event_state);
}