How to Disable Horizontal Scroll and Enable Palm Detection on Libinput
This solution applies to laptops using Libinput as the touchpad driver. If you are using Synaptics, the steps may be slightly different. To check your driver, open the terminal and run:
xinput --list
This command will list your input devices. The output might differ based on your device, but for mine (a Dell laptop), the result looks like this:
nesi@Alpha:~$ xinput --list
β‘ Virtual core pointer id=2 [master pointer (3)]
β β³ Virtual core XTEST pointer id=4 [slave pointer (2)]
β β³ DLL0651:00 06CB:2985 id=11 [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)]
β³ Power Button id=8 [slave keyboard (3)]
β³ Sleep Button id=9 [slave keyboard (3)]
β³ Integrated_Webcam_HD id=10 [slave keyboard (3)]
β³ AT Translated Set 2 keyboard id=12 [slave keyboard (3)]
β³ Dell WMI hotkeys id=13 [slave keyboard (3)]
In this case, the touchpad driver is listed as DLL0651:00 06CB:2985 id=11, but if you have Synaptics, the name should be displayed here. Note the device ID (mine is 11). Next, run the following command to check the current options enabled on your touchpad:
xinput list-props 11
This command will list all the properties of your touchpad. The output will look something like this:
xinput list-props 11
Device 'DLL0651:00 06CB:2985':
Device Enabled (140): 1
Coordinate Transformation Matrix (142): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
libinput Tapping Enabled (275): 1
libinput Tapping Enabled Default (276): 0
libinput Tapping Drag Enabled (277): 1
libinput Tapping Drag Enabled Default (278): 1
libinput Tapping Drag Lock Enabled (279): 0
libinput Tapping Drag Lock Enabled Default (280): 0
libinput Tapping Button Mapping Enabled (281): 1, 0
libinput Tapping Button Mapping Default (282): 1, 0
libinput Accel Speed (283): -0.508333
libinput Accel Speed Default (284): 0.000000
libinput Natural Scrolling Enabled (285): 0
libinput Natural Scrolling Enabled Default (286): 0
libinput Send Events Modes Available (260): 1, 1
libinput Send Events Mode Enabled (261): 0, 0
libinput Send Events Mode Enabled Default (262): 0, 0
libinput Left Handed Enabled (287): 0
libinput Left Handed Enabled Default (288): 0
libinput Scroll Methods Available (289): 1, 1, 0
libinput Scroll Method Enabled (290): 1, 0, 0
libinput Scroll Method Enabled Default (291): 1, 0, 0
libinput Click Methods Available (292): 1, 1
libinput Click Method Enabled (293): 1, 0
libinput Click Method Enabled Default (294): 1, 0
libinput Middle Emulation Enabled (295): 0
libinput Middle Emulation Enabled Default (296): 0
libinput Disable While Typing Enabled (297): 1
libinput Disable While Typing Enabled Default (298): 1
Device Node (263): "/dev/input/event12"
Device Product ID (264): 1739, 10629
libinput Drag Lock Buttons (299):
libinput Horizontal Scroll Enabled (300): 1
The last option, libinput Horizontal Scroll Enabled (300): 1, indicates that horizontal scrolling is enabled. A value of 1 means "true" (enabled). If you want to disable horizontal scrolling, run the following command:
xinput set-prop 11 300 0
Where:
xinput set-prop: Command to set a property.11: The ID of your touchpad device.300: The ID of the horizontal scroll property.0: A value of 0 to disable the horizontal scroll (false).
If you want to re-enable horizontal scrolling, use:
xinput set-prop 11 300 1
To make this change permanent, add the command to your startup applications:
- Go to Settings > Applications > Startup.
- Click the + button to add a new application.
- Select Custom Command and enter the command:
xinput set-prop 11 300 0.
Note: The device IDs may differ on your system.
Update: If you connect another pointing device after the system has loaded the OS, make sure to connect it after the system has finished loading. Otherwise, there is a chance that the ID of your touchpad may change. For example, if I connected a USB mouse before the OS finished loading, my touchpadβs ID changed from 11 to 12, which caused my startup command to not work.
Leave a Comment