[mutter/wip/multitouch: 69/73] core: Handle TouchUpdate with TouchPendingEnd as TouchEnd
- From: Carlos Garnacho <carlosg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter/wip/multitouch: 69/73] core: Handle TouchUpdate with TouchPendingEnd as TouchEnd
- Date: Mon, 31 Oct 2011 00:22:32 +0000 (UTC)
commit 2a9a499841f69755b8b818ddb36def857b723b4d
Author: Carlos Garnacho <carlosg gnome org>
Date: Fri Sep 2 23:16:15 2011 +0200
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
src/core/input-events.c | 13 ++++++++++++-
1 files changed, 12 insertions(+), 1 deletions(-)
---
diff --git a/src/core/input-events.c b/src/core/input-events.c
index c0110ff..c9f225c 100644
--- a/src/core/input-events.c
+++ b/src/core/input-events.c
@@ -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:
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]