[RFC/PATCH] Pointer barrier events (XI 2.3)
Peter Hutterer
peter.hutterer at who-t.net
Thu Dec 6 22:25:04 PST 2012
This is the protocol and client-side for the proposed XI 2.3 extension for
pointer barrier events and barrier release requests. This feature adds two
things:
- if a pointer hits a barrier, events are sent to selected clients
- a client may "release" the pointer, allowing it to pass through the
barrier with the next movement.
This enables two distinct user-visible features:
- hot corners/edges that respond to pushing against them (GNOME3 wants this)
- ad-hoc transparent barriers, so that depending on the speed of the
pointer the user can move through the barrier (Unity wants this)
Potential/current issues:
- grab behaviour is different to other events
- loss of predictable pointer acceleration across a barrier. In my tests, I
have not found this to be noticable
- device-specific release has not yet been implemented
- one of the passive grab tests currently fails
For a full view of the
development history plus server and tests see the following repos:
git://people.freedesktop.org/~whot/inputproto.git :barriers
git://people.freedesktop.org/~whot/libXi.git :barriers
git://people.freedesktop.org/~whot/xserver.git :barriers
git://people.freedesktop.org/~whot/xorg-integration-tests.git :barriers
Many thanks to Jasper and Chris, who did most of the work here.
I think this is a valuable addition to 1.14, unless someone can find
significant issues with the protocol as it is proposed here. Should we merge
this for 1.14, I do reserve the right to disable this feature in the server
before the release, unless we have a credible client-side implementation.
We've learned the lesson with smooth scrolling that a server-implementation
only is not good enough.
Comments appreciated.
Cheers,
Peter
More information about the xorg-devel
mailing list