3 touch taps and clicks are broken

Bug #971783 reported by Chase Douglas
60
This bug affects 12 people
Affects Status Importance Assigned to Milestone
xserver-xorg-input-synaptics (Ubuntu)
Fix Released
Low
Chase Douglas

Bug Description

xserver-xorg-input-synaptics 1.5.99.902-0ubuntu1 caused a regression in functionality. Three touch taps and click actions, which may be set using synclient TapButton3=2 and synclient ClickFinger3=2, no longer function correctly on many touchpads.

Some devices report a higher touch count than the number of touches they can provide data for. For example, many Synaptics touchpads can report up to five touches, but only provide data for two of them. We need to be able to report the correct number of touches for these devices when there are three touches. Using the maximum of the reported touch count and the number of touches provided ensures the count is accurate for all device types.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package xserver-xorg-input-synaptics - 1.5.99.902-0ubuntu2

---------------
xserver-xorg-input-synaptics (1.5.99.902-0ubuntu2) precise; urgency=low

  * Fix three touch taps and clicks on some trackpads (LP: #971783)
    - Add temporary patch 201_fix_touch_count.patch
 -- Chase Douglas <email address hidden> Mon, 02 Apr 2012 11:33:58 -0700

Changed in xserver-xorg-input-synaptics (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Leonardo Couto (leo4293) wrote :

Clean Ubuntu 12.04 installation here, on asus Eee pc 1000HA and three fingers click is not working.

Please, is there any workaround? This bug is *very* annoying.

Revision history for this message
Leonardo Couto (leo4293) wrote :

I am SO sorry, only now I read again the bug description and realized that I have to issue the command "synclient TapButton3=2 ClickFinger3=2" for it to work. I did it and now it is working. Thank you very much!

Revision history for this message
Serhiy (xintx-ua) wrote :

It's still not fixed for me on Asus EEE PC 901 with "ETPS/2 Elantech Touchpad". Is it a separate bug?
Version: 1.5.99.902-0ubuntu5.1

Revision history for this message
shane (shane-animail) wrote :

The "workaround" of using synclient works to a point but is disabled again after resume from suspend

Revision history for this message
Timur I. Davletshin (timur-davletshin) wrote :

Still not working out of the box on MacBook Pro 7.1 and 12.04 clear install.

Revision history for this message
Vincent Tschanz (fogia) wrote :

I have 12.04 up to date, with xserver-xorg-input-synaptics 1.5.99.902-0ubuntu5.1 and 3 fingers click is not working.

running "synclient TapButton3=2 ClickFinger3=2" works for me, but it does not persist aftere reboot or closing the session.
Any workaround to get this fix working permanently?

Please see no offense in the folowing question, but is there any hope to see this bug fixed automatically via further update or it is now a "feature" and we won't see an official fix before 12.10?

Revision history for this message
Vincent Tschanz (fogia) wrote :

to complete de information in my previous message, I have a macbook pro 1.2

Revision history for this message
Chase Douglas (chasedouglas) wrote :

Hi Vincent,

The configuration is not going to be enabled by default now or in future Ubuntu releases because it conflicts with Unity gestures. If you want to enable it by default, it needs to be set in /etc/X11/xorg.conf like:

Section "InputClass"
        Identifier "touchpad 3-tap"
        Driver "synaptics"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Option "TapButton3" "2"
        Option "ClickFinger3" "2"
EndSection

I believe that will work, though I haven't tried it myself.

Revision history for this message
h1repp (heinz-repp) wrote :

Chase Douglas (chasedouglas) wrote on 2012-05-24:
> I believe that will work, though I haven't tried it myself.

Unfortunately, this does not work, at least with my EeePC/Elantech touchpad and Precise/Unity2D. Besides, the /etc/X11/xorg.conf is abandoned. The new way is putting a new file into the /usr/share/X11/xorg.conf.d/ directory which I did using the section above. The X-server reads it and sets the options correctly as can be seen in the Xorg.0.log. But when the system is up, synclient -l shows that the TapButton3 option has been reset to 0 (the ClickFinger3 option is kept, though). It seems that Unity resets it on start.

The solution is to add a new entry to the startup applications (System - Preferences - Startup Applications) with any name and the command "synclient TapButton3=2". This way, the option is set AFTER Unity is up, the setting persists, and triple-tap->middle-click works again as it used to do before the Unity makers decided to take it away ...

Revision history for this message
Hannu Leinonen (hleinone) wrote :

"The solution is to add a new entry to the startup applications (System - Preferences - Startup Applications) with any name and the command "synclient TapButton3=2". This way, the option is set AFTER Unity is up, the setting persists, and triple-tap->middle-click works again as it used to do before the Unity makers decided to take it away ..."

Works fine in the beginning, but once the computer suspends it's reset back to 0. And of course, the startup application won't run when returning from suspend.

Revision history for this message
h1repp (heinz-repp) wrote :

You can remedy this as well. Just put a script (user/group: root/root, executable) within the /etc/pm/sleep.d/ directory, the name starting with anything between 00 and 49, e.g. 01_enable_middleclick and following the instructions in /usr/share/doc/pm-utils/HOWTO.hooks.gz; this will be executed as root whenever the systems suspends or hibernates or resumes from either. Within this script call another script (e.g. /usr/local/sbin/enable_middleclick) as your username using su:

> #!/bin/bash
> case "$1" in
> thaw|resume)
> su -c - <yourusername> /usr/local/sbin/enable_middleclick
> ;;
> *)
> ;;
> esac
> exit $?

The referenced script /usr/local/sbin/enable_middleclick reads:

> #!/bin/bash
> DISPLAY=:0 synclient TapButton3=2

This ensures synclient knows where to apply the settings. That way three finger tap middle click even works after suspend or hibernation. Its a shame on has to resort to such nasty tricks to circumvent Unity's greediness as this bug should have been fixed within this package (one option to turn off the three tap feature would have been enough).

Revision history for this message
bwat47 (bwat47) wrote :

btw, here's a cleaner way to fix the suspend/resume issue, it uses a gnome hook so the setting stays applied at all times:

http://tombuntu.com/index.php/2011/11/06/persistent-touchpad-configuration-in-ubuntu-11-10/

Revision history for this message
rubo77 (rubo77) wrote :

The problem still exists in 14.04 but seemingly not on all devices. I still have this on Lenovo Yoga 2 Pro. I solved it by adding

    synclient TapButton2=3

see http://askubuntu.com/questions/160164/how-do-i-enable-middle-mouse-button-emulation-in-12-04-lts/518612#518612

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.