core: Handle TouchUpdate with TouchPendingEnd as TouchEnd

The touch sequence is possibly unhandled, but we need a call
to meta_window_end_touch() so such touch sequences are notified
to the server, this would trigger the real TouchEnd event as
the touch is rejected, but should be a no-op the second time
This commit is contained in:
Carlos Garnacho 2011-09-02 23:16:15 +02:00
parent 50aa509ee1
commit 2a9a499841

View File

@ -94,7 +94,18 @@ meta_input_event_get_type (MetaDisplay *display,
type = ButtonRelease;
break;
case XI_TouchUpdate:
type = MotionNotify;
if (((XIDeviceEvent *) xev)->flags & XITouchPendingEnd)
{
/* Consider these events like TouchEnd, as we
* could still need to call XIAllowTouchEvents()
* for this touch sequence so we get the real
* TouchEnd event, handling this event type the
* second time it arrives should be a NO-OP.
*/
type = ButtonRelease;
}
else
type = MotionNotify;
break;
#endif /* HAVE_XTOUCH */
default: