Find a file
Peter Hutterer b10444f82f Slots are now definitely zero-indexed, see recent kernel patch
doc: specify that ABS_MT_SLOT must have a minimum of 0

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-27 10:41:54 +10:00
doc Use doxygen instead of man pages 2013-06-27 10:41:54 +10:00
libevdev Slots are now definitely zero-indexed, see recent kernel patch 2013-06-27 10:41:54 +10:00
test test: add test for internal event queue 2013-06-27 10:41:54 +10:00
tools Switch tools to use libevdev_get_event_*_name interface 2013-06-04 11:39:33 +10:00
.gitignore Expose API for retrieving event names 2013-06-04 11:39:32 +10:00
configure.ac Use doxygen instead of man pages 2013-06-27 10:41:54 +10:00
COPYING libevdev is a library to handle evdev devices 2013-05-29 15:33:21 +10:00
libevdev.pc.in libevdev is a library to handle evdev devices 2013-05-29 15:33:21 +10:00
Makefile.am Use doxygen instead of man pages 2013-06-27 10:41:54 +10:00
README.md Update README 2013-06-03 15:25:15 +10:00

libevemu - wrapper library for evdev input devices

libevdevdev is a wrapper library for evdev devices. it moves the common tasks when dealing with evdev devices into a library and provides a library interface to the callers, thus avoiding erroneous ioctls, etc.

http://github.com/whot/libevdev

libevdev is currently in early stages of development. Use at your own risk

The eventual goal is that libevdev wraps all ioctls available to evdev devices, thus making direct access unnecessary.

ioctl wrappers

libevdev provides interfaces to query a device's capabilities, providing type-safe interfaces to query and set a device's capabilities and state.

SYN_DROPPED handling

SYN_DROPPED is sent by the kernel if userspace cannot keep up with the reporting rate of the device. Once the kernel's buffer is full, it will issue a SYN_DROPPED event signalling dropped event. The userspace process must re-sync the device.

libevdevdev semi-transparently handles SYN_DROPPED events, providing an interface to the caller to sync up device state without having to manually compare bitfields. Instead, libevdev sends the 'missing' events to the caller, allowing it to use the same event processing paths as it would otherwise.