diff options
author | Andrey Zabolotnyi <zapparello@ya.ru> | 2018-01-12 02:26:12 +0300 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2018-05-29 10:00:26 +1000 |
commit | 2fb95783e04eaf74fa8d051abd94341622a7e01e (patch) | |
tree | bee6d525a393cc7b046e5f9661f4fac624e415d3 | |
parent | 456f23cbbd95eacc682284ffdede54f9a16d0c7d (diff) |
Fix generation of proximity-in/out events.
Invoking xf86PostProximityEvent with no valuators does nothing, so we
have to provide a valid valuator set to the call.
https://bugs.freedesktop.org/show_bug.cgi?id=104562
[whot: slight change from 104562
abs_vals is reset on every frame but old_vals is kept around to remember the
last value of the valuator (and is updated to the current values before
processing the frame). We expect the prox in to have x/y, so let's just
unconditionally use old_vals for proximity events.]
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r-- | src/evdev.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/evdev.c b/src/evdev.c index d07ee0a..6b5eadd 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -915,7 +915,7 @@ EvdevPostProximityEvents(InputInfoPtr pInfo, int which) break; case EV_QUEUE_PROXIMITY: if (pEvdev->queue[i].val == which) - xf86PostProximityEvent(pInfo->dev, which, 0, 0); + xf86PostProximityEventM(pInfo->dev, which, pEvdev->old_vals); break; } } |