[Patch 0/8] Pointer barriers
Peter Hutterer
peter.hutterer at who-t.net
Mon Feb 21 19:51:16 PST 2011
This patchset adds support for Pointer Barriers in the server (albeit
without per-device support).
Branch is available on cgit:
http://cgit.freedesktop.org/~whot/xserver/log/?h=pointer-barriers
Ajax already sent out the protocol/libXfixes patches a while ago, these
are required for this branch to build.
Notes on the PB support in general:
- having a pointer barrier specify which direction it doesn't work is very
confusing. Both from the client-side and whithin the server it was
counter-intuitive.
I'd prefer an interface like this
barrier = XFixesCreatePointerBarrier(dpy, DefaultRootWindow(dpy),
100, 0, 100, 200,
PointerBarrierPositiveX);
to block movement from left to right. The above call would currently block
all directions but let left-to-right movement through.
- The barrier itself is an "elevated" barrier, i.e. you cannot get onto the
pixel the barrier represents (from the blocking directions). This is
necessary to avoid trapped cursors when the barrier blocks both
directions. This needs to be either added to the protocol or I need to
spend the time to implement the exact protocol spec (top/left edge of the
pixel). The latter would result in x = barrier or x = barrier + 1,
depending on where you're coming from.
Cheers,
Peter
More information about the xorg-devel
mailing list