[pkg-cinnamon] Bug#766300: cinnamon-settings-daemon: Synaptics touchpads: 3-touch tap is ignored (TapButton3 always 0)

Andrew Chadwick a.t.chadwick at gmail.com
Wed Oct 22 02:10:00 UTC 2014


Package: cinnamon-settings-daemon
Version: 2.2.4.repack-6~atc1
Severity: normal
Tags: patch

Hi there --

csd 2.2.4.repack-6 always turns off 3-tap middle button on my Dell XPS13
Developer Edition's fancy Synaptics clickpad. This is quite a newly supported
device, but looking at the code, other kinds of touchpad will be affected too.
The problem is however more apparent with a clickpad.

This omission appears to be deliberate (see the patch), but it is also
fundamentally incorrect behaviour and damn inconvenient. Moreover, it appears
to have been "disabled" in order to support "gestures" with the touchpad which
do not appear to have suppport elsewhere in Cinnamon, and which I do not want.
Please consider permitting csd to set up touchpads with working middle button
support via tap.

3-touch taps for middle button work fine in Xfce4 and GNOME on my hardware
without any special fiddling (other than a visit to the prefs).

--------------------8<------------------
--- plugins/mouse/csd-mouse-manager.c.BAK       2014-06-08 13:01:44.000000000
+0100
+++ plugins/mouse/csd-mouse-manager.c   2014-10-22 02:27:40.692238266 +0100
@@ -658,5 +658,5 @@
                 data[4] = (state) ? ((left_handed) ? 3 : 1) : 0;
                 data[5] = (state) ? ((left_handed) ? 1 : 3) : 0;
-                data[6] = 0; /* Disable three touch tap so gestures work */
+                data[6] = (state) ? 2 : 0;
                 XChangeDeviceProperty (GDK_DISPLAY_XDISPLAY
(gdk_display_get_default ()), xdevice, prop, XA_INTEGER, 8,
                                        PropModeReplace, data, nitems);
-------------------->8------------------



*** Reporter, please consider answering these questions, where appropriate ***

   * What led up to the situation?

Attempting to get my touchpad working correctly. As I see it.

   * What exactly did you do (or not do) that was effective (or
     ineffective)?

1. Configured "System Settings -> Mouse & Touchpad -> Touchpad -> General ->
Enable mouseclicks with touchpad" to on.

2. (when that only provided {single,double} tap button {1,3}), I then
configured /etc/X11/xorg.conf.d/50-synaptics.conf appropriately:

Section "InputClass"
        Identifier "touchpad catchall"
        Driver "synaptics"
        MatchIsTouchpad "on"
        Option "CoastingSpeed" "0"
    # These too, or they won't work in gdm/lightdm
    # Might improve Cinnamon's handling of touchpads? -- atc
    Option "TapButton1" "1"
    Option "TapButton2" "3"
    Option "TapButton3" "2"
EndSection

   * What was the outcome of this action?

Neither approach worked: although my dm was happier, Cinnamon was not. Checking
with synclient after setting "Enable mouseclicks with touchpad" to on produces
the following output:

--------------------8<------------------
$ synclient
Parameter settings:
[...]
    TapButton1              = 1
    TapButton2              = 3
    TapButton3              = 0
    ClickFinger1            = 1
    ClickFinger2            = 3
    ClickFinger3            = 2
[...]
-------------------->8------------------

Experimenting a bit more reveals that csd touches TapButton{1,2,3} always, but
never touches ClickFinger{1,2,3}.

   * What outcome did you expect instead?

Note the disparity between the clickpad's multi-finger clicks and its multi-
finger taps. These two sections should (IMO) match: I expect *tapping* with
three fingers to send a middle button press event because *clicking* with three
fingers does this.

*** End of the template - remove these template lines ***



-- System Information:
Debian Release: jessie/sid
  APT prefers testing
  APT policy: (900, 'testing'), (500, 'testing-updates'), (50, 'unstable'), (5, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 3.16-2-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages cinnamon-settings-daemon depends on:
ii  dconf-gsettings-backend [gsettings-backend]  0.22.0-1
ii  gsettings-desktop-schemas                    3.14.0-1
ii  libc6                                        2.19-11
ii  libcairo2                                    1.12.16-5
ii  libcanberra-gtk3-0                           0.30-2.1
ii  libcanberra0                                 0.30-2.1
ii  libcinnamon-desktop4                         2.2.3-2
ii  libcolord2                                   1.2.1-1+b1
ii  libcups2                                     1.7.5-4+b1
ii  libdbus-glib-1-2                             0.102-1
ii  libfontconfig1                               2.11.0-6.1
ii  libgdk-pixbuf2.0-0                           2.31.1-2+b1
ii  libglib2.0-0                                 2.42.0-2
ii  libgnomekbd8                                 3.6.0-1
ii  libgtk-3-0                                   3.14.1-1
ii  libgudev-1.0-0                               215-5+b1
ii  liblcms2-2                                   2.6-3+b2
ii  libnotify4                                   0.7.6-2
ii  libnspr4                                     2:4.10.7-1
ii  libnss3                                      2:3.17.1-1
ii  libpango-1.0-0                               1.36.8-2
ii  libpolkit-gobject-1-0                        0.105-7
ii  libpulse-mainloop-glib0                      5.0-6+b1
ii  libpulse0                                    5.0-6+b1
ii  librsvg2-2                                   2.40.4-1
ii  libsystemd0                                  215-5+b1
ii  libupower-glib3                              0.99.1-3
ii  libwacom2                                    0.8-1
ii  libx11-6                                     2:1.6.2-3
ii  libxext6                                     2:1.3.3-1
ii  libxfixes3                                   1:5.0.1-2
ii  libxi6                                       2:1.7.4-1
ii  libxklavier16                                5.2.1-1
ii  libxtst6                                     2:1.2.2-1
ii  nemo-data                                    2.2.4-2

Versions of packages cinnamon-settings-daemon recommends:
ii  pulseaudio  5.0-6+b1

Versions of packages cinnamon-settings-daemon suggests:
ii  awesome [x-window-manager]   3.4.15-1+b1
ii  cinnamon [x-window-manager]  2.2.16-1
ii  cinnamon-screensaver         2.2.4-5+b1
ii  metacity [x-window-manager]  1:3.12.0-2
ii  muffin [x-window-manager]    2.2.6-4
ii  x11-xserver-utils            7.7+3

-- no debconf information



More information about the pkg-cinnamon-team mailing list