[PATCH] dix: Update pointer limits for floating devices too (#43635)

Peter Hutterer peter.hutterer at who-t.net
Sun Jan 8 21:19:53 PST 2012

When the screen is restructured, the pointer limits need to be reset for
floating slave devices as well, not just for master pointers. Only skip
devices that don't have a cursor (attached slaves and keyboard)

Bug reproducer: float an absolute slave device, rotate the screen - the
device is now confined to a section of the screen only.

X.Org Bug 43635 <http://bugs.freedesktop.org/show_bug.cgi?id=43635>

Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
 dix/events.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/dix/events.c b/dix/events.c
index daed46b..358e646 100644
--- a/dix/events.c
+++ b/dix/events.c
@@ -1368,7 +1368,7 @@ ScreenRestructured (ScreenPtr pScreen)
     for (pDev = inputInfo.devices; pDev; pDev = pDev->next)
-        if (!DevHasCursor(pDev))
+        if (!IsFloating(pDev) && !DevHasCursor(pDev))
         /* GrabDevice doesn't have a confineTo field, so we don't need to

More information about the xorg-devel mailing list