libinput repository created
peter.hutterer at who-t.net
Mon Jan 27 19:48:49 PST 2014
after a bit of waiting time, we now have libinput in a fresh, still warm
repository on freedesktop:
libinput is the weston input handling code forked off into a library. The
goal of libinput is to provide a common code base for the various
input-device related bits we need in all compositors. There's little point
to every compositor having a separate implementation for touchpad tapping,
Since Jonas' original announcement in November a few bits and pieces have
changed. If you haven't followed the history on Jonas' github repository,
here is a short summary:
* the API is an event-based API as opposed to the original interface API, so
the basic interaction with libinput is libinput_dispatch() followed by
libinput_get_event() for the actual event handling in the compositor.
The event types are one high-level type (libinput_event) and one for each
logical group of events (libinput_event_pointer, libinput_event_keyboard,
...), each of which with their own accessors.
* plenty of doxygen documentation was added, so it looks almost like a
well-documented library now ;)
* the udev discovery code is now inside libinput, so a simple
libinput_create_from_udev() is enough to get libinput onto the device list
* a path-based backend was added (mainly for Xorg drivers and the test
suite) to create a context from a single device node
* a test suite was added, still needs a few more tests but it's coming along
* seat events were removed as top-level events, libinput provides device
added/removed events and if seat information is needed it can be obtained
from the device directly
I've collected the usual links and basic information on a small wiki page:
Note that the project is still quite young, the actual code on features not
related to transforming it to a library has changed very little so don't
expect it to behave much different to what weston already uses.
Specificially, two big bits that are currently missing are device capability
discovery (is this a touchpad? what's the x axis resolution?) and a
configuration interface (tapping enabled or disabled?). This will come over
the next weeks and months.
This email is mostly a heads-up that the project exists 'officially' now.
And we'll be using wayland-devel as the discussion and patch review list, so
expect to see a number of patches heading straight for here. Do chime in and
More information about the wayland-devel