| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
Define three-finger vertical and horizontal scroll as vertical and
horizontal swipe gestures.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
| |
Define four additional buttons to be used for swiping gestures.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
| |
Move the duplicated scrolling code to a function.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
|
|
| |
With this patch, finger motion is divided into two phases; one attack
phase where fingers are added to the trackpad, and one decay phase, where
fingers leave the trackpad. The decay delay is set considerably larger
than the attack delay. The prime effect is to ignore accidental pointer
movement right after a two-finger scroll.
Signed-off-by: Arturo Castro <arturo@openframeworks.cc>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
|
| |
The current code responds to finger movement immediately after
a finger has been placed on the trackpad, even if the touch is
accidental. This patch delays the effect of the finger by 70 ms,
resulting in fewer accidental movements.
Signed-off-by: Arturo Castro <arturo@openframeworks.cc>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
|
| |
The kernel filtering is bypassed for MT events. This patch reintroduces
filtering at the earliest possible point, right after the fingers have
been identified. For drivers that do not set proper fuzz parameters,
sensible values are derived based on a generic signal-to-noise ratio.
The defuzz code is borrowed from the Linux kernel, thanks GPL.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
| |
The button extraction currently modifies the MTState buttons,
upsetting the semantics in a bad way. This patch adds the logical
button state to the Memory structure, and uses it to compute the
logical button change.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
| |
The current code would extract movement from a rapid change
from one finger to the next, resulting in unwanted jumps. This
patch first checks that the finger configuration is the same
before attempting to extract movement.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
Break out extraction of movement, buttons and type. Only code
traversal, no logical changes.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
| |
Add the Memory structure to hold the multitouch parsing state.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
The fingers are currently sorted in tracking id order, for no
good reason. This patch removes the sorting.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The HWState keeps, for good reason, both touching fingers and fingers
going away. However, this implies that additional logic is needed to
keep track of the number of actual touching fingers. In particular
the test for touching fingers is somewhat misplaced in hwstate.c.
Moreover, HWState should only exist in one instance, since it contains
data which does not need to be referred to during gesture extraction.
This patch introduces the MTState structure, which keeps more digested
data for gesture extraction. In particular, it only keeps the actual
touches.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
Rename the hardware state struct State to HWState, to make
room for additional state structures.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
|
| |
The horizontal three-finger swipe is currently defined
in the opposite direction to what is considered normal.
This patch reverses the order of the emitted buttons,
restoring normality.
Signed-off-by: Arturo Castro <arturo@openframeworks.cc>
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
| |
The SYN_REPORT event time is equal to the time when the collective
event was produced in the kernel driver, and thus better represents
the actual device timings than the current arrival time.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is (obviously, from the recent commit flaws) a need to keep
a volatile branch for collaboration, to allow for digested commits
in master. The next branch will rebase occasionally, so one cannot
rely on commit ids from that branch.
This patch corrects the commit mistake for the third time, to never
change that line again.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
| |
|
|
|
|
|
|
|
|
|
| |
The recent patch sequence got slightly contaminated with versions
of abs15() by mistake. On top of it all, the one committed did the
wrong thing. This patch corrects abs15() to do simple clamping of
values outside the allowed range.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
| |
Expand the (x, y) notion of the current hardware events to
the more useful (x, y, t) notion. This patch was inspired
by a gesture patch from Arturo Castro <arturo@openframeworks.cc>.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
|
| |
The latest semantic clarifications in the kernel MT protocol allow
SYN_MT_REPORT to be sent without actually sending any finger data. Add
a mask to the hardware data so that the data actually read can be
tracked.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
The kernel MT api was recently updated to include the ABS_MT_PRESSURE event.
This patch adds it to the hardware structure.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
|
| |
In order to reduce the requirements on the cpu environment running
the matcher, the floating-point operations are converted to integer.
Care is taken as to not overflow the distance matrix.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
| |
Make the matcher support up to 32 fingers instead of the current 16.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
|
| |
The capability names are rather lengthy; this patch adds convenience
functions for the dimension capabilities.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
| |
|
|
|
|
|
|
| |
With this commit, the whole code base complies with the
kernel format style, and patches can be checked against
the kernel-provided ./scripts/checkpatch.pl
|
| |
|
|
|
|
| |
Janitory changes only.
|
|
|
|
|
| |
Make better use of the bit representation, reducing one
layer of conversion.
|
| |
|
| |
|
|
|
|
|
|
| |
Really too specialized behavior, so better off without it.
This reverts commit e880479ff29e57d8b47f08f620b4bccdd2683aa5.
|
| |
|
| |
|
|
|
|
|
| |
Running the driver daily produces a lot of debug output,
so turn it off by default.
|
|
|
|
|
| |
The buttons reported to X did not include the scrolling buttons,
effectively disabling scrolling alltogether. Fixed.
|
|
|
|
|
|
| |
All files are tagged as GPL, and a CREDIT file created with
references to the synaptics X driver and the matching code,
under their respective MIT and BSD licenses.
|
| |
|
|
|
|
| |
Signed-off-by: Mika Kuoppala <mika.kuoppala@nokia.com>
|
|
|
|
| |
Compiles on ubuntu versions Intrepid, Jaunty, Karmic.
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
| |
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
|
|
| |
to change it - yet.
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|
|
|
|
| |
Signed-off-by: Henrik Rydberg <rydberg@euromail.se>
|