gdk,xi2: Set GDK_BUTTON1_MASK on touch events

GTK+ handles both touch and pointer events through the same
event handlers, so enable this modifier on touch events to
avoid much special casing.
This commit is contained in:
Carlos Garnacho
2011-12-24 14:38:32 +01:00
parent b1f4497697
commit fb35e29a19

View File

@@ -1190,6 +1190,9 @@ gdk_x11_device_manager_xi2_translate_event (GdkEventTranslator *translator,
event->button.state = _gdk_x11_device_xi2_translate_state (&xev->mods, &xev->buttons, &xev->group);
if (ev->evtype == XI_TouchBegin)
event->button.state |= GDK_BUTTON1_MASK;
#ifdef XINPUT_2_2
if (ev->evtype == XI_TouchBegin ||
ev->evtype == XI_TouchEnd)
@@ -1254,6 +1257,9 @@ gdk_x11_device_manager_xi2_translate_event (GdkEventTranslator *translator,
event->motion.state = _gdk_x11_device_xi2_translate_state (&xev->mods, &xev->buttons, &xev->group);
if (ev->evtype == XI_TouchUpdate)
event->motion.state |= GDK_BUTTON1_MASK;
/* There doesn't seem to be motion hints in XI */
event->motion.is_hint = FALSE;