summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2017-04-20tools: fix typo in list-devices man pagePeter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-04-20doc: drop superfluous </pre> tagPeter Hutterer1-1/+0
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-04-04configure.ac: drop auto-detection of featuresPeter Hutterer1-61/+35
During the work with meson I realised auto-detection is not a good solution. Our dependencies should be well-defined for what is considered 'normal' and explicitly defined for any deviation from that normal build. The normal build includes docs, tools, tests, etc. because we expect developers to find errors in any of those. A distribution build may exclude some of these bits, but it should be explicitly specified by the distribution rather than having our build system guess what's not needed. This patch drops any auto-detection of features and replaces it with a hard yes/no. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-04-04Fix build instructions for openSUSENate Graham1-2/+12
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100527 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-04-01tablet: remove useless self-assignmentPeter Hutterer1-1/+0
Introduced in 230af3f9fcf Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-30udev: set size hint for the Apple Magic TrackpadPeter Hutterer1-0/+3
Not required because it sets the resolution in the kernel, but we have a generic "Apple touchpads" rule with a different size. Even though libinput won't use this property, let's override the generic one with the right dimensions. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-30test: unset MOUSE_DPI for the apple magic mousePeter Hutterer1-0/+19
As of systemd commit f013e99e160f385a0c02793c612ef4c8a8ffc4d7, ID_BUS is now set for all bluetooth devices, not just those with subsystem bluetooth. This affects the Apple Magic Mouse and sets the systemd hwdb's MOUSE_DPI value. That value is different to the test results we currently have, causing some tests to fail because different deltas are generated (e.g. pointer_scroll_button). Our udev rules are prefixed 99 and thus apply after the various system rules. So we can't easily set ID_BUS in our rule because it'll apply after 70-mouse.rules checks for the bustype. So we'd have to detect systemd version or so, but the easy way is to simply force MOUSE_DPI to the empty value. For our test cases it doesn't matter if the DPI is set correctly anyway. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-30test: fix udev rule for click count devicePeter Hutterer1-3/+3
Assigned click counts to other, unrelated devices Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-29touchpad: don't try to unhover touches in NONE statePeter Hutterer1-0/+3
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-28test: highlight the various state machines with colorsPeter Hutterer2-4/+34
Makes visual identification easier Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-28test: detect linebreaks in log messagesPeter Hutterer1-4/+6
If a single log message is composed of multiple calls (as are all from evdev_log_*), don't prefix multiple times. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-28test: add color to litest verbose outputPeter Hutterer3-7/+29
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-28test: align litest output messagesPeter Hutterer1-2/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-28test: drop unused variablePeter Hutterer1-4/+3
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-28evdev: fix typo in log messagePeter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-24tools: use 'required_argument'/'no_argument' for getopt_longPeter Hutterer1-27/+27
See the getopt_long example, makes the code more obvious Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-23Merge branch 'wip/tablet-wobbly-lines-v2'Peter Hutterer4-210/+440
2017-03-23tablet: add axis smoothingPeter Hutterer3-19/+110
Taking the tablet events as-is produces the occasional wobble in what should be a straight line. Bug 99961 has a jpg attachment to illustrate that. Emulate the wacom driver behavior and average x/y across the last 4 values to smoothen out these dents. https://bugs.freedesktop.org/show_bug.cgi?id=99961 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: reset delta and changed axes as soon as we send themPeter Hutterer1-5/+32
We don't have frame events for tablets so we must take care to send the axis change notifications only once and leave the others as-is. Most of the axes are absolute so it doesn't really matter, but we need to reset the delta to make sure clients don't receive the same delta twice. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: add assert that deltas are always 0Peter Hutterer1-0/+3
The tablet axis struct has a delta field that's only useful for the events, not for our internal axis handling. Make sure we never set it to anything nonzero. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: split point vs delta handling upPeter Hutterer1-33/+28
Handle the delta in the end once we've updated the device state for all axes. This requires us to use the device history rather than the current state delta, and it also requires us to update both x and y whenever an axis change comes in. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23table: move custom rotation handling into a helper functionPeter Hutterer1-27/+42
This is a bit hard to follow: - tilt is handled first and if either tilt axis is set we fetch *both* tilt axes into tablet->axes.tilt - rotation is handled second but it only triggers if either tilt axis is flagged. as we now guarantee to have both axes in tablet->axes.tilt, we can continue with the rotation conversion without needing some other state Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: reshuffle device axis updatesPeter Hutterer1-43/+34
This is prep work for axis smoothing. Modify the various helper functions to just update the state in the tablet and then grab the state later for better grouping. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: move the axis transforms to the endPeter Hutterer1-3/+3
No functional changes, part of the grouping of tablet axis manipulation vs. processing of that manipulated state. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: move delta processing downPeter Hutterer1-1/+2
No functional changes, this is just to group the calls that modify tablet axis state together and move the bits that rely on this state (but don't modify it) to the bottom. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: add a motion historyPeter Hutterer2-5/+65
Stores the processed axes values in a history 4 events deep. Currently unused but will be used to smoothen out axis values to avoid transducer-caused axis wobbles. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: move definition of tablet_axes downPeter Hutterer1-12/+12
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: reshuffle the event sending codePeter Hutterer1-87/+142
The current code modifies a bit of state inside the proximity_tip_down function which makes for confusing reading. Clean this up by having a bunch of helper functions for the various events. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: remove unnecessary out-of-proximity checkPeter Hutterer1-8/+1
This cannot trigger because we'd never get here if out-of-proximity is set, tablet_flush() will return early. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23tablet: drop unnecessary call to reset the changed axesPeter Hutterer1-1/+0
The only code path that leads here would see the changed_axes array zeroed out in tablet_send_axis_proximity_tip_down_events(), zeroing again is unlikely to make it more zero. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Acked-by: Ping Cheng <pingc@wacom.com>
2017-03-23touchpad: add touchpad pressure state debugging to debug outputPeter Hutterer1-1/+6
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-23configure.ac: libinput 1.7.0Peter Hutterer1-3/+3
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-23evdev: mark the new log functions as printf-style functionsPeter Hutterer2-2/+4
And fix up the one buggy call we had Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-23touchpad: add pressure ranges for cyapa touchpadsPeter Hutterer1-0/+3
https://bugs.freedesktop.org/show_bug.cgi?id=100122 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
2017-03-22tools: print axes, but not capabilities on proximity outPeter Hutterer1-32/+34
Print the axis values on proximity out because it a) ensures we have the right values and b) makes the output better aligned with the proximity in, so it's easier to spot in a log file. But don't print the tool capabilities because they're unrelated to the prox out anyway and again it makes the output easier to spot. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-14test: add missing linebreak to error messagePeter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-14test: fix tablet touch arbitration casePeter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-14test: don't use the same mouse twicePeter Hutterer1-2/+2
No effect since we don't care about the mouse itself. But when running on kernels without uinput's UI_GET_SYSNAME this can cause misdetection of the uinput device and test case failures. Simply picking a differently named device avoids that. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-10configure.ac: libinput 1.7rc2Peter Hutterer1-2/+2
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-10configure.ac: set AC_CONFIG_AUX_DIRPeter Hutterer1-0/+1
If not set, libtool will search directories up to ../.. for an install-sh and then dump the aux files there. This caused a couple of problems with the xorg release.sh script that now uses worktrees but is generally bad behaviour because we can't guarantee that we're not inside some other repository. Set AC_CONFIG_AUX_DIR to avoid this behavior. See https://lists.freedesktop.org/archives/xorg-devel/2017-March/053006.html Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-03-09doc: expand on the default tap settingsPeter Hutterer1-2/+6
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-08test: drop ABS_MT_PRESSURE from the bcm5974Peter Hutterer1-3/+0
This device only sends ABS_PRESSURE https://bugs.freedesktop.org/show_bug.cgi?id=100106 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-08doc: expand build instructinosPeter Hutterer1-10/+58
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-03-08touchpad: add elantech-specific pressure valuesPeter Hutterer1-3/+8
https://bugs.freedesktop.org/show_bug.cgi?id=99975 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
2017-03-02touchpad: ignore hovering touches for the software button statePeter Hutterer2-1/+33
If a touch started hovering in the main area, the button state would start with AREA and never move to the real button state, despite the finger triggering the pressure thresholds correctly in one of the areas. This could even happen across touch sequences if a touch went below pressure in the software button area, it changed to hovering and the button state changed to NONE. On the next event, the touch is still hovering and the current position of the touch is taken for the button state machine. https://bugs.freedesktop.org/show_bug.cgi?id=99976 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
2017-03-01tools: fix printing of tablet coordinatesPeter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-02-28touchpad: reduce minimum height for horiz edge scrolling to 40mmPeter Hutterer2-3/+3
Introduced in commit 8e7f99c27ab39 we only allowed horizontal edge scrolling on devices larger than 50mm to leave enough reactive space on the touchpad. Looking at a ruler, a 50mm high touchpad is still large enough to leave the bottom 7mm as an horizontal edge scroll area. Reduce the minimum size to 40mm instead, that's closer to where it starts to get a bit iffy. https://bugzilla.redhat.com/show_bug.cgi?id=1422221 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Hans de Goede <hdegoede@redhat.com>
2017-02-27tools: fix two comment typosPeter Hutterer1-1/+1
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-02-27Merge branch 'wip/log-function-rework'Peter Hutterer18-466/+481
2017-02-27tools: add mode group info to libinput-list-devicesPeter Hutterer1-1/+8
We don't cater for the special case of groups having a different number of modes, there is no hardware right now that does that. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Hans de Goede <hdegoede@redhat.com>