[RFC] Preliminary XI 2 feature list
jg at laptop.org
Mon Sep 15 08:06:57 PDT 2008
IIRC, XI 1 uses a byte for device number (the API is an int, the wire
protocol a byte).
This could become an issue for a large shared display wall environment
someday; seems like if there is a binary protocol break, making that
larger would be good.
The other question in my mind is should the wire protocol have provision
for multiple users, so that a device is a user/device # tuple? In which
case a byte on the wire is fine, as it seems unlikely an individual will
sprout more that 256 input devices.
On Tue, 2008-09-09 at 05:45 +0930, Peter Hutterer wrote:
> Following XDS, various notes, the discussions and preliminary executive
> decisions by me, here's a first draft of XI2 features. If you have anything to
> add, please speak up.
> Time-line: I'd like to get it into server 1.6 but it doesn't look particularly
> likely. 7.5 is more likely.
> - Compatibility with XI 1.x, although some requests will be deactivated or of
> limited functionality.
> - 16 bit device IDs
> - All events available as XGE events.
> - Event selection through event masks (instead or in addition to the event
> classes). i.e. the common cases of "select from all devices" and "select
> from all master devices" will be simplified.
> - Devices may have relative + absolute axes simultaneously, and change the
> mode on any of these axes at runtime.
> - Relative coordinates as a separate event.
> - 32 bit keycodes (reliant on XKB2)
> - ListInputDevices will include the currently attached Slave
> - Axis and button labelling through device properties.
> - subpixel resolution (from relative devices) available to clients.
> i.e. you get the data in screen coordinates, but with subpixel resolution
> available as fixed floating point.
> - no window access protocol, this will be thrown out.
> - dynamic device classes - device may add/remove classes at runtime.
> - aspect-ratio scaling of valuators.
> Probable implementation details:
> - libXi: "namespacing": i.e. X<dosomething> will be XI<dosomething>
> - server-internal use of XGE events, XI 1.x events emulated when needed.
> - some standardisation on axis label Atom names.
> - Clients have to announce XI2 support, otherwise they will be treated as XI
> 1.x clients.
> Once the feature discussion is complete, I'll get a protocol spec out.
> xorg mailing list
> xorg at lists.freedesktop.org
Jim Gettys <jg at laptop.org>
One Laptop Per Child
More information about the xorg