[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