From 2fb95783e04eaf74fa8d051abd94341622a7e01e Mon Sep 17 00:00:00 2001 From: Andrey Zabolotnyi Date: Fri, 12 Jan 2018 02:26:12 +0300 Subject: 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 --- src/evdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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; } } -- cgit v1.2.3