Peter Hutterer 1dc0584
From c6c228e06f215091f13b74dd99e0ae9c99049771 Mon Sep 17 00:00:00 2001
Peter Hutterer 1dc0584
From: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer 1dc0584
Date: Wed, 23 Oct 2013 15:16:25 +1000
Peter Hutterer 1dc0584
Subject: [PATCH] dmx: queue button events with valid valuators
Peter Hutterer 1dc0584
Peter Hutterer 1dc0584
Setting POINTER_SCREEN with a unset valuator mask causes a jump to 0/0.
Peter Hutterer 1dc0584
Alternative implementation here would be to remove the POINTER_SCREEN flag,
Peter Hutterer 1dc0584
but that's likely more confusing to the casual reader.
Peter Hutterer 1dc0584
Peter Hutterer 1dc0584
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Peter Hutterer 1dc0584
---
Peter Hutterer 1dc0584
 hw/dmx/input/dmxevents.c | 4 +++-
Peter Hutterer 1dc0584
 1 file changed, 3 insertions(+), 1 deletion(-)
Peter Hutterer 1dc0584
Peter Hutterer 1dc0584
diff --git a/hw/dmx/input/dmxevents.c b/hw/dmx/input/dmxevents.c
Peter Hutterer 1dc0584
index 2875620..3fd6348 100644
Peter Hutterer 1dc0584
--- a/hw/dmx/input/dmxevents.c
Peter Hutterer 1dc0584
+++ b/hw/dmx/input/dmxevents.c
Peter Hutterer 1dc0584
@@ -725,7 +725,9 @@ dmxEnqueue(DevicePtr pDev, int type, int detail, KeySym keySym,
Peter Hutterer 1dc0584
     case ButtonPress:
Peter Hutterer 1dc0584
     case ButtonRelease:
Peter Hutterer 1dc0584
         detail = dmxGetButtonMapping(dmxLocal, detail);
Peter Hutterer 1dc0584
-        valuator_mask_zero(&mask);
Peter Hutterer 1dc0584
+        valuators[0] = e->xbutton.x;
Peter Hutterer 1dc0584
+        valuators[1] = e->xbutton.y;
Peter Hutterer 1dc0584
+        valuator_mask_set_range(&mask, 0, 2, valuators);
Peter Hutterer 1dc0584
         QueuePointerEvents(p, type, detail,
Peter Hutterer 1dc0584
                            POINTER_ABSOLUTE | POINTER_SCREEN, &mask);
Peter Hutterer 1dc0584
         return;
Peter Hutterer 1dc0584
-- 
Peter Hutterer 1dc0584
1.8.3.1
Peter Hutterer 1dc0584