diff --git a/dix/events.c b/dix/events.c index d454b8f3b..12c299a3b 100644 --- a/dix/events.c +++ b/dix/events.c @@ -1098,9 +1098,10 @@ EnqueueEvent(xEvent *xE, DeviceIntPtr device, int count) #endif sprite.hotPhys.x = XE_KBPTR.rootX; sprite.hotPhys.y = XE_KBPTR.rootY; - /* do motion compression */ + /* do motion compression, but not if from different devices */ if (tail && (tail->event->u.u.type == MotionNotify) && + (tail->device == device) && (tail->pScreen == sprite.hotPhys.pScreen)) { tail->event->u.keyButtonPointer.rootX = sprite.hotPhys.x;