Commit graph

626 commits

Author SHA1 Message Date
Peter Hutterer
f3a6b0c685 Add a flag for blocking read
Not all clients need nonblocking read, so add a flag to read
in blocking mode. In that mode, events are only read from the fd when
the queue is empty.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-02 10:59:01 +10:00
Peter Hutterer
a10fc33cd8 If the caller doesn't sync when it should, process all events regardless
libevdev needs to maintain the correct state of the device, even if the caller
decides to drop all delta events after a SYN_DROPPED.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-02 10:58:57 +10:00
Peter Hutterer
d347e7d4e4 test: add test for abs and mt syncing
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 14:40:22 +10:00
Peter Hutterer
cca3cc95af Don't sync mt axes that don't exist
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 14:39:53 +10:00
Peter Hutterer
6f78a7adab test: test for trying to enable invalid abs axis
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 13:36:25 +10:00
Peter Hutterer
592d5167e4 test: add tests for mt event values
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 13:36:23 +10:00
Peter Hutterer
f7c580976c test: add tests for checking event values
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 13:36:20 +10:00
Peter Hutterer
3343076530 test: add new helper function for absolute events
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 13:12:20 +10:00
Peter Hutterer
3ad61372c8 test: add test for filtered event delivery
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 10:10:25 +10:00
Peter Hutterer
2ae4dc003a Don't deliver events that are filtered
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 10:10:25 +10:00
Peter Hutterer
0aa639b443 Disallow disabling of EV_SYN
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 10:10:25 +10:00
Peter Hutterer
bed8a95e0a gitignore: add generated doxygen file
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 10:10:25 +10:00
Peter Hutterer
b6f07ec222 test: add test for changing kernel abs values
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 10:10:22 +10:00
Peter Hutterer
5db85056a2 Require data be NULL when enabling a non-EV_ABS axis
In the future this may change, but for now enforce that callers use NULL.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 09:35:16 +10:00
Peter Hutterer
1baeedc953 test: add test for getting abs axis data
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 09:32:02 +10:00
Peter Hutterer
15df738068 test: copy absinfo over to the uinput_user_dev before creation
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 09:31:38 +10:00
Peter Hutterer
0954af8ec8 test: rename two loop variables to be more meaningful
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 09:26:29 +10:00
Peter Hutterer
ad656b1dc9 test: move a block out of the inner loop
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 09:25:19 +10:00
Peter Hutterer
f24a9b510d test: fix parameter name for uinput_device_set_abs_bit
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 08:54:39 +10:00
Peter Hutterer
96fc93df1a test: add two more tests for enabling/disabling invalid events.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 08:42:44 +10:00
Peter Hutterer
44d8696e7c doc: set doxygen to quiet mode
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 08:33:53 +10:00
Peter Hutterer
c22dd794bf Add more documentation to stop complaints about undocumented members
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-07-01 08:33:02 +10:00
Peter Hutterer
fe30bf7d96 Drop code for kernel-enabling bits
We can't enable axes on devices at runtime in the kernel, not even
for uinput devices. So this API can't work anyway, remove it before
someone thinks it does work.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-30 15:27:24 +10:00
Peter Hutterer
ca4b63d2b5 test: add test for kernel-enabling bits
This test fails because we can't actually enable bits at runtime, guess I
should've thought of that before. Either way, commit this test (and revert it
again) so the test is in the repository in case we do get this ability later.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-30 15:26:13 +10:00
Peter Hutterer
ea8c69c3e4 Change signature for kernel_enable_event_code to match enable_event_code
They do essentially the same thing, so the function signature should be null.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-29 18:29:41 +10:00
Peter Hutterer
f456a9dce4 test: use new convenience function for uinput device creation
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-29 18:19:50 +10:00
Peter Hutterer
baf248fa4a test: move device creation into a shared function
remove some of that code duplication in the tests.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-29 18:19:42 +10:00
Peter Hutterer
f9532700bc test: provide uinput convenience function for varargs
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-29 18:10:21 +10:00
Peter Hutterer
a30f4cfa8a test: prepare a common header file for all tests
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-29 18:00:42 +10:00
Peter Hutterer
6e5fc880c9 test: add tests for device bit manipulation
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-29 17:54:26 +10:00
Peter Hutterer
5bdd321d43 Return -1 for failing to enable/disable bits
as the documentation says

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-29 17:52:06 +10:00
Peter Hutterer
cbb2d1391b tools: add a tool to build and publish the documentation
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 13:18:28 +10:00
Peter Hutterer
20fb3fc875 test: close the right pipe fds
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 13:15:27 +10:00
Peter Hutterer
e8f059f235 test: fix a bunch of memory leaks
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 13:13:55 +10:00
Peter Hutterer
6374dcf532 test: fix valgrind complaint about uninitialized bytes
uinput ignores the timestamp, but add it anyway to stop valgrind
worrying about it.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 13:13:15 +10:00
Peter Hutterer
6482f9ad2a Add a FIXME to log a warning message
When a sync is complete and the first event is a SYN_DROPPED again,
we have a problem. Log that so that the process can print a warning.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 12:51:16 +10:00
Peter Hutterer
9ddd477f62 test: add test case for button deltas after SYN_DROPPED
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 11:25:51 +10:00
Peter Hutterer
bc285acd9a Add a flag for forcing a SYN_DROPPED event
uinput doesn't route a SYN_DROPPED, so we neeed to handle fds in
a rather complicated manner. For tests, avoid this and instead force
the library to sync if a specific flag is given.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 11:21:44 +10:00
Peter Hutterer
d844e3eb51 Build doc first, to see the warnings better
Leave the code warnings at the end of the build, makes them more visible.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 10:18:03 +10:00
Peter Hutterer
234bf1faa9 Expand main documentation to explain libevdev a bit more
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 09:31:55 +10:00
Peter Hutterer
16c4efc5aa README: Add link to API documentation
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 06:38:34 +10:00
Peter Hutterer
ec24e005c3 README: fix library name
libevdevdev was an old name for this library. libevemu is something
completely different.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-28 05:59:29 +10:00
Peter Hutterer
5a3d928ba6 tools: update libevdev-events to use the new LIBEVDEV_READ_NORMAL flag
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-27 14:28:23 +10:00
Peter Hutterer
7bf7b1d7c9 Improve documentation to libevdev_next_event
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-27 14:21:55 +10:00
Peter Hutterer
627b33cfe7 Require a flag for normal mode too
Makes the whole thing more explicit.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-27 14:20:03 +10:00
Peter Hutterer
671a1e2feb test: add test for event polling and SYN_DROPPED handling
Rudimentary only, but it's a start

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-27 13:32:38 +10:00
Peter Hutterer
27991828a6 test: don't check for a max on EV_SYN events
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-27 11:02:39 +10:00
Peter Hutterer
598bebfd92 test: add incomplete test for input props
Can't set those via uinput, so we're limited to making sure nothing
goes crazy.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-27 10:41:55 +10:00
Peter Hutterer
6b1440a58e tests: add two multitouch tests
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-27 10:41:55 +10:00
Peter Hutterer
bacceb4c48 test: add test case for device grabbing
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2013-06-27 10:41:55 +10:00