]>
Commit | Line | Data |
---|---|---|
eb44f68b JR |
1 | From 29d84d5a7ca4cc12cce47de9313adeb8554fb894 Mon Sep 17 00:00:00 2001 |
2 | From: Peter Hutterer <peter.hutterer@who-t.net> | |
3 | Date: Thu, 18 Oct 2012 15:11:31 +1000 | |
4 | Subject: [PATCH] dix: fix zaphod screen scrossing (#54654) | |
5 | ||
6 | POINTER_SCREEN coordinates are screen-relative. For a Zaphod setup, the | |
7 | coordinates after a screen crossing are already relative to the new screen's | |
8 | origin. Add that offset to the coordinates before re-setting. | |
9 | ||
10 | regression introduced by | |
11 | commit bafbd99080be49a17be97d2cc758fbe623369945 | |
12 | Author: Peter Hutterer <peter.hutterer@who-t.net> | |
13 | Date: Wed Aug 8 11:34:32 2012 +1000 | |
14 | ||
15 | dix: work around scaling issues during WarpPointer (#53037) | |
16 | ||
17 | X.Org Bug 54654 <http://bugs.freedesktop.org/show_bug.cgi?id=54654> | |
18 | ||
19 | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> | |
20 | --- | |
21 | dix/getevents.c | 5 +++-- | |
22 | 1 file changed, 3 insertions(+), 2 deletions(-) | |
23 | ||
24 | diff --git a/dix/getevents.c b/dix/getevents.c | |
25 | index 71d83c4..8b4379d 100644 | |
26 | --- a/dix/getevents.c | |
27 | +++ b/dix/getevents.c | |
28 | @@ -1400,8 +1400,9 @@ fill_pointer_events(InternalEvent *events, DeviceIntPtr pDev, int type, | |
29 | coordinates were. | |
30 | */ | |
31 | if (flags & POINTER_SCREEN) { | |
32 | - screenx = sx; | |
33 | - screeny = sy; | |
34 | + scr = miPointerGetScreen(pDev); | |
35 | + screenx = sx + scr->x; | |
36 | + screeny = sy + scr->y; | |
37 | } | |
38 | ||
39 | scr = positionSprite(pDev, (flags & POINTER_ABSOLUTE) ? Absolute : Relative, | |
40 | -- | |
41 | 1.7.11.7 | |
42 |