How can I setup my touchpad multi-finger tapping functionality?
Solution 1
This can be done using synclient
.
To do this per-session (and to test that it's working correctly on your system), type into a terminal the following commands:
synclient "TapButton2"=2
synclient "TapButton3"=3
The option TapButtonx
means "A tap with x fingers, not in a corner", while the numbers 1, 2 and 3 after correspond to left, middle and right click respectively.
To make these changes permanent, navigate to /usr/share/X11/xorg.conf.d
. ls
to find the file with "synaptics.conf" in the name (in my case, 50-synaptics.conf
). Then, sudo gedit 50-synaptics.conf
, and add the following lines into the end of the first InputClass section:
Option "TapButton2" "2"
Option "TapButton3" "3"
Then restart your machine, and you should be good to go.
If editing the 50-synaptics.conf
file doesn't work, do the following:
open dconf-editor
and navigate to org/gnome/settings-daemon/plugins/mouse
. Uncheck the box marked "active" and restart again. This will allow the synaptics settings to take precedence.
Solution 2
Here is what we need to do:
First we gather the ID for the trackpad/mouse pad.
$ xinput --list Virtual core pointer id=2 [master pointer (3)] ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)] ⎜ ↳ PS/2 Generic Mouse id=10 [slave pointer (2)] **⎜ ↳ SynPS/2 Synaptics TouchPad 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)] ↳ Sleep Button id=8 [slave keyboard (3)] ↳ AT Translated Set 2 keyboard id=9 [slave keyboard (3)] ↳ HP WMI hotkeys id=12 [slave keyboard (3)]
Now the highlighted one is our device with ID in my case 11
List out the properties and hence configuring the one against the ID
$ xinput --list-props 11 Device 'SynPS/2 Synaptics TouchPad': Device Enabled (132): 1 Coordinate Transformation Matrix (134): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000 Device Accel Profile (253): 1 Device Accel Constant Deceleration (254): 2.500000 Device Accel Adaptive Deceleration (255): 1.000000 Device Accel Velocity Scaling (256): 12.500000 Synaptics Edges (276): 1769, 5431, 1653, 4671 Synaptics Finger (277): 25, 30, 256 Synaptics Tap Time (278): 180 Synaptics Tap Move (279): 242 Synaptics Tap Durations (280): 180, 180, 100 Synaptics ClickPad (281): 0 Synaptics Tap FastTap (282): 0 Synaptics Middle Button Timeout (283): 75 Synaptics Two-Finger Pressure (284): 282 Synaptics Two-Finger Width (285): 7 Synaptics Scrolling Distance (286): 110, 110 Synaptics Edge Scrolling (287): 1, 0, 0 Synaptics Two-Finger Scrolling (288): 0, 0 Synaptics Move Speed (289): 1.000000, 1.750000, 0.036265, 40.000000 Synaptics Edge Motion Pressure (290): 30, 160 Synaptics Edge Motion Speed (291): 1, 441 Synaptics Edge Motion Always (292): 0 Synaptics Off (293): 0 Synaptics Locked Drags (294): 0 Synaptics Locked Drags Timeout (295): 5000 Synaptics Tap Action (296): 2, 3, 0, 0, 1, 3, 0 Synaptics Click Action (297): 1, 1, 0 Synaptics Circular Scrolling (298): 0 Synaptics Circular Scrolling Distance (299): 0.100000 Synaptics Circular Scrolling Trigger (300): 0 Synaptics Circular Pad (301): 0 Synaptics Palm Detection (302): 0 Synaptics Palm Dimensions (303): 10, 200 Synaptics Coasting Speed (304): 20.000000, 50.000000 Synaptics Pressure Motion (305): ... of unknown type CARDINAL Synaptics Pressure Motion Factor (306): 1.000000, 1.000000 Synaptics Resolution Detect (307): 1 Synaptics Grab Event Device (308): 1 Synaptics Gestures (309): 1 Synaptics Capabilities (310): 1, 0, 1, 1, 1, 1, 1 Synaptics Pad Resolution (311): 85, 45 Synaptics Area (312): 0, 0, 0, 0 Synaptics Noise Cancellation (313): 8, 8 Device Product ID (249): 2, 7 Device Node (250): "/dev/input/event8"
Now find the point, in this case its 285, 288. Using the command you may configure the same on your touch pad.
$xinput set-int-prop <properties>
Hope this helps
Related videos on Youtube
Madara's Ghost
I have resigned and will no longer be available to keep good on the promise below. I will keep it linked here for posterity, and I hope it inspires others to go that way. I offer a 500 point bounty for every good canonical you post. Contact me in chat for more details (I'm usually in the PHP or JavaScript room) Madara Uchiha, second Rikudo. ex-♦ Moderator on Stack Overflow and Anime and Manga. The most powerful shinobi of the time. Mess with me, and I will drop a meteor on your head. Plus I program in JavaScript, HTML, Java, PHP, CSS, And several other languages. Pleased to meet you :) Avatar From EspadaZero@DeviantArt Madara_Uchiha @ Miaou
Updated on September 18, 2022Comments
-
Madara's Ghost over 1 year
I'm trying to setup my multi-finger tap in the following way:
- Single finger - Left click
- Two fingers - Middle click
- Three fingers - Right click
What I currently have is:
- Single finger - Left click
- Two fingers - Right click
- Three fingers - none
I've looked up several questions here on Ask Ubuntu, as well as the Ubuntu wiki on the subject (plus some general Google searching), but couldn't find anything to help me out. I know of
xinput
, but I don't know what to change there and how.If anyone is able to point me to the right direction, I'd be grateful and award him with 25 shiny rep points, a large green tick mark, and some cookies.
-
karan almost 11 yearsYou may have a look @ this link askubuntu.com/a/155725/44518
-
Madara's Ghost almost 11 years@karan: How does this relate to my problem?
-
Madara's Ghost almost 11 yearsThis is looking good. I have mutliple instances of
Section "InputClass"
, which do I edit? -
Jez W almost 11 yearsAnswer has been edited, should all be working as desired now. At least, this method fixed it for me again! =)
-
Madara's Ghost almost 11 yearsThank you! I'll test it and get back to you (might be a short while before I can actually restart my computer and test it) Thanks a lot for your answer!
-
Madara's Ghost almost 11 years