In almost all the large modern Linux distributions and in the last releases of Ubuntu-based distributions the touchpad was configured out of the box to have right, left and middle clicks and you could configure them easily. The middle click is usually done with a two or three-finger tap.
In Ubuntu 12.04 I haven't seen where to enable the middle click and it is not enabled by default.
115 Answers
You can make it work and persist in Ubuntu 12.04, even afer suspending, following these steps.
First, create a file with your script:
echo synclient TapButton3=2 > ~/touchpad_settings.sh(You could place the script in another directory, e.g. /usr/bin or /etc, if you wanted it to be in a more "generic" place, in case you have multiple accounts in your ubuntu installation.)
Then make it executable:
chmod +x ~/touchpad_settings.shAnd finally, run the following command replacing "user" with your user name:
gsettings set org.gnome.settings-daemon.peripherals.input-devices hotplug-command "/home/user/touchpad_settings.sh"Then reboot, or logout & login, or restart GNOME.
That's all!
For more information about this fix, go here.
2I was searching for this and I found out that the touchpad has different settings for taps at the corners, and if you tap at the bottom right corner it does Right click. But if you tap at the top right corner it does Middle click. This is the default setting.
8Another option which might be simpler and avoids startup scripts is the following.
Stop the gnome settings daemon from overriding existing settings (font: Touchpad Synaptics - ArchWiki).
gsettings set org.gnome.settings-daemon.plugins.mouse active falseEdit the X11 configuration file for the touchpad.
sudo -H gedit /usr/share/X11/xorg.conf.d/50-synaptics.confand add your button options under the section with the synaptics driver, like so:
Section "InputClass" Identifier "touchpad catchall" Driver "synaptics" MatchIsTouchpad "on" MatchDevicePath "/dev/input/event*" Option "TapButton1" "1" Option "TapButton2" "3" Option "TapButton3" "2" Option "HorizTwoFingerScroll" "on" Option "VertTwoFingerScroll" "on" EndSection
synclient ClickFinger3=2
synclient TapButton3=2To show the list of actual values:
synclient -lhope it helps (it did for me!)
5Download synaptiks from the Software Center.
Open it, then go to Touchpad Configuration >> Tapping.
Set your configuration there, as you would like.
3You can enable it with the command synclient TapButton3=2 in the terminal, but that seems to get overridden on suspend+resume and after a reboot.
Permanent solution:
It's explained for Xfce in this Xfce forum thread
However, unity-2d (and I suppose also Unity) likes to fiddle with these settings on resume, and I have no idea how to disable that. maybe it's utouch, I don't really know.
The bottom line is that there is a way to configuring middle click permanently:
- add a custom startup application (under the 'gear' menu in unity on the top right) with any name you like, e.g. "touchpad tweak" and the command
sh -c "/usr/bin/synclient TapButton3=2", then save it.
This is well and good until you suspend and resume. for that:
- Open a terminal, and type
gksudo gedit /etc/pm/sleep.d/80-synaptics-three-finger Copy and paste the following text into the file:
#!/bin/sh # Restore three finger tapping case "$1" in resume|thaw) sleep 5; /bin/su YOUR_USER_NAME -c "/usr/bin/synclient TapButton3=2" ;; esacReplace
YOUR_USER_NAMEwith your login name - not the long one; e.g. use 'fred' instead of 'fred fuchs'. if you don't remember it, you can always typewhoamiin a terminal window and it'll tell you.Save the file.
Make it executable; simply type
sudo chmod +x /etc/pm/sleep.d/80-synaptics-three-fingerin the terminal window. it will ask for your password.
If you did all this correctly, your system should retain three finger clicking as middle click after a suspend/resume cycle.
Now that was fun and user-friendly, wasn't it? I can only wonder why unity silently meddles with synclient settings and wonder even more why there isn't a simple GUI tool to configure all of this. anyway, there you have it.
4I tried several solutions offered here, but nothing was working on my Toshiba Satellite. The trick seems to be the distinction between a "touchpad" which is a mouse pad with buttons adjacent to it, and a "clickpad" which is a pad with no adjacent buttons: you click the pad.
This Toshiba Satellite has a clickpad, so clicking in the corner didn't work, and I couldn't get three-finger click to work.
Based on dllud's answer, I found I had to edit (on kubuntu) /usr/share/X11/xorg.conf.d/50-synaptics.conf based on information at and I now have sections like so:
Section "InputClass" Identifier "Default clickpad buttons" MatchDriver "synaptics" Option "SoftButtonAreas" "60% 0 82% 0 40% 59% 82% 0"
EndSectionThis sets the pad to be 40% left button, 20% middle button, 40% right button. It still takes some practice to hit the middle correctly.
1Touchpad with buttons
I used to have a laptop with touchpad buttons, and to click both of them simultaneously to cause middle click emulation.
Touchpad without button
I now have a buttonless touchpad. Here is what I did:
Use the following command to learn about your touchpad size values and configuration:
$ synclient -l | grep 'Area\|Edge\|ClickFinger'
LeftEdge = 129
RightEdge = 3105
TopEdge = 126
BottomEdge = 2211
VertEdgeScroll = 0
HorizEdgeScroll = 0
ClickFinger1 = 1
ClickFinger2 = 3
ClickFinger3 = 0
AreaLeftEdge = 0
AreaRightEdge = 0
AreaTopEdge = 0
AreaBottomEdge = 0
RightButtonAreaLeft = 1617
RightButtonAreaRight = 0
RightButtonAreaTop = 1916
RightButtonAreaBottom = 0
MiddleButtonAreaLeft = 0
MiddleButtonAreaRight = 0
MiddleButtonAreaTop = 0
MiddleButtonAreaBottom = 0Then use synclient var1=value1 var2=value2 ... syntax to modify those values to suit your needs. See the example command I give belo
Note that:
ClickFinger1,ClickFinger2andClickFinger3options remap clicks when they are done with respectively one, two or three fingers left touching the touchpad.- Value 1 corresponds to left click.
- Value 2 corresponds to middle click.
- Value 3 corresponds to right click.
Here is the command I ran and set in the Startup Applications Preferences window to configure my touchpad:
$ synclient RightButtonAreaTop=0 RightButtonAreaLeft=0 MiddleButtonAreaTop=1916 MiddleButtonAreaLeft=1617 ClickFinger1=0RightButtonAreaTop=0andRightButtonAreaLeft=0unset the "right button" causing right click (I failed to use ivan-volosyuk's settings to have all three buttons set. I only have middle click). I use two-finger tap to produce right click. Not being able to maintain right click is not bothering enough to push me to find a solution.MiddleButtonAreaTop=1916andMiddleButtonAreaLeft=1617set the "right button" to cause middle click.ClickFinger1=0Disables the special interpretation of the click which happen when one finger touches the surface at the moment of the click. Its previous value:ClickFinger1=1caused my right clicks being interpreted as left click when leaving a non-clicking finger touching the touchpad.
Hack it the way you like. Maybe you'll do better than me.
Check this. I have put on startup
xinput set-int-prop 'SynPS/2 Synaptics TouchPad' "Synaptics Tap Action" 8 0 0 0 0 1 3 2 1 Touchpad has different settings for taps at the corners, and if you tap at the bottom right corner it does Right click. But if you tap at the top right corner it does Middle click. This is the default setting.
simple bro works for me :)
1Clicking both left and right buttons at the same time works for some systems.
See the Xorg documentation and search for the term "middle".
Ubuntu 12.04
touchpad: Elantech
synclient seems not working with me, so I used this command
xinput set-prop 15 "Synaptics Tap Action" 2, 3, 0, 0, 1, 3, 2and add it to .bashrc file, so it will execute on startup. Last value 2 sets three-finger tap to execute middle-click.
If you look in the XFCE wiki for mouse/trackpad settings it will mention how "Device Properties" can be set. Unfortunately it's not complete because direct device settings have to be under Properties/ to take effect. For example, to make two finger touches middle click and three finger touches right click I need to alter "Synaptics Tap Action". Here's what it looks like initially:
$ xinput list-props "ETPS/2 Elantech Touchpad" | grep "Tap Action" Synaptics Tap Action (298): 2, 3, 0, 0, 1, 3, 0To have XFCE 4.12 set this it is necessary to do the following:
xfconf-query -c pointers -p /ETPS2_Elantech_Touchpad/Properties/Synaptics_Tap_Action -n -t int -t int -t int -t int -t int -t int -t int -s 2 -s 3 -s 0 -s 0 -s 1 -s 2 -s 3Now we can see it changed:
$ xinput list-props "ETPS/2 Elantech Touchpad" | grep "Tap Action" Synaptics Tap Action (298): 2, 3, 0, 0, 1, 2, 3 Just updating for Ubuntu 20.04:
- Go to Ubuntu Software and install "Tweak advanced GNOME 3 settings";
- On "Tweaks" go to "Keyboards & Mouse";
- On "Mouse Click Emulation" select "Fingers" option;
That's it: two fingers for right-click and three fingers for middle-click!
I would recommend adding synclient TapButton2=2 and synclient TapButton3=3 to your ~/.bashrc configuration. To do this open a terminal and run:
$ echo synclient TapButton2=2 >> ~/.bashrc
$ echo synclient TapButton3=3 >> ~/.bashrcThen reboot your computer.
The synclient commands do the following:
synclient TapButton2=2will set the two-finger tap to a middle button click.synclient TapButton3=3will set the three-finger tap to a right button click.