dix: move MD last.valuator update into fill_pointer_events
Don't update the MD where it's not expected, positionSprite should really just do that - position the sprite. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Daniel Stone <daniel@fooishbar.org>
This commit is contained in:
parent
3b36fd1b49
commit
32b289e46c
|
@ -844,12 +844,6 @@ positionSprite(DeviceIntPtr dev, int mode, ValuatorMask *mask,
|
|||
y = rescaleValuatorAxis(*screeny, NULL, dev->valuator->axes + 1,
|
||||
scr->height);
|
||||
|
||||
/* Update the MD's co-ordinates, which are always in screen space. */
|
||||
if (!IsMaster(dev) || !IsFloating(dev)) {
|
||||
DeviceIntPtr master = GetMaster(dev, MASTER_POINTER);
|
||||
master->last.valuators[0] = *screenx;
|
||||
master->last.valuators[1] = *screeny;
|
||||
}
|
||||
|
||||
if (valuator_mask_isset(mask, 0))
|
||||
valuator_mask_set_double(mask, 0, x);
|
||||
|
@ -1189,6 +1183,13 @@ fill_pointer_events(InternalEvent *events, DeviceIntPtr pDev, int type,
|
|||
pDev->last.valuators[i] = valuator_mask_get_double(&mask, i);
|
||||
}
|
||||
|
||||
/* Update the MD's co-ordinates, which are always in screen space. */
|
||||
if (!IsMaster(pDev) || !IsFloating(pDev)) {
|
||||
DeviceIntPtr master = GetMaster(pDev, MASTER_POINTER);
|
||||
master->last.valuators[0] = screenx;
|
||||
master->last.valuators[1] = screeny;
|
||||
}
|
||||
|
||||
event = &events->device_event;
|
||||
init_device_event(event, pDev, ms);
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user