- Oct 24, 2018
-
-
Peter Hutterer authored
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Oct 21, 2018
-
-
Peter Hutterer authored
No need to pollute the namespace here. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Oct 19, 2018
-
-
Peter Hutterer authored
At least on MacBooks, the host emulates two clicks 8ms apart in response to a doubletap. Those clicks are filtered by our debouncing code. Since these are emulated devices anyway and by definition cannot have a stuck button, let's tag them so we don't enable the debouncing code. If the button of the physical device is stuck, that's a problem that needs to be fixed in the host system. Fixes #158 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Oct 18, 2018
-
-
Michał Kopeć authored
Lenovo X60 tablet has bezel buttons that are bound to the keyboard. They should not be disabled.
-
- Oct 16, 2018
-
-
Val Packett authored
The POSIX version of basename modifies the string (and therefore crashes on static strings), so use safe_strdup before calling it. glibc provides a POSIX version when libgen.h is included. FreeBSD 12 provides a POSIX version when nothing is included, which was causing a segfault. Using the POSIX version correctly is the right way to avoid any such issues.
-
- Oct 15, 2018
-
-
Peter Hutterer authored
Related #155 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
If a touch ends and starts again in the same frame, our touch count gets out of whack. This later triggers an assertion when the tap touch count mismatches the real tap count. E: 0.105005 0003 0039 -001 # EV_ABS / ABS_MT_TRACKING_ID -1 E: 0.105005 0003 0035 8447 # EV_ABS / ABS_MT_POSITION_X 8447 E: 0.105005 0003 0036 4479 # EV_ABS / ABS_MT_POSITION_Y 4479 E: 0.105005 0001 014a 0000 # EV_KEY / BTN_TOUCH 0 E: 0.105005 0001 0145 0000 # EV_KEY / BTN_TOOL_FINGER 0 E: 0.105005 0003 0039 0074 # EV_ABS / ABS_MT_TRACKING_ID 74 E: 0.105005 0003 0035 8388 # EV_ABS / ABS_MT_POSITION_X 8388 E: 0.105005 0003 0036 4480 # EV_ABS / ABS_MT_POSITION_Y 4480 E: 0.105005 0001 014a 0001 # EV_KEY / BTN_TOUCH 1 E: 0.105005 0001 0145 0001 # EV_KEY / BTN_TOOL_FINGER 1 E: 0.105005 0003 0000 8388 # EV_ABS / ABS_X 8388 E: 0.105005 0003 0001 4480 # EV_ABS / ABS_Y 4480 E: 0.105005 0000 0000 0000 # ------------ SYN_REPORT (0) ---------- +19ms This is a kernel bug but let's paper over here because otherwise we crash and that's considered impolite. Fixes #161 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Oct 10, 2018
-
-
Peter Hutterer authored
Copy/paste error in the hwdb to quirks transition Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Oct 08, 2018
-
-
Matthias Mayr authored
The special bezel buttons are associated to the keyboard and would therefore mistakenly be deactivated as well. See #154.
-
- Oct 04, 2018
-
-
Peter Hutterer authored
If a 2fg scroll motion starts with both fingers in the bottom button area and one finger moves into the main area before the other, we used to send motion events for that finger. Once the second finger moved into the main area the scroll was detected correctly but by then the cursor may have moved out of the intended focus area. We have two transitions where we may start sending motion events: when we move out of the bottom area and when the finger moves by more than 5mm within the button area. In both cases, check for any touches that are in the bottom area and started at the 'same' time as our moving touch. Mark those as 'moved' to release them for gestures so we get the right finger count and axis/gesture events instead of just motion events. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
There's one state with a name longer than allocated but it's virtually never triggered so let's just ignore the misalignment in that case. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Oct 03, 2018
-
-
Peter Hutterer authored
The shape of the average hand implies that two fingers down within the lower thumb area (the bottom few mm of the touchpad) cannot be thumbs without significant contortion. So let's not mark them as thumb. Fixes #126 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
We rely on the udev keyboard builtin to set the fuzz but that builtin isn't run during udevadm test. So running sudo udevadm test shows the LIBINPUT_FUZZ properties the first time round (still set from boot), but not the second time. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Oct 02, 2018
-
-
Peter Hutterer authored
tp_detect_thumb_while_moving() assumes that of the 2 fingers down, at least one must be in TOUCH_UPDATE, otherwise we wouldn't have a speed to analyze for thumb. If a touch starts in HOVERING and exceeds the speed limit, we were previously increasing the 'exceeded count'. This later leads to an assert() in tp_detect_thumb_while_moving() when the second finger comes down because although we have multiple fingers, none of them are in TOUCH_UPDATE. This only happens when fingers 2 and 3 come down in the same event frame, because then we have nfingers_down at 2 (the hovering one doesn't count) but we don't yet have a finger in TOUCH_UPDATE. Fix this twofold, first by now calculating the speed on anything but TOUCH_UPDATE. And second by force-resetting the speed count on TOUCH_BEGIN/TOUCH_END so we definitely cover all the hover transitions. Fixes #150 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Fixes #148 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Sep 28, 2018
-
-
Peter Hutterer authored
-
- Sep 27, 2018
-
-
Peter Hutterer authored
When we disable the touch device, any existing touches should be cancelled, not just released. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Because that's how we use it. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
This is a 0-360 ranged value, so let's print it aligned. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Sep 26, 2018
-
-
Peter Hutterer authored
This touchpad stops sending pressure data after the first frame of the second finger down. If the initial pressure is too light, the finger doesn't get detected even when the pressure increases in the future. This thing is from 2014, so let's just disable the pressure axes on it and skip the pressure-based touch detection code. Let's hope that it doesn't also have ghost touches on light interactions... Fixes #145 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Pretends to have a middle button where there is none. Fixes #142 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Sep 20, 2018
-
-
Peter Hutterer authored
Reduces the places we need to update bits for new quirks. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Anything that merely requires a once-off check during initialization can just use the quirks directly, no need to copy them over to the model flags. Fixes #146 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
-
Peter Hutterer authored
-
- Sep 18, 2018
-
-
Diego Rondini authored
Fix libinput_event_destroy call by passing the correct parameter (event) in the example code. Signed-off-by: Diego Rondini <diego.rondini@kynetics.com>
-
Peter Hutterer authored
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Sep 17, 2018
-
-
Peter Hutterer authored
The hwdb match entry used to be this one: libinput:name:*Elan Touchpad*:dt:* LIBINPUT_ATTR_PRESSURE_RANGE=10:8 from commit 596777a3. It was intended to match for devicetree only but the way the udev rules were composed, it ended up matching on any system. Restore that for all systems to have compatibility with 1.11. For this one, let's also add the resolution hint and hope that that works too. Fixes #140 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Copy/paste typos introduced in the hwdb to quirks transition Fixes #141 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Peter Hutterer authored
Was 0x800 in the hwdb, became 0x8000 in th quirks transition because of inflation, but let's pretend the economy is back to normal and devalue our currency. (aka: "it was a typo", whoops and whatnot) https://bugs.freedesktop.org/show_bug.cgi?id=104415 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
Bennett Hardwick authored
-
-
- Sep 14, 2018
-
-
Peter Hutterer authored
If sizeof(long) == sizeof(int), this test won't pass so let's drop it altogether. Fixes #137 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-
- Sep 12, 2018
-
-
Peter Hutterer authored
The previous check only worked if sizeof(long) > sizeof(int). Rather than be fancy about it, just cast to a signed long, check for negativity and continue based on that. Fixes #137 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-