libinput issueshttps://gitlab.freedesktop.org/libinput/libinput/-/issues2024-03-28T09:14:05Zhttps://gitlab.freedesktop.org/libinput/libinput/-/issues/984Inertial scrolling doesn't stop when fingers are put back on touchpad2024-03-28T09:14:05ZQwertyChouskieInertial scrolling doesn't stop when fingers are put back on touchpad## Summary
I'm trying to switch from the old synaptics driver to libinput in preparation of the switch happening soon from Xorg to Wayland (explict sync is finally coming soon, so I see no good reason to stick with X11.) I'm already aw...## Summary
I'm trying to switch from the old synaptics driver to libinput in preparation of the switch happening soon from Xorg to Wayland (explict sync is finally coming soon, so I see no good reason to stick with X11.) I'm already aware that there's no simple way to match the speed/acceleration exactly from synaptics, so I'm aware that I'm going to need to re-train some muscle memory, but that's fine.
A big issue, however, is that inertial scrolling doesn't stop scrolling when you put two fingers back on the touchpad. This completely breaks the way I usually scroll through pages, flick to start a scroll then touch when I want to stop.
I know libinput offloads a lot of the work for inertial scrolling to the toolkits/applications, but I can't help but think some "stop scrolling" even is not being fired by libinput when it should be.
## Steps to reproduce
1. Launch Firefox (launch with `MOZ_USE_XINPUT2=1` if you are still on Xorg)
2. Scroll
3. touch your two fingers back down to try to stop the kinetic scroll
4. The kinetic scroll will only stop if you start another scroll action
## Required information
<!-- Note: if your libinput version is older than the current stable version,
please reproduce with a current version instead -->
- libinput version: 1.25.0-1 (Ubuntu 24.04)
- hardware information:
- `libinput record` output: do not paste, **attach** the file
- `libinput debug-events --verbose` output: do not paste, **attach the file**
<!--
Paste any other relevant logs - please use code blocks (```) to format
console output, logs, and code as it's very hard to read otherwise.)
Do not paste logs longer than 10 lines, **attach** those instead.
If your libinput record is longer than 5-10s, we will not be able to process
it.
-->https://gitlab.freedesktop.org/libinput/libinput/-/issues/983Libinput doesn't recognize Xbox controller, recognizes other controllers2024-03-27T19:40:20ZioletsgoLibinput doesn't recognize Xbox controller, recognizes other controllers## Summary
The handshake between the kernel recognizing exclusively an Xbox controller and Libinput recognizing it as a valid controller somehow gets lost; could be an upstream issue.
Plug In Xbox Controller on latest version of Libi...## Summary
The handshake between the kernel recognizing exclusively an Xbox controller and Libinput recognizing it as a valid controller somehow gets lost; could be an upstream issue.
Plug In Xbox Controller on latest version of Libinput on a Arch Linux KDE Plasma 6 desktop, feel the controller vibrate and the operating system play the "USB Device Paired" sound to signal a handshake taking place, type `libinput record`, notice xbox controller isn't in the list./
Plug in Switch Pro Controller using same cable, type `libinput record`, to be greeted with a list that includes the Switch Pro Controller
## Required information
- libinput version:
- 1.25.0
- hardware information:
```
OS: Arch Linux x86_64
Host: MS-7D54 1.0
Kernel: 6.8.1-arch1-1
Uptime: 14 mins
Shell: bash 5.2.26
DE: Plasma 6.0.2
WM: kwin
CPU: AMD Ryzen 7 5800X3D (16) @ 3.400GHz
GPU: AMD ATI Radeon RX 6700/6700 XT/6750 XT / 6800M/6850M XT
```
The two attachments are snippit of journalctl -b where I unplugged and replugged the xbox controller and the same process done on the Switch Pro Controller, which is confirmed working on libinput's part.
[xbox.log](/uploads/98b9f61f87a074d55b220b6f5693cb67/xbox.log)
[Switch.log](/uploads/b56c02bf295a85a16e05b6ab97c28a32/Switch.log)https://gitlab.freedesktop.org/libinput/libinput/-/issues/982[Touchpad] The option "Disable While Typing" is not taken into account2024-03-25T11:04:04ZGérard[Touchpad] The option "Disable While Typing" is not taken into account## Summary
<!--
Summarize the bug encountered concisely. See
https://wayland.freedesktop.org/libinput/doc/latest/reporting-bugs.html for
detailed instructions to report bugs
-->
Touchpad dwt deactivation is not taken into account by li...## Summary
<!--
Summarize the bug encountered concisely. See
https://wayland.freedesktop.org/libinput/doc/latest/reporting-bugs.html for
detailed instructions to report bugs
-->
Touchpad dwt deactivation is not taken into account by libinput
## Steps to reproduce
```
#include <fcntl.h>
#include <unistd.h>
#include <iostream>
#include <libinput.h>
#include <X11/Xlib.h>
int main()
{
struct libinput_interface interface;
struct udev* udev = udev_new();
interface.open_restricted =
[](const char* path, int flags, void* userdata) -> int {
flags |= O_CLOEXEC;
int fd = open(path, flags);
return fd;
};
interface.close_restricted = [](int fd, void* userdata) { close(fd); };
struct libinput* handle =
libinput_udev_create_context(&interface, nullptr, udev);
Display* dpy = XOpenDisplay(nullptr);
libinput_udev_assign_seat(handle, "seat0");
struct libinput_event* ev;
enum libinput_event_type evtype;
libinput_dispatch(handle);
while ((ev = libinput_get_event(handle))) {
evtype = libinput_event_get_type(ev);
switch (evtype) {
case LIBINPUT_EVENT_DEVICE_ADDED: {
if (struct libinput_device* dev = libinput_event_get_device(ev);
dev) {
if (libinput_device_has_capability(
dev, LIBINPUT_DEVICE_CAP_POINTER)) {
std::string deviceName = libinput_device_get_name(dev);
if (deviceName.find("Touchpad") != std::string::npos) {
std::cout << "device name: "
<< libinput_device_get_name(dev)
<< std::endl;
if (libinput_device_config_dwt_is_available(dev)) {
std::cout
<< "\tdwt is "
<< (libinput_device_config_dwt_get_enabled(
dev) == LIBINPUT_CONFIG_DWT_ENABLED
? "enabled"
: "disabled")
<< std::endl;
std::cout
<< "\tdefault dwt is "
<< (libinput_device_config_dwt_get_default_enabled(
dev) == LIBINPUT_CONFIG_DWT_ENABLED
? "enabled"
: "disabled")
<< std::endl;
}
}
}
}
}
default: break;
}
libinput_event_destroy(ev);
}
libinput_unref(handle);
udev_unref(udev);
return 0;
}
```
List of command lines I've made:
```
$> xinput | grep Touchpad
⎜ ↳ ELAN0674:00 04F3:3193 Touchpad id=11 [slave pointer (2)]
$> xinput list-props 11 | grep "Disable While Typing"
libinput Disable While Typing Enabled (356): 0
libinput Disable While Typing Enabled Default (357): 1
$> g++ main.cpp -lX11 -linput -ludev
$> ./a.out
device name: ELAN0674:00 04F3:3193 Touchpad
dwt is enabled
default dwt is enabled
```
<!-- How to reproduce the issue on a developer machine - this is very important -->
## Required information
<!-- Note: if your libinput version is older than the current stable version,
please reproduce with a current version instead -->
- libinput version: 1.23
- hardware information: Ubuntu 23.10 Gnome X11
<!--
- `libinput record` output: do not paste, **attach** the file
- `libinput debug-events --verbose` output: do not paste, **attach the file**
-->
<!--
Paste any other relevant logs - please use code blocks (```) to format
console output, logs, and code as it's very hard to read otherwise.)
Do not paste logs longer than 10 lines, **attach** those instead.
If your libinput record is longer than 5-10s, we will not be able to process
it.
-->https://gitlab.freedesktop.org/libinput/libinput/-/issues/981Scroll when trying to tap two fingers2024-03-18T11:50:30ZtoonnScroll when trying to tap two fingers## Summary
<!--
Summarize the bug encountered concisely. See
https://wayland.freedesktop.org/libinput/doc/latest/reporting-bugs.html for
detailed instructions to report bugs
-->
My touchpad often scrolls (set to twofinger scrolling) wh...## Summary
<!--
Summarize the bug encountered concisely. See
https://wayland.freedesktop.org/libinput/doc/latest/reporting-bugs.html for
detailed instructions to report bugs
-->
My touchpad often scrolls (set to twofinger scrolling) when trying to tap with two fingers (for right-click).
I figured maybe a custom acceleration profile might help. Use 0 acceleration at low enough speeds but I was told that even if that prevents the actual scroll events from happening, the click event will still not occur.
## Steps to reproduce
<!-- How to reproduce the issue on a developer machine - this is very important -->
I suspect this is due to my hardware.
Tap with two fingers on anything that supports right-click behavior, like a link on a webpage, in a scrollable view.
## Required information
<!-- Note: if your libinput version is older than the current stable version,
please reproduce with a current version instead -->
- libinput version: 1.24.0
- hardware information: This is an old white Macbook, model A1181. I do not know how to provide more detailed information about the touchpad, with instructions I can provide more. The attached files are recordings of me trying to two finger tap 5 times (just on a terminal window), let me know if there's a more useful recording I can make.
- `libinput record` output: do not paste, **attach** the file[5-twofinger-taps.txt](/uploads/4fe2cb5c0668bf234f21a85424e65dfc/5-twofinger-taps.txt)
- `libinput debug-events --verbose` output: do not paste, **attach the file**[5-twofinger-taps-debug.txt](/uploads/1683d81dc2ac2764d4e99f3cdd34d0c8/5-twofinger-taps-debug.txt)
<!--
Paste any other relevant logs - please use code blocks (```) to format
console output, logs, and code as it's very hard to read otherwise.)
Do not paste logs longer than 10 lines, **attach** those instead.
If your libinput record is longer than 5-10s, we will not be able to process
it.
-->https://gitlab.freedesktop.org/libinput/libinput/-/issues/980Apple Magic Trackpad freezes every few minutes on Lenovo Thinkpad P15s Gen2i ...2024-03-12T12:19:42ZRodney LottApple Magic Trackpad freezes every few minutes on Lenovo Thinkpad P15s Gen2i running Ubuntu Lunar (23.04)## Summary
I recently started using an Apple Magic Trackpad (model A1339) on my Lenovo ThinkPad P15s Gen 2i with Ubuntu Lunar (23.04) installed. I noticed that roughly every few minutes or so, the trackpad would become unresponsive, and...## Summary
I recently started using an Apple Magic Trackpad (model A1339) on my Lenovo ThinkPad P15s Gen 2i with Ubuntu Lunar (23.04) installed. I noticed that roughly every few minutes or so, the trackpad would become unresponsive, and then the bluetooth manager would report a disconnect and a reconnect. I looked at the syslog and saw messages related to "Touch jump detected and discarded" and a URL indicating that I should report this issue.
## Steps to reproduce
Unfortunately, I have not been able to find the exact way to reproduce this since it happens every few minutes. It occurs when I'm doing simple mouse movements with a single finger and when I'm trying to do complex activity, like selecting text.
## Required information
- libinput version: libinput10:amd64 (1.22.1-1ubuntu0.1)
- hardware information: Lenovo ThinkPad P15s Gen 2
- `libinput record` output: [touchpad.yml](/uploads/98590bc9e18df67d420478b6621606c3/touchpad.yml)
- `libinput debug-events --verbose` output: [touchpad-debug-events.txt](/uploads/7f259d22f6e1c27b98903f002627605f/touchpad-debug-events.txt)
- syslog entries: [syslog.txt](/uploads/4d0a044cb714b333f2e0c23f434f73b0/syslog.txt)
- udevadm info: [udevadminfo.txt](/uploads/ccd3e3725a944e54e32a42ddeca33c24/udevadminfo.txt)
- lshw info: [lshw.txt](/uploads/5bdae3df8c2d3b69dcb4177ea2d2d7db/lshw.txt)
### Ubuntu Mouse and Touchpad Settings
- Pointer Speed: midpoint between Slow and Fast
- Mouse Acceleration: Enabled (the default)
- Scroll Direction: Natural
- Tap To Click: Enabled
- Scrolling Method: Two Finger
- Scrolling Direction: Natural
### modalias content
```
rlott@rlott-ThinkPad-P15s-Gen-2i:~$ cat /sys/class/dmi/id/modalias
dmi:bvnLENOVO:bvrN34ET56W(1.56):bd05/10/2023:br1.56:efr1.42:svnLENOVO:pn20W600ELUS:pvrThinkPadP15sGen2i:rvnLENOVO:rn20W600ELUS:rvrSDK0T76538WIN:cvnLENOVO:ct10:cvrNone:skuLENOVO_MT_20W6_BU_Think_FM_ThinkPadP15sGen2i
```
### touchpad-edge-detector results
```
rlott@rlott-ThinkPad-P15s-Gen-2i:~/git/stash/MAG/txsunrpc$ sudo touchpad-edge-detector 130x110 /dev/input/event20
Touchpad System Administrator’s Trackpad on /dev/input/event20
Move one finger around the touchpad to detect the actual edges
Kernel says: x [-2909..3167], y [-2456..2565]
Touchpad sends: x [-2909..3031], y [-2445..2484] |^[^C
Touchpad size as listed by the kernel: 132x111mm
User-specified touchpad size: 130x110mm
Calculated ranges: 5940/4929
Suggested udev rule:
# <Laptop model description goes here>
evdev:input:b0005v05ACp030E*
EVDEV_ABS_00=-2909:3031:46
EVDEV_ABS_01=-2445:2484:45
EVDEV_ABS_35=-2909:3031:46
EVDEV_ABS_36=-2445:2484:45
```https://gitlab.freedesktop.org/libinput/libinput/-/issues/979Compose key does not always work2024-03-06T22:36:40ZJérôme PouillerCompose key does not always work## Summary
I have mapped Compose key to CapsLock physical key. Then, I have noticed the behavior of the Compose key is ignored half of the time.
## Steps to reproduce
Map CapsLock to Compose using KDE System Settings > Input Devices >...## Summary
I have mapped Compose key to CapsLock physical key. Then, I have noticed the behavior of the Compose key is ignored half of the time.
## Steps to reproduce
Map CapsLock to Compose using KDE System Settings > Input Devices > Keyboard > Advanced > Position of Compose Key > Caps Lock.
Open a KDE application (tested with konsole and kontact). Keep Compose pressed, then type '=', then 'c', then release Compose. Repeat several times. Euro symbol (€) should be typed, but sometime you get "=c".
## Useful observations
The behavior is correct if user release Compose before typing '=' and 'c'.
If you install ibus, ibus feedback show that maintaining Compose press quickly start/abort the compose sequence. So, the issue is somewhere in the repetition code of the Compose key.
I know this behavior happens in KDE applications, GIMP and LibreOffice. However, Chrome has a different behavior (it works very well with ibus).
`libinput debug-events` and `libinput record` does not bring interesting information.
I have to admit I am not sure this bug is related to libinput. My knowledge of this topic is rather limited and there are many actors in the room.
## Required information
```
$ dpkg -l libinput* libxkbcommon*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-========================-============-============-=======================================================================
ii libinput-bin 1.22.1-1 amd64 input device management and event handling library - udev quirks
ii libinput-tools 1.22.1-1 amd64 input device management and event handling library - command line tools
ii libinput10:amd64 1.22.1-1 amd64 input device management and event handling library - shared library
ii libxkbcommon-tools 1.5.0-1 amd64 library interface to the XKB compiler - tools
ii libxkbcommon-x11-0:amd64 1.5.0-1 amd64 library to create keymaps with the XKB X11 protocol
ii libxkbcommon0:amd64 1.5.0-1 amd64 library interface to the XKB compiler - shared library
ii libxkbcommon0:i386 1.5.0-1 i386 library interface to the XKB compiler - shared library
```https://gitlab.freedesktop.org/libinput/libinput/-/issues/978Touchpad sometimes detects wrong number of fingers for both movement and clicks2024-03-28T21:10:36ZPhilippTouchpad sometimes detects wrong number of fingers for both movement and clicks## Summary
Sometimes my touchpad gets into a buggy state where it detects the wrong number of fingers, i.e 2 instead of 1 finger and it double clicks instead of single click, scroll instead of normal movement. Sometimes it even detects ...## Summary
Sometimes my touchpad gets into a buggy state where it detects the wrong number of fingers, i.e 2 instead of 1 finger and it double clicks instead of single click, scroll instead of normal movement. Sometimes it even detects 3 instead of 1 finger and makes a triple click / triple swipe instead of the single finger action.
Once it enters the wrongful state I can do single clicks and it will do a double click (opens up the context menu) or touch the touchpad and move my finger up and down, instead of moving the cursor it will scroll up and down. Same goes for the 3 finger mode, it will then do a triple swipe (and open up the workspace overview in Gnome) instead of regular cursor movement.
I can also consistently leave the wrongful state either with one or multiple triple clicks / triple swipes. Most of the time a single triple click / swipe is enough. After that the touchpad will work as expected until it gets back into the buggy state again.
It works on Windows 11, so I assume it is (probably?) not a hardware issue.
## Steps to reproduce
Happens randomly, I have not found a definitive way to reproduce it. But if I do some random triple and double clicks there is a chance it will change into the "wrong fingers state". The longer my laptop is powered on the more likely it happens. I had sessions that lasted a long time without the issue, but once it got into the wrong state, it will periodically do so.
## Required information
- libinput version: 1.25.0
- hardware information: Xiaomi Book Pro 16 2022
- touchpad: GXT7863:00 27C6:01E0 Touchpad
- OS: Ubuntu 24.04 (but I can also reproduce it on Ubuntu 23.10 and Manjaro/Fedora)
Some `libinput debug-events` log files:
- [start-debug-events-in-wrongful-state.txt](/uploads/c0722f92504e6febfea4b9f75b97cc7f/start-debug-events-in-wrongful-state.txt)
started `libinput debug-events` in wrongful state, there is NO pointer activity being logged. Only once I leave the wrongful state, the pointer activity is again being logged. The keyboard events are done inside the wrongful state, then I do some single clicks and movement which is not recognized by the tool. Afterwards I do a triple click and we go back to the normal state and the logging happens again.
- [start-debug-events-in-normal-state-return-with-triple-swipe.txt](/uploads/ad906bab98bb82921caaf1330160c2bf/start-debug-events-in-normal-state-return-with-triple-swipe.txt)
started `libinput debug-events` in normal state and did some stuff until it got into the wrongful state. Returning to the normal state with a triple swipe (assuming the GESTURE_SWIPE_BEGIN being it). Multiple clicks before the tripe swipe are actually single clicks.
- [start-debug-events-in-normal-state-return-with-jump.txt](/uploads/d28c1ce1b105a5981b7ff9c0b118a17c/start-debug-events-in-normal-state-return-with-jump.txt)
again started `libinput debug-events` in normal state and waited for the change to wrongful state. Returning to normal state with a triple swipe, this time jump happens. All the clicks before the jump are actually single clicks.
Some `libinput record` log files:
- [single-clicks-detected-as-double-clicks.txt](/uploads/5a19e2dd4235d5636e23d75a23a17af9/single-clicks-detected-as-double-clicks.txt)
Started the record in wrongful state and did some single clicks which are detected as double clicks.
- [single-clicks-normal.txt](/uploads/00b9a7d395471251c39dd9f666f65d35/single-clicks-normal.txt)
For comparison some single clicks in normal mode which are detected properly.
- [double-clicks-detected-as-triple-clicks.txt](/uploads/0cdd301b70943ab48dffbaf76371b21f/double-clicks-detected-as-triple-clicks.txt)
Started the record in wrongful state and did some double clicks which are detected as triple clicks.
- [double-clicks-normal.txt](/uploads/0b285168b42d9ad049596ba5223ccffc/double-clicks-normal.txt)
For comparison some double clicks in normal mode which are detected properly.
My touchpad edges: [touchpad-edges.txt](/uploads/d365bc2374bc55d87313f624872f4b0d/touchpad-edges.txt)
## Things I tried that did not help
- I tried several kernel parameters (i.e. i8042.noaux, i8042.reset, etc.) in different combinations
- Switching to X.org instead of wayland
- `modprobe -r hid_multitouch` followed by `modprobe -r hid_multitouch` resets the wrongful mode but it will come back againhttps://gitlab.freedesktop.org/libinput/libinput/-/issues/977Mouse accel despite flat profile2024-03-14T15:12:01ZJustCauseWhyNotMouse accel despite flat profile## Summary
I'm noticing mouse acceleration that is seemingly caused by dpi, and polling rate. My mouse accel is being changed based off of how fast I move my mouse. If I move it slowly it'll increase, and if I move it fast it'll decreas...## Summary
I'm noticing mouse acceleration that is seemingly caused by dpi, and polling rate. My mouse accel is being changed based off of how fast I move my mouse. If I move it slowly it'll increase, and if I move it fast it'll decrease. I'm using a rvm with it's dpi set to 8500, and 1000hz polling rate. If I lower it the acceleration becomes less apparent all the way down to 0 dpi. The dpi seems to be adding some mouse acceleration. I was able to test this by lowering my dpi down to 800, and noticing still some mouse accel that wasn't a flat curve, but a lot less. With a lot less testing it seems like polling rate also effects the mouse accel.
Also isn't dpi past 1k to all feel the same? because I notice a lot different pointer accel with dpi between 1k, and 8500 being the highest my mouse supports.
## Steps to reproduce
I'm testing this in warthunder. I've been compensating for the dpi's effect on sensitivity, and changing it using [this site](https://www.mouse-sensitivity.com). With 8500 dpi and moving my mouse across my 50cm mousepad with an in game sens that's 45cm I can tell that the 360/cm dynamically changing. Despite that the only variable is the speed in which I'm moving the mouse
## Required information
<!-- Note: if your libinput version is older than the current stable version,
please reproduce with a current version instead -->
- libinput version: 1:25
- hardware information: which hardware? Sorry, but I don't know what you want me to put here.
- `libinput record` output: do not paste, [mouse.yaml](/uploads/77be79b2d5f50a81df0cdc4a566c766d/mouse.yaml)
- `libinput debug-events --verbose` output: [libinput-debu](/uploads/09791896387bfb5cd31cecb30dba97d3/libinput-debu)
- mouse dpi [mouse-dpi](/uploads/2383d3e50de77c56a8c15421ebe67841/mouse-dpi)https://gitlab.freedesktop.org/libinput/libinput/-/issues/976Middle button area too small in touchpad software button2024-02-29T14:14:52ZBrett KerwinMiddle button area too small in touchpad software button## Summary
On a Dell Precision 5480, using "software button areas" to emulate left, middle, right buttons on the touchpad, the locations and sizes of the virtual buttons are wrong. Namely, the middle button is correctly centred but the...## Summary
On a Dell Precision 5480, using "software button areas" to emulate left, middle, right buttons on the touchpad, the locations and sizes of the virtual buttons are wrong. Namely, the middle button is correctly centred but the width of the middle button is ridiculously low (it is about as wide as one finger), while the left and the right button occupy all of the remaining space in the lower area of the touchpad.
This makes it very difficult to press the middle button with any kind of consistency.
Ideally, the left, middle and right button should each occupy a third of the whole space. Or even better, their widths should be made configurable. In any case, their current widths on this particular computer is a problem.
## Steps to reproduce
With gnome-tweaks, configure "Mouse click emulation" as "Area". Then try to press the left, middle and right buttons on the touchpad.
## Required information
Using up to date Fedora 39.
- libinput version: libinput-1.25.0-1.fc39.x86_64
- hardware information: Dell Precision 5480https://gitlab.freedesktop.org/libinput/libinput/-/issues/975Add a getter for device bus type2024-02-28T23:23:35ZSimon Sercontact@emersion.frAdd a getter for device bus type## Summary
libinput already exposes `libinput_device_get_id_product()` and `libinput_device_get_id_vendor()`. However, these identifiers are not meaningful without knowledge of the bus type.
## Feature details
Add a new getter for `li...## Summary
libinput already exposes `libinput_device_get_id_product()` and `libinput_device_get_id_vendor()`. However, these identifiers are not meaningful without knowledge of the bus type.
## Feature details
Add a new getter for `libevdev_get_id_bustype()`.
## Affected Hardware
All.
## Implementation in Other Systems
<!-- Does this feature already exist elsewhere? How does it work there? Try
to provide as many details as possible -->
N/Ahttps://gitlab.freedesktop.org/libinput/libinput/-/issues/974Contributing document should mention Closes and Fixes2024-02-28T21:56:30ZPeter HuttererContributing document should mention Closes and FixesJust dumping one of my todo list items here:
- we should have a `CONTRIBUTING.md`, even if it just links to wherever our actual documentation is
- that documentation should explain the uses of `Closes: #123` and `Fixes 123deadbeef` whic...Just dumping one of my todo list items here:
- we should have a `CONTRIBUTING.md`, even if it just links to wherever our actual documentation is
- that documentation should explain the uses of `Closes: #123` and `Fixes 123deadbeef` which we should adopt from now on I reckonhttps://gitlab.freedesktop.org/libinput/libinput/-/issues/973Wacom ArtPen requires pressure interpolation2024-02-28T00:21:09ZPeter HuttererWacom ArtPen requires pressure interpolationOriginally filed as [xf86-input-wacom issue #336](https://github.com/linuxwacom/xf86-input-wacom/issues/336)
> [...] the Wacom Art Pen (KP701E2) only reports the pressure data every other response.
> This is not an isolated issue to a s...Originally filed as [xf86-input-wacom issue #336](https://github.com/linuxwacom/xf86-input-wacom/issues/336)
> [...] the Wacom Art Pen (KP701E2) only reports the pressure data every other response.
> This is not an isolated issue to a single pen. Have tested this with multiple art pens.
> I've also talked to others with Art Pens and when I get them to disable the high sensor
> stabilizers they have set in (painting) software, the pen pressure stepping also appears instantly.
Recordings from that bug show this is a hw limitation: [libinput-record output](/uploads/67c2b9130eaa9d503795e4a62b85d035/artpen.txt) and [hid-record output](/uploads/4132d8f6a8c9f19d87055eda5e334a00/hid-record.txt). The hidraw output for pressure only changes ever second event and the events are missing from every second evdev event as the kernel optimises them out.https://gitlab.freedesktop.org/libinput/libinput/-/issues/972Framework 16 Touchpad doesn't observe `disable-while-typing` setting when use...2024-02-19T08:00:57ZJosip MedvedFramework 16 Touchpad doesn't observe `disable-while-typing` setting when used with Framework 16 Keyboard module## Summary
Framework 16 Laptop allows for usage of multiple [keyboards](https://frame.work/products/keyboard-module?v=FRAKDK00A1) that connect using their [input module](https://github.com/FrameworkComputer/InputModules) system that is ...## Summary
Framework 16 Laptop allows for usage of multiple [keyboards](https://frame.work/products/keyboard-module?v=FRAKDK00A1) that connect using their [input module](https://github.com/FrameworkComputer/InputModules) system that is USB based. Libinput treats those keyboards as external and thus touchpad's `disable-while-typing` setting is not observed.
Merge request with proposed quirks has been raised as !974.
## Steps to reproduce
On Framework 16 laptop start typing while touching the laptop at the same time. Erroneous movement will occur as keyboard typing doesn't disable the touchpad.
Please note that this issue is isolated to Framework 16 laptop as thus not necessarily testable on other machines.
## Required information
- libinput version: 1.23.0
- hardware information: `libinput list-devices` attached.[libinput-list-devices.txt](/uploads/6098c1e628fde714508a0745b1f8156f/libinput-list-devices.txt)https://gitlab.freedesktop.org/libinput/libinput/-/issues/971Dell Precision 7750 Touchpad MMB Delayed Press Event2024-02-16T23:51:50ZwaterlubberDell Precision 7750 Touchpad MMB Delayed Press Event## Summary
The physical middle mouse button on my Precision 7750 exhibits strange behavior when held down. Libinput successfully detects the button-down and button-up events from the kernel and timestamps them correctly, but refuses to ...## Summary
The physical middle mouse button on my Precision 7750 exhibits strange behavior when held down. Libinput successfully detects the button-down and button-up events from the kernel and timestamps them correctly, but refuses to "release" them until after the button is released. Effectively, MMB works to click or select things, but cannot be held down for _e.g._ CAD software or scrolling purposes.
Consider the following screenshots. The following is of "normal" LMB behavior (interestingly, this is on event11 and not event10, as the MMB is): the event for buton down is received, debouncing code runs, and libinput presents a "pointer button down" event. After release, the debouncing code again runs, and indicates release.
![image](/uploads/c21d1285bfc7bd8d8f4b9fc19c41017d/image.png)
The MMB does not present events until after it is released. (Note the copy-pasted text from when the MMB event reached the terminal application and triggered a paste).
![image](/uploads/0efefabf583bc6dae3abfd9b17be90e8/image.png)
Interestingly, libinput reports the correct start time for the button-down event - it just waits until the button-up event to send this information to the symbol.
## Steps to reproduce
- Environment on this machine was KDE Plasma Desktop on Wayland, with no special mouse configuration. `wev` mirrors the behavior, as does various "online mouse button tester" applications.
- KDE mouse config:
![image](/uploads/5fd4ff24f6cabcc8715aea4b8f031f3c/image.png)
![image](/uploads/66d9866416005fbd305dac78617b074b/image.png)
- Simply launch `sudo libinput debug-events --verbose --device=/dev/input/event10` and observe the unusual behavior. Of course, you may need a Precision 7750 to reproduce the bug, although it may also occur on other Dell devices, or perhaps with all I2C_HID mice.
## Required information
- libinput version: 1.25.0-1, Arch Linux x86_64 Build. [Pacman -Qi libinput](/uploads/ce641c62b39765b8cba26fa8e7c7a886/libinput_version.txt)
- Hardware: Dell Precision 7750. Touchpad identified as "Dell09c4:00 0488:120a Mouse". Appears to be I2C HID.
- `libinput record` output: [record_10.txt](/uploads/2127bdfc0a2e9f3cf979f7f8b93f407c/record_10.txt)
- Recording produced by holding button briefly for several cycles, then a few quick presses.
- `libinput debug-events --verbose` output: [debug.txt](/uploads/637b0e2facb29e62881824295eb403bb/debug.txt)
- Produced similarly to the record output.
- [udev information for event10](/uploads/3c8d3ed80dd50af97b9879defbfa55be/udev.txt)https://gitlab.freedesktop.org/libinput/libinput/-/issues/970Regression: 1.24.0 to 1.25.0 - SpeedMind M-BOOK touchpad reports bottom-right...2024-02-14T06:53:09ZAlex Leopoldo Villacís LassoRegression: 1.24.0 to 1.25.0 - SpeedMind M-BOOK touchpad reports bottom-right clickable corner as left-click (with workaround)## Summary
On a SpeedMind M-BOOK laptop running Fedora 39 x86_64, after an upgrade to libinput-1.25.0-1, the clickable bottom-right corner of the touchpad no longer works correctly, and is reported as a left-click instead. I managed to ...## Summary
On a SpeedMind M-BOOK laptop running Fedora 39 x86_64, after an upgrade to libinput-1.25.0-1, the clickable bottom-right corner of the touchpad no longer works correctly, and is reported as a left-click instead. I managed to work around this by deleting `/usr/share/libinput/50-system-graviton.quirks` and restarting the graphical session.
## Steps to reproduce
* Have the M-BOOK laptop with touchpad, and libinput 1.25.0
* Click lower-left corner, gets detected as left-click (expected).
* Click lower-right corner, gets detected as left-click (NOT expected).
## Required information
- libinput version: `libinput-1.25.0-1.fc39.x86_64`
- hardware information:
- Fedora 39 x86_64, `uname -a` reports `Linux karlalex-speedmind 6.7.4-200.fc39.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Feb 5 22:21:14 UTC 2024 x86_64 GNU/Linux`
- `/sys/class/dmi/id/modalias` reports: `dmi:bvnAmericanMegatrendsInc.:bvrNYA116.P0M1.B15:bd12/24/2019:br5.12:efr2.3:svnSpeedmind:pnM-BOOK:pvrDefaultstring:rvnDefaultstring:rnDefaultstring:rvrDefaultstring:cvnDefaultstring:ct10:cvrDefaultstring:skuDefaultstring:`
- `libinput record` output:
[touchpad.yml](/uploads/5b66327f056fe7225cbc808a3e7c5867/touchpad.yml)
- `libinput debug-events --verbose` output:
[libinput-debug-events-verbose.txt](/uploads/151b64182ad7e060b4d8c28bdfb24f09/libinput-debug-events-verbose.txt)
- `udevadm info /sys/class/input/event4` :
[udevadm-info-event4.txt](/uploads/70f7b3d1010e615ea44f0a3c6f1c1854/udevadm-info-event4.txt)
- `dmesg` output:
[dmesg.txt](/uploads/dda9f7b46334c2cfb9f6691214d64ff2/dmesg.txt)
Note: both `libinput record` and `libinput debug-events --verbose` record attempts to do a left-click, followed by a right-click.
On this laptop, the "touchpad" is a rectangular featureless surface, but the bottom-left and the bottom-right corners can be physically depressed in order to implement left and right clicks. However, the entire surface is responsive to finger dragging, including the areas where the surface can be depressed for clicks. I do not know whether this should be called a "touchpad", a "clickpad", or something else.
As mentioned above, I can work around the issue by removing the file `/usr/share/libinput/50-system-graviton.quirks` and restarting the session, but I would like a more permanent fix.https://gitlab.freedesktop.org/libinput/libinput/-/issues/969Internal Touchpad and Keyboard not recognized to "disable while typing" to work2024-02-02T00:49:09ZThelugaInternal Touchpad and Keyboard not recognized to "disable while typing" to workThe disable while tapping don't work as intended. The touchpad continued working while typing and sending clicks during typing.
How I solved:
I create a local-overrides.quirks file on /etc/libinput with the following content:
```
[Wro...The disable while tapping don't work as intended. The touchpad continued working while typing and sending clicks during typing.
How I solved:
I create a local-overrides.quirks file on /etc/libinput with the following content:
```
[Wrong Keyboard]
MatchUdevType=keyboard
MatchName=AT Translated Set 2 keyboard
AttrKeyboardIntegration=external
[MSFT Touchpad]
MatchUdevType=touchpad
MatchName=ELAN0001:00 04F3:31AD Touchpad
AttrKeyboardIntegration=internal
[Correct Keyboard]
MatchUdevType=keyboard
MatchName=ITE Tech. Inc. ITE Device(8176) Keyboard
AttrKeyboardIntegration=internal
```
The AT Translated Set 2 keyboard, was considered as internal by default, the touchpad and the correct keyboard were without any quirks.
The output of `sudo libinput list-devices` for the devices in question:
```
Device: ITE Tech. Inc. ITE Device(8176) Keyboard
Kernel: /dev/input/event6
Group: 6
Seat: seat0, default
Capabilities: keyboard pointer
Tap-to-click: n/a
Tap-and-drag: n/a
Tap drag lock: n/a
Left-handed: n/a
Nat.scrolling: disabled
Middle emulation: n/a
Calibration: n/a
Scroll methods: none
Click methods: none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles: n/a
Rotation: 0.0
Device: ELAN0001:00 04F3:31AD Touchpad
Kernel: /dev/input/event10
Group: 8
Seat: seat0, default
Size: 119x73mm
Capabilities: pointer gesture
Tap-to-click: disabled
Tap-and-drag: enabled
Tap drag lock: disabled
Left-handed: disabled
Nat.scrolling: disabled
Middle emulation: disabled
Calibration: n/a
Scroll methods: *two-finger edge
Click methods: *button-areas clickfinger
Disable-w-typing: enabled
Disable-w-trackpointing: enabled
Accel profiles: flat *adaptive custom
Rotation: n/a
Device: AT Translated Set 2 keyboard
Kernel: /dev/input/event5
Group: 9
Seat: seat0, default
Capabilities: keyboard
Tap-to-click: n/a
Tap-and-drag: n/a
Tap drag lock: n/a
Left-handed: n/a
Nat.scrolling: n/a
Middle emulation: n/a
Calibration: n/a
Scroll methods: none
Click methods: none
Disable-w-typing: n/a
Disable-w-trackpointing: n/a
Accel profiles: n/a
Rotation: 0.0
```
- libinput version:1.25.0
- System:
Kernel: 6.7.2-arch1-2 arch: x86_64 bits: 64 Desktop: GNOME v: 45.3 Distro: Arch Linux
Machine:
Type: Laptop System: LENOVO product: 82MJ v: IdeaPad Gaming 3 15ACH6
Mobo: LENOVO model: LNVNB161216 UEFI: LENOVO
v: H3CN45WW(V3.03) date: 09/01/2023
If necessary:
```
sudo lspci
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne Root Complex
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne IOMMU
00:01.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:01.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe GPP Bridge
00:01.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:01.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:02.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:02.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne PCIe GPP Bridge
00:08.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Renoir PCIe Dummy Host Bridge
00:08.1 PCI bridge: Advanced Micro Devices, Inc. [AMD] Renoir Internal PCIe GPP Bridge to Bus
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 51)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 51)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 5
00:18.6 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 6
00:18.7 Host bridge: Advanced Micro Devices, Inc. [AMD] Cezanne Data Fabric; Function 7
01:00.0 3D controller: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] (rev a1)
02:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15)
03:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8852AE 802.11ax PCIe Wireless Network Adapter
04:00.0 Non-Volatile memory controller: Intel Corporation SSD 670p Series [Keystone Harbor] (rev 03)
05:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [Radeon Vega Series / Radeon Vega Mobile Series] (rev c5)
05:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Renoir Radeon High Definition Audio Controller
05:00.2 Encryption controller: Advanced Micro Devices, Inc. [AMD] Family 17h (Models 10h-1fh) Platform Security Processor
05:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
05:00.4 USB controller: Advanced Micro Devices, Inc. [AMD] Renoir/Cezanne USB 3.1
05:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] ACP/ACP3X/ACP6x Audio Coprocessor (rev 01)
05:00.6 Audio device: Advanced Micro Devices, Inc. [AMD] Family 17h/19h HD Audio Controller
```
```
sudo lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 002: ID 13d3:56ff IMC Networks Integrated Camera
Bus 001 Device 003: ID 0bda:4852 Realtek Semiconductor Corp. Bluetooth Radio
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 002: ID 048d:c966 Integrated Technology Express, Inc. ITE Device(8176)
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
```
If anything is necessary, please let me know.
I hope it's possible to have those quirks as default if possible.
Thank you!https://gitlab.freedesktop.org/libinput/libinput/-/issues/968Typo in Lenovo X201t quirks prevents tablet keys from working2024-02-01T05:15:15ZHooloovoo BlueTypo in Lenovo X201t quirks prevents tablet keys from working## Summary
<!--
Summarize the bug encountered concisely. See
https://wayland.freedesktop.org/libinput/doc/latest/reporting-bugs.html for
detailed instructions to report bugs
-->
When in tablet mode (flipped screen), the X201t doesn't re...## Summary
<!--
Summarize the bug encountered concisely. See
https://wayland.freedesktop.org/libinput/doc/latest/reporting-bugs.html for
detailed instructions to report bugs
-->
When in tablet mode (flipped screen), the X201t doesn't recognize button presses on the tablet surface. The buttons work in laptop mode.
This is due to a typo on [Line 214 of quirks/50-system-lenovo.quirks](https://gitlab.freedesktop.org/libinput/libinput/-/blob/main/quirks/50-system-lenovo.quirks?ref_type=heads#L214) where `MatchName=At Translated Set 2 keyboard` should be `MatchName=AT Translated Set 2 keyboard`
There is a workaround: Add the attached: [local-overrides.quirks](/uploads/0deabbc712c0c06fad9c2abf98d915a8/local-overrides.quirks) into `/etc/libinput`
## Steps to reproduce
<!-- How to reproduce the issue on a developer machine - this is very important -->
Run a live Debian (I reproduced it on a Debian 11 MATE image, but took logs from an installed Debian 12 system and the bug is in current source)
Install xev and evtest `sudo apt update; sudo apt install evtest libinput-tools`
Run `sudo evtest /dev/input/event0` and `xev` in separate terminals. `/dev/input/event0` is the `AT Translated Set 2 keyboard`
Press a button on the screen. Both `evtest` and `xev` will show a keyboard event.
Flip the screen to tablet mode and press a a button on the screen. Only `evtest` will show a keyboard event; xev is silent
Also worth running is `libinput quirks list /dev/input/event0` which will only show `AttrKeyboardIntegration=internal`
## Required information
<!-- Note: if your libinput version is older than the current stable version,
please reproduce with a current version instead -->
- libinput version: 1.22.1
- hardware information: Lenovo X201 Tablet (x201t)
- `libinput record` output: [libinput-record-x201t.txt](/uploads/f68df0aee4b7c4d39160f9d323890a3d/libinput-record-x201t.txt)
- `libinput debug-events --verbose` output: [libinput-debug-events-x201t.txt](/uploads/9be763c97fc8e3a8cd5f16653378096c/libinput-debug-events-x201t.txt)
During the `libinput record` log, it doesn't recognize the lid switch.
During the second half of the `lbinput debug-events --verbose` log, I am pressing a screen button, but nothing showed up in the log.
<!--
- libinput version:
- hardware information:
- `libinput record` output: do not paste, **attach** the file
- `libinput debug-events --verbose` output: do not paste, **attach the file**
Paste any other relevant logs - please use code blocks (```) to format
console output, logs, and code as it's very hard to read otherwise.)
Do not paste logs longer than 10 lines, **attach** those instead.
If your libinput record is longer than 5-10s, we will not be able to process
it.
-->https://gitlab.freedesktop.org/libinput/libinput/-/issues/967TouchPad not completely recognized by libinput and being reported as PS/2 mou...2024-03-06T00:31:25ZNiels van AertTouchPad not completely recognized by libinput and being reported as PS/2 mouse too on Dell Precision 3581## Summary
The TouchPad on a Dell Precision 3581 is not recognized completely correctly. It functions correctly (including 2-finger scrolling), but it's reported as a "VEN_0488:00 0488:104B Mouse". The mouse is reported twice too. Once a...## Summary
The TouchPad on a Dell Precision 3581 is not recognized completely correctly. It functions correctly (including 2-finger scrolling), but it's reported as a "VEN_0488:00 0488:104B Mouse". The mouse is reported twice too. Once as a "PS/2 Generic Mouse and once as a TouchPad. Once I set my mouse to "PS/2 Generic Mouse", then the pointer moves slow and choppy. Once I set my mouse to "VEN_0488:00 0488:104B Mouse" it moves at high speed and smooth.
## Steps to reproduce
Boot a recent Linux environment on a Dell Precision 3581 laptop (I'm using KDE on Wayland myself) and look at the mouse properties.
## Required information
- libinput version: 1.24.0
- hardware information: Dell Precision 3581.
- `libinput record` output: N/A
- `libinput debug-events --verbose` output:[libinput_debug-events_verbose_28012024_1735.txt](/uploads/3eaa727bcaccf6583a5d2a88a5a05cd6/libinput_debug-events_verbose_28012024_1735.txt)https://gitlab.freedesktop.org/libinput/libinput/-/issues/966Two finger scoll does not transform to pinch2024-02-19T03:28:15ZFriso SmitTwo finger scoll does not transform to pinch## Summary
I'm finding it finnicky to pinch to zoom on my touchpad (HP zbook studio G5). I looked at the [touchpad gestures state machine](https://gitlab.freedesktop.org/libinput/libinput/-/blob/main/doc/touchpad-gestures-state-machine....## Summary
I'm finding it finnicky to pinch to zoom on my touchpad (HP zbook studio G5). I looked at the [touchpad gestures state machine](https://gitlab.freedesktop.org/libinput/libinput/-/blob/main/doc/touchpad-gestures-state-machine.svg), which says that scoll gestures can be transformed to pinch gestures. I tried doing that, but didn't succeed.
## Steps to reproduce
- Start two-finger scroll.
- Keep fingers on touchpad, but try to pinch. The scroll does not transform to a pinch.
## Required information
- libinput version: 1.24.0
- hardware information: HP Zbook studio G5 - synaptics touchpad
[attempt-pinch.txt](/uploads/fe89efc8eec1060f57c97989dcd0f579/attempt-pinch.txt)https://gitlab.freedesktop.org/libinput/libinput/-/issues/965Feature request: Allow rotating the axes for scroll wheel emulation2024-01-22T06:28:34ZNiklaus HoferFeature request: Allow rotating the axes for scroll wheel emulation## Summary
Libinput already supports mouse wheel emulation. It would be great if that could be amended with options to rotate the axes when doing mouse wheel emulation.
## Feature details
I use this feature on X11 with my trackballs. ...## Summary
Libinput already supports mouse wheel emulation. It would be great if that could be amended with options to rotate the axes when doing mouse wheel emulation.
## Feature details
I use this feature on X11 with my trackballs. Instead of moving the ball back and forth, I can move it sideways to scroll up/down. To achieve this, I use the bellow command:
```bash
xinput --set-prop 'Logitech USB Receiver Mouse' 'Evdev Wheel Emulation Axes' 5 4 0 0"
```
## Affected Hardware
Trackballs, mice.
## Implementation in Other Systems
This feature works well on Linux using `xinput` (see above)