|
|
ca7f815 |
From 24e682d0fcc98d7c3f63fa484cc28285df48b499 Mon Sep 17 00:00:00 2001
|
|
|
ca7f815 |
From: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
ca7f815 |
Date: Wed, 25 Mar 2009 13:08:27 +1000
|
|
|
ca7f815 |
Subject: [PATCH] dix: ignore non-pointer events in XineramaCheckMotion (#20557)
|
|
|
ca7f815 |
|
|
|
ca7f815 |
Note that deviceKeyButtonPointer and keyButtonPointer have the same wire
|
|
|
ca7f815 |
layout, so we only need to check for event types.
|
|
|
ca7f815 |
|
|
|
ca7f815 |
X.Org Bug 20557 <http://bugs.freedesktop.org/show_bug.cgi?id=20557>
|
|
|
ca7f815 |
|
|
|
ca7f815 |
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
ca7f815 |
---
|
|
|
ca7f815 |
dix/events.c | 17 +++++++++++++++++
|
|
|
ca7f815 |
1 files changed, 17 insertions(+), 0 deletions(-)
|
|
|
ca7f815 |
|
|
|
ca7f815 |
diff --git a/dix/events.c b/dix/events.c
|
|
|
ca7f815 |
index 6743cae..63b0674 100644
|
|
|
ca7f815 |
--- a/dix/events.c
|
|
|
ca7f815 |
+++ b/dix/events.c
|
|
|
ca7f815 |
@@ -625,6 +625,23 @@ XineramaCheckMotion(xEvent *xE, DeviceIntPtr pDev)
|
|
|
ca7f815 |
|
|
|
ca7f815 |
if (xE && !syncEvents.playingEvents)
|
|
|
ca7f815 |
{
|
|
|
ca7f815 |
+ /* GetPointerEvents() guarantees that pointer events have the correct
|
|
|
ca7f815 |
+ rootX/Y set already. */
|
|
|
ca7f815 |
+ switch(xE->u.u.type)
|
|
|
ca7f815 |
+ {
|
|
|
ca7f815 |
+ case ButtonPress:
|
|
|
ca7f815 |
+ case ButtonRelease:
|
|
|
ca7f815 |
+ case MotionNotify:
|
|
|
ca7f815 |
+ break;
|
|
|
ca7f815 |
+ default:
|
|
|
ca7f815 |
+ if (xE->u.u.type == DeviceButtonPress ||
|
|
|
ca7f815 |
+ xE->u.u.type == DeviceButtonRelease ||
|
|
|
ca7f815 |
+ xE->u.u.type == DeviceMotionNotify)
|
|
|
ca7f815 |
+ break;
|
|
|
ca7f815 |
+ /* all other events return FALSE */
|
|
|
ca7f815 |
+ return FALSE;
|
|
|
ca7f815 |
+ }
|
|
|
ca7f815 |
+
|
|
|
ca7f815 |
/* Motion events entering DIX get translated to Screen 0
|
|
|
ca7f815 |
coordinates. Replayed events have already been
|
|
|
ca7f815 |
translated since they've entered DIX before */
|
|
|
ca7f815 |
--
|
|
|
ca7f815 |
1.6.0.6
|
|
|
ca7f815 |
|