GNOME Bugzilla – Bug 747340
"Disable while typing" option is no longer available
Last modified: 2016-12-09 15:48:31 UTC
The touchpad option to disable it automatically while typing is no longer available in the mouse & touchpad setting. It used to exist in GNOME 3.14. This setting is very useful and a must for people that have laptops with large touchpad areas.
It's no longer needed with the libinput Xorg driver. Please make sure your distribution uses it.
I'm using Fedora 22 which supposed to have this feature, but it either doesn't work as advertised or not yet integrated. I'll open a bug downstream. Thanks.
Make sure xorg-x11-drv-libinput is installed, it probably won't come in upgrades. If it's there, you can verify it's being used by running: xinput list Select the number for you device (touchpad) and run: xinput list-props "number" The majority of properties should start with "libinput". If that's the case and it doesn't work well enough, file a bug against libinput at bugs.freedesktop.org. It's under the "Wayland" product.
It is there, Here is xinput output: $ xinput list ⎡ Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ Logitech USB Receiver id=11 [slave pointer (2)] ⎜ ↳ AlpsPS/2 ALPS DualPoint TouchPad id=15 [slave pointer (2)] ⎜ ↳ AlpsPS/2 ALPS DualPoint Stick id=16 [slave pointer (2)] ⎣ Virtual core keyboard id=3 [master keyboard (2)] ↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)] ↳ Power Button id=6 [slave keyboard (3)] ↳ Video Bus id=7 [slave keyboard (3)] ↳ Video Bus id=8 [slave keyboard (3)] ↳ Power Button id=9 [slave keyboard (3)] ↳ Sleep Button id=10 [slave keyboard (3)] ↳ Logitech USB Receiver id=12 [slave keyboard (3)] ↳ Laptop_Integrated_Webcam_HD id=13 [slave keyboard (3)] ↳ AT Translated Set 2 keyboard id=14 [slave keyboard (3)] ↳ Dell WMI hotkeys id=17 [slave keyboard (3)] $ xinput list-props 15 Device 'AlpsPS/2 ALPS DualPoint TouchPad': Device Enabled (139): 1 Coordinate Transformation Matrix (141): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000 libinput Tapping Enabled (277): 1 libinput Accel Speed (271): -0.513408 libinput Natural Scrolling Enabled (272): 0 libinput Send Events Modes Available (257): 1, 1 libinput Send Events Mode Enabled (258): 0, 0 libinput Left Handed Enabled (273): 0 libinput Scroll Methods Available (274): 1, 1, 0 libinput Scroll Method Enabled (275): 1, 0, 0 Device Node (259): "/dev/input/event8" Device Product ID (260): 2, 8 I've filed a bug against libinput on Redhat's bugzilla, as instructed here: https://bugzilla.redhat.com/show_bug.cgi?id=1181565#c10.
Also, please note that according to Hans de Goede (linked above), libinput does not provide a "disable touchpad while typing" feautre, just (theoretically) a "ignore accidentally resting the palm on the touchpad" feature - which even if it worked (and it doesn't for my ALPS on Fedora 22) is still a heuristic that may fail. I think its best to still offer the feature for forcefully disabling touchpad while typing - even disabled by default. If the user is happy with palm detection, they have no need to open the touch pad settings and to enable that feature, but if they have problems then there should be an available solution.
(In reply to Oded Arbel from comment #5) > Also, please note that according to Hans de Goede (linked above), libinput > does not provide a "disable touchpad while typing" feautre, just > (theoretically) a "ignore accidentally resting the palm on the touchpad" > feature - Right, I was skipping steps. > which even if it worked (and it doesn't for my ALPS on Fedora 22) > is still a heuristic that may fail. It's usually good enough to not require any additional configuration on either Windows or OSX, so there must be something there... > I think its best to still offer the > feature for forcefully disabling touchpad while typing - even disabled by > default. If the user is happy with palm detection, they have no need to open > the touch pad settings and to enable that feature, but if they have problems > then there should be an available solution. We don't plan on adding back the "disable while typing" feature, as the goal of that feature always was to avoid unwanted clicks or movements on the touchpad. You can still run "syndaemon" by hand.
(In reply to Bastien Nocera from comment #6) Syndaemon doesn't work with libinput devices, does it? (In reply to Oded Arbel from comment #5) I think you can still remove xorg-x11-drv-libinput as a workaround, because syndaemon should be enabled by default for non-libinput devices.
(In reply to Ondrej Holy from comment #7) > (In reply to Bastien Nocera from comment #6) > Syndaemon doesn't work with libinput devices, does it? Why wouldn't it? It won't work with Wayland, that's certain, but it don't believe it uses any evdev specific features or properties. > (In reply to Oded Arbel from comment #5) > I think you can still remove xorg-x11-drv-libinput as a workaround, because > syndaemon should be enabled by default for non-libinput devices.
(In reply to Bastien Nocera from comment #8) > (In reply to Ondrej Holy from comment #7) > > (In reply to Bastien Nocera from comment #6) > > Syndaemon doesn't work with libinput devices, does it? > > Why wouldn't it? It won't work with Wayland, that's certain, but it don't > believe it uses any evdev specific features or properties. $ syndaemon No synaptics properties on device 'SynPS/2 Synaptics TouchPad'
syndaemon uses the "Synaptics Off" property to disable the touchpad, not the generic "Device Enabled" property. reason being that you just want to suppress events, not remove/re-add the device every time you trigger the feature. and historical reasons too, syndaemon was added when the xorg input devices were still static and nothing really supported devices being added/removed.
Libinput now provides an option to disable the touchpad while typing - it's on by default, but it would be nice to be able to turn it off. :) (Especially for gaming.) https://wayland.freedesktop.org/libinput/doc/latest/palm_detection.html Looks like you set it by calling libinput_device_config_dwt_set_enabled().
See bug 764852.