libevdev_new() can only fail on allocation failures, but with an fd the
failure options are more. Split into a new function that can return an error
code.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Callbacks looked good on paper, but synaptics ran into an issue already that
it just couldn't easily pass around the state needed in the actual event
processing function.
Replace with a new interface that only returns the next event (still reading
more off the fd while doing so).
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Two main goals of this library:
- 'transparently' handle SYN_DROPPED events
- avoid errors in ioctl handling by providing a simpler interface.
Keeps a cached copy of the device for quick querying.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>