[RFC] Preliminary XI 2 feature list

Peter Hutterer peter.hutterer at who-t.net
Mon Sep 8 13:15:27 PDT 2008

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.


More information about the xorg mailing list