| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
libc that has support for 32 bit applications to use 64 bit
time_t supplies __USE_TIME_BITS64 define [1]
[1] https://sourceware.org/glibc/wiki/Y2038ProofnessDesign
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Henrik Rydberg <rydberg@bitmath.se>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This way, it can be used to specify the `absbits` array size (in
`mtdev_configure`) without making it a VLA.
VLAs are an optional feature in C11, and in this case we can determine
the array size statically.
This also matches the macros used in libevdev and libinput.
Signed-off-by: Michael Forney <mforney@mforney.org>
Signed-off-by: Henrik Rydberg <rydberg@bitmath.se>
|
|
|
|
|
|
| |
mtdev_set_slots() is only used internally, so it should be static.
Signed-off-by: Martin Kepplinger <martink@posteo.de>
|
|
|
|
|
|
|
|
|
| |
Make it possible to build the source out-of-tree. The gnome-continuous
build system does this by default.
Signed-off-by: Colin Walters <walters@verbum.org>
[rydberg@euromail.se: Resolve merge conflict]
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
| |
match_four.c:80:4: warning: implicit declaration of function 'abs'
[-Wimplicit-function-declaration]
*dist++ = abs(q->x - p->x) + abs(q->y - p->y);
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
|
| |
The 11 comes from the legacy API that we need to be binary compatible with.
Make this clear with a define and a comment.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
| |
src/Makefile.am:22: warning: 'INCLUDES' is the old name for 'AM_CPPFLAGS' (or '*_CPPFLAGS')
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
|
|
|
|
|
|
| |
From kernel 3.4, extraction of the MT slot state is supported
via the EVIOGMTSLOTS ioctl. This patch initializes the slots
using that information.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
| |
The new distance value was missing from the internal representation,
leading to memory corruption for devices supporting the event. Fixed
with this patch.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
| |
[rydberg@euromail.se: minor cleanup]
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
Saves us one goto label in mtdev_init.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
| |
In the upcoming 2.6.38 kernel, support for hovering is introduced.
Add the ABS_MT_DISTANCE to the extended set of handled ABS_MT events.
The change is binary compatible with existing libraries.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current mtdev is not ABI stable, and the upcoming additions
to the kernel api will break ABI. This patch starts the process
of keeping binary compatibility with old programs, by moving the
abi-specific parts under a special flag, MTDEV_NO_LEGACY_API,
and makes sure the internal parts compiles with MTDEV_NO_LEGACY_API
set. This way, older programs will still work, old programs will
still compile, and new programs will be able to use the additions.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
|
| |
This matcher is for up to four fingers, and has these properties:
* Approximately 1.4 times faster at 4 fingers
* Approximately 4.0 times faster at 2 fingers
* Roughly 100 lines of code
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
| |
In case mtdev is driving a non-MT device, basic dimensions are not set
properly. Fall back on ABS_X/Y and ABS_PRESSURE, such that basic
pointer operations can be supported through mtdev.
Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
|
|
|
|
|
|
|
| |
Applications may need to know the property mapping, and the plumbing
interface is actually supported, so install both headers.
Signed-off-by: Henrik Rydberg <rydberg@bitmath.org>
|
|
|
|
|
|
|
| |
This patch fixes the broken logic to detect the kernel MT slots protocol,
such that MT slots devices may pass through mtdev properly.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
| |
In order for make dist-gzip to work properly, all files needed
to build the system need to be listed. This patch adds the missing
header files to the sources directive.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
Correct the credits for the defuzz() function. Used under the MIT
license with permission from Vojtech Pavlik.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
This patch changes the package description title in all relevant
files, and touches up the README. All systems go.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
| |
[rydberg@euromail.se: minor fixups]
Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
|
|
| |
The current MT slot protocol allows any tracking id outside the range
specified by the device to denote an unused slot. This is difficult to
handle in userspace, since the valid range is unknown. This patch
tightens the definition of a valid tracking id to always lie in the
range [0, MT_ID_MAX], and uses the value -1 to denote an unused slot.
Acked-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
| |
Otherwise, we pull events, but return -1. We should send the events we
were able to retrieve for now.
Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Split the api into plumbing and porcelain layers and move the
plumbing part to its own optional header file.
The main usecase is to fetch events from the device, route them
through the converter and extract the processed events. To simplify
the API, replace the intermediate mtdev_pull() function by the
higher-level mtdev_get(). This function does all the required steps,
and has the same semantics as read().
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
| |
The current semantics, that a non-empty conversion pipe means
the device is not idle, is not very useful. This patch changes
the semantics to simply checking if the fetch buffer is empty,
and if there are no events to fetch from the device.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
When reading from non-blocking devices, it makes sense to read
all events available. This patch lets a zero max_events achieve that.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
The argument order in mtdev_fetch() differs from all other
usages involved the file descriptor. Fixed with this patch.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
This patch adds the mtdev_idle() function, which checks the kernel
device for activity. Useful when implementing timing logic.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|