libinput requirements for feature parity with X

Peter Hutterer peter.hutterer at who-t.net
Tue Jan 28 18:18:23 PST 2014


Here's a list of features I consider the minimum to get something akin to
feature-parity with the current X.Org-based stack. This is not a wishlist
for features, it's a list of minimum requirements that covers 90% of the
user base.

keyboard:
I don't think there's much to do, keyboards are fairly simple and the hard
bits are handled in the client with XKB.

mouse-like pointer devices:
* middle mouse button emulation (left+right → middle)
* configuration interface for mouse button mapping, specifically left-handed
* lower-priority: wheel emulation
* lower-priority: rotation

direct-touch touchscreens:
* optional: configuration interface for rotation. can be achieved with the
  calibration matrix already

touchpads:
* clickpad-style software buttons
* middle mouse button emulation (for physical buttons)
* two/three-finger tapping + configuration interface
* edge scrolling
* support for Lenovo T440 style trackstick buttons
* disable-while-typing
* clickfinger handling
* lower-priority: palm detection
* lower-priority: accidental click detection

graphics tablets:
* extended axis event support
* tool change notification (could be just button events? not sure)
* interface to switch between relative and absolute mode
* device rotation
* touch-vs-pen event synchronization (disable touch while the pen is in use,
  etc.)

generic:
* type identifier interface, so that a compositor can tell that there's a
  touchpad present, or a mouse, or...
* configuration interfaces for the various settings
* device capability discovery interfaces for axis resolutions, number of
  buttons, etc.

Anything obvious I missed here?

Cheers,
   Peter


More information about the wayland-devel mailing list