summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKristian Høgsberg <krh@bitplanet.net>2012-01-05 12:07:42 -0500
committerKristian Høgsberg <krh@bitplanet.net>2012-03-27 09:32:00 -0400
commit95356d1bc17bb70ac8468679b4ec70669500dc9a (patch)
treef9d0dae374b3c7b5ab8bf21d76991f0d0d27fb22
parent6152844dee2f2a590ba996db8423d1ba8d90fc2d (diff)
Make SetDeviceRedirectWindow() work right with non-master devices
-rw-r--r--Xi/exevents.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/Xi/exevents.c b/Xi/exevents.c
index 348329923..88f408933 100644
--- a/Xi/exevents.c
+++ b/Xi/exevents.c
@@ -1918,9 +1918,13 @@ void
SetDeviceRedirectWindow(DeviceIntPtr dev, WindowPtr window)
{
SpritePtr pSprite = dev->spriteInfo->sprite;
+ DeviceIntPtr mouse;
+
+ mouse = (IsMaster(dev) || dev->u.master) ? GetMaster(dev, MASTER_POINTER) : dev;
pSprite->redirectWindow = window;
- CheckMotion(NULL, dev);
+
+ CheckMotion(NULL, mouse);
}
int