xfree86: don't set movement flags for non-valuator events.
If a device doesn't send valuators, don't try to move its position. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
This commit is contained in:
parent
aba8133c9c
commit
9cf055892d
|
@ -1015,10 +1015,13 @@ xf86PostMotionEventM(DeviceIntPtr device,
|
||||||
int dx = 0, dy = 0;
|
int dx = 0, dy = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (is_absolute)
|
if (valuator_mask_num_valuators(mask) > 0)
|
||||||
flags = POINTER_ABSOLUTE;
|
{
|
||||||
else
|
if (is_absolute)
|
||||||
flags = POINTER_RELATIVE | POINTER_ACCELERATE;
|
flags = POINTER_ABSOLUTE;
|
||||||
|
else
|
||||||
|
flags = POINTER_RELATIVE | POINTER_ACCELERATE;
|
||||||
|
}
|
||||||
|
|
||||||
#if XFreeXDGA
|
#if XFreeXDGA
|
||||||
/* The evdev driver may not always send all axes across. */
|
/* The evdev driver may not always send all axes across. */
|
||||||
|
@ -1160,10 +1163,13 @@ xf86PostButtonEventM(DeviceIntPtr device,
|
||||||
int index;
|
int index;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (is_absolute)
|
if (valuator_mask_num_valuators(mask) > 0)
|
||||||
flags = POINTER_ABSOLUTE;
|
{
|
||||||
else
|
if (is_absolute)
|
||||||
flags = POINTER_RELATIVE | POINTER_ACCELERATE;
|
flags = POINTER_ABSOLUTE;
|
||||||
|
else
|
||||||
|
flags = POINTER_RELATIVE | POINTER_ACCELERATE;
|
||||||
|
}
|
||||||
|
|
||||||
#if XFreeXDGA
|
#if XFreeXDGA
|
||||||
if (miPointerGetScreen(device)) {
|
if (miPointerGetScreen(device)) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user