Touchpad settings don't work after upgrading to 17.10 (because xserver-xorg-input-synaptics is still installed)

Bug #1733032 reported by Jonathan Kamens
44
This bug affects 7 people
Affects Status Importance Assigned to Milestone
gnome-control-center (Ubuntu)
In Progress
Medium
Daniel van Vugt
gtk+3.0 (Ubuntu)
New
Medium
Daniel van Vugt
mutter (Ubuntu)
In Progress
Medium
Daniel van Vugt

Bug Description

Since upgrading to 17.10, my mouse pointer is repeatedly and frequently getting moved against my will when I am typing on my laptop keyboard (as opposed to external keyboard) because my hand brushes against the touchpad or even just near its surface.

Furthermore, I don't want tap-to-click to be enabled. I want to actually have to push down on the mousepad hard enough to click it to generate a mouse button event. I can't figure out how to disable tap-to-click in 17.10 either.

I did not have these problems _at all_ in 17.04.

I have the touchpad click method set to "Areas" and "Disable While Typing" enabled in gnome-tweak-tool. This does not help.

I have these lines in the touchpad section of /usr/share/X11/xorg.conf.d/40-libinput.conf as well:

Option "DisableWhileTyping" "true"
Option "PalmDetection" "true"
Option "Tapping" "false"

They don't help either.

This is a substantial regression in functionality from 17.04.

It appears to be a problem using both Wayland and Xorg.

ProblemType: Bug
DistroRelease: Ubuntu 17.10
Package: gnome-shell 3.26.1-0ubuntu5
ProcVersionSignature: Ubuntu 4.13.0-16.19-generic 4.13.4
Uname: Linux 4.13.0-16-generic x86_64
ApportVersion: 2.20.7-0ubuntu3.4
Architecture: amd64
CurrentDesktop: ubuntu:GNOME
Date: Fri Nov 17 21:28:05 2017
DisplayManager: gdm3
InstallationDate: Installed on 2017-05-19 (182 days ago)
InstallationMedia: Ubuntu 17.04 "Zesty Zapus" - Release amd64 (20170412)
SourcePackage: gnome-shell
UpgradeStatus: Upgraded to artful on 2017-10-20 (28 days ago)

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

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in gnome-shell (Ubuntu):
status: New → Confirmed
Revision history for this message
Charles Green (chick) wrote :

Im my case, I have found that disabling a second touch device (a touchscreen) fixes the issue.

Revision history for this message
Jonathan Kamens (jik) wrote :

>In my case, I have found that disabling a second touch device (a touchscreen) fixes the issue.

Could you be more specific about what you did and how you did it? I don't quite understand.

Revision history for this message
Charles Green (chick) wrote : Re: [Bug 1733032] Re: touchpad disable while typing, disable tap-to-click don't work in 17.10

In my case, xinput shows a device "ELAN Touchscreen"

I have issued the command " xinput disable 'ELAN Touchscreen' ", which
disables that device entirely, and my touchpad then works correctly.  I
will update my comment in the bug report.

On 12/04/2017 05:33 AM, Jonathan Kamens wrote:
>> In my case, I have found that disabling a second touch device (a
> touchscreen) fixes the issue.
>
> Could you be more specific about what you did and how you did it? I
> don't quite understand.
>

Revision history for this message
Charles Green (chick) wrote : Re: touchpad disable while typing, disable tap-to-click don't work in 17.10

Expanding upon comment #3

xinput shows

⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=14 [slave pointer (2)]
⎜ ↳ ELAN Touchscreen id=9 [slave pointer (2)]
⎜ ↳ Logitech M315/M235 id=10 [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)]
    ↳ Dell WMI hotkeys id=12 [slave keyboard (3)]
    ↳ AT Translated Set 2 keyboard id=13 [slave keyboard (3)]

I have issued the command

xinput disable 'ELAN Touchscreen'

this disables my touchscreen, which I don't use anyhow, and the disable-while-typing works correctly on my touchpad.

Revision history for this message
Jonathan Kamens (jik) wrote :

Alas, not a solution I can use. :-(

Revision history for this message
Charles Green (chick) wrote : Re: [Bug 1733032] Re: touchpad disable while typing, disable tap-to-click don't work in 17.10

But hopefully, a piece of the problem so the developers can write a
solution!

What is the output of "xinput" on your computer?

On 12/04/2017 08:17 AM, Jonathan Kamens wrote:
> Alas, not a solution I can use. :-(
>

Revision history for this message
Jonathan Kamens (jik) wrote : Re: touchpad disable while typing, disable tap-to-click don't work in 17.10

$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ SynPS/2 Synaptics TouchPad id=12 [slave pointer (2)]
⎜ ↳ Logitech USB Receiver id=14 [slave pointer (2)]
⎜ ↳ Logitech USB Receiver id=18 [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)]
    ↳ BisonCam, NB Pro: BisonCam, NB id=10 [slave keyboard (3)]
    ↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)]
    ↳ Jabra Link 370 id=13 [slave keyboard (3)]
    ↳ Logitech USB Receiver id=15 [slave keyboard (3)]
    ↳ Keyed Up Labs ES-87 id=16 [slave keyboard (3)]
    ↳ Keyed Up Labs ES-87 id=17 [slave keyboard (3)]

Revision history for this message
Charles Green (chick) wrote : Re: [Bug 1733032] Re: touchpad disable while typing, disable tap-to-click don't work in 17.10

I run a logitech wireless mouse, although my receiver comes up as
"Logitech M315/M235".  I'm not sure why this device would show on your
system as devices 14 and 18.  I assume device 15 must be a wireless
keyboard?

Just for kicks, you could try selectively disabling one or the other of
the devices:

xinput disable 14

check mouse, touchpad actions

xinput enable 14

retry for device 18.....

On 12/04/2017 08:52 AM, Jonathan Kamens wrote:
> $ xinput
> ⎡ Virtual core pointer id=2 [master pointer (3)]
> ⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
> ⎜ ↳ SynPS/2 Synaptics TouchPad id=12 [slave pointer (2)]
> ⎜ ↳ Logitech USB Receiver id=14 [slave pointer (2)]
> ⎜ ↳ Logitech USB Receiver id=18 [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)]
> ↳ BisonCam, NB Pro: BisonCam, NB id=10 [slave keyboard (3)]
> ↳ AT Translated Set 2 keyboard id=11 [slave keyboard (3)]
> ↳ Jabra Link 370 id=13 [slave keyboard (3)]
> ↳ Logitech USB Receiver id=15 [slave keyboard (3)]
> ↳ Keyed Up Labs ES-87 id=16 [slave keyboard (3)]
> ↳ Keyed Up Labs ES-87 id=17 [slave keyboard (3)]
>

Revision history for this message
Daniel van Vugt (vanvugt) wrote : Re: touchpad disable while typing, disable tap-to-click don't work in 17.10

Jonathan,

Can you find the options for configuring your touchpad in:

  Settings > Devices > Mouse & Touchpad?

I am imagining either that's too hard to find (I agree), or the settings might be missing (which can happen on some laptops where the touchpad is misdetected as a mouse).

Changed in gnome-shell (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Jonathan Kamens (jik) wrote :

/me Checks if I am an idiot.

Nope, looks like I am not an idiot!

The only settings available in Settings > Devices > Mouse & Touchpad are "Primary Button", "Mouse Speed", and "Natural Scrolling".

And as you can see from the Xorg.0.log which I have attached, the touchpad appears to be detected as a touchpad just fine.

Also, it seems highly questionable to change a bug from Confirmed to Incomplete when five different people have reported that it affects them.

Changed in gnome-shell (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Charles Green (chick) wrote :

/me Looks at all the settings again

I have the same problem as Jonathan, and can confirm that the mouse is set correctly.

It does operate properly if the touchscreen of my computer is disabled, but if the touchscreen is active, then the disable-to-type function of the touchpad does not work properly.

I've attached my Xorg.0.log as well.

Revision history for this message
Satya Arjunan (satya-arjunan) wrote :

I can confirm that I have the same issue on Macbook Pro late 2017 model 14,2. Please fix this.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Jonathan,

I suggest a workaround might be to:
1. sudo apt install xserver-xorg-input-synaptics
2. Only log in to "Ubuntu on Xorg", so now you're avoiding libinput completely.
3. Tweak your settings with 'synclient'.

Since this sounds like a problem specifically with libinput, please help us to progress this issue by reporting it upstream to the libinput developers here:

https://bugs.freedesktop.org/enter_bug.cgi?product=wayland&component=libinput

And when done, let us know the ID of the newly-created bug.

affects: gnome-shell (Ubuntu) → libinput (Ubuntu)
Revision history for this message
Jonathan Kamens (jik) wrote :
Revision history for this message
Jonathan Kamens (jik) wrote :

Actually, I think opening a libinput bug is premature, for reasons I will explain below. I'm going to close that other bug until I can quantify better what is going on.

Revision history for this message
Jonathan Kamens (jik) wrote :

Logging into Ubuntu (i.e., not "Ubuntu on Xorg"), the "Disable While Typing" Touchpad setting in gnome-tweak-tool now appears to work. Furthermore, tapping to click does _not_ work, i.e., the behavior I want is present by default as far as I can tell. In fact, I can't figure out any way to cause tapping the touchpad to generate a click. So either the behavior has changed in an update since I reported this bug, or I was using Xorg but thought I was using Wayland.

Logging into Ubuntu on Xorg, without anything special in any of my X server config files, the "Disable While Typing" setting in gnome-tweak-tool doesn't do anything, and tap to click is enabled and there's no way I can find to disable it. So that appears to be a bug in GNOME, not a bug in libinput. There should be a way to disable tap to click, and the "Disable While Typing" setting should be obeyed. If it's not, then I believe that means GNOME isn't populating that setting through to the X server the way it needs to be, which doesn't sound like a libinput bug.

Logging into Ubuntu on Xorg, these lines added to the "libinput touchpad catchall" section of /usr/share/X11/xorg.conf.d/40-libinput.conf appear to have no effect, even though Xorg.0.log confirms that section is being applied:

    Option "Tapping" "false"
    Option "DisableWhileTyping" "true"
    Option "PalmDetection" "true"

Perhaps this is a libinput bug, or perhaps the synaptics sections that are being applied to the device after the libinput sections are overriding the libinput settings?

Again logging into Ubuntu on Xorg, if I add this to my X config then tap to click is gone and it seems like there is _some_ protection against brushing against the trackpad, although there still isn't full disable by typing:

    Section "InputClass"
      Identifier "disable touchpad tap to click, enable palm detection"
      Driver "synaptics"
      MatchIsTouchpad "on"
      MatchDevicePath "/dev/input/event*"
      Option "MaxTapTime" "0"
      Option "PalmDetect" "on"
    EndSection

So, the potential issues that _I_ see here are that the Disable While Typing setting does not work in "Ubuntu on Xorg", and that the libinput options I'm configuring into my X server don't appear to take effect. Should I indeed open a libinput bug about that, or re-open the bug I opened and closed but clarify in the re-opened bug that it only applies to Xorg, not to Wayland?

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

"Tap to Click" is meant to be configurable in the GUI here:

  Settings > Devices > Mouse & Touchpad > Touchpad > Tap to Click

If you don't see that option then the issue is either:

  (a) libinput or the kernel have not detected your touchpad as a clickpad correctly; or
  (b) You have xserver-xorg-input-synaptics installed so the Touchpad GUI will be missing.

Also note this will be ignored by libinput as it is a setting for xserver-xorg-input-synaptics only:

    Section "InputClass"
      Identifier "disable touchpad tap to click, enable palm detection"
      Driver "synaptics"

Please clarify for us if you have kept xserver-xorg-input-synaptics installed. Because if you have and continue to log into "Ubuntu on Xorg", then libinput has nothing to do with your issues and this bug needs redirecting elsewhere.

Changed in libinput (Ubuntu):
status: Confirmed → Incomplete
Changed in libinput:
importance: Unknown → Medium
status: Unknown → Invalid
Revision history for this message
Jonathan Kamens (jik) wrote :

OK, so...

Both disabling tap-to-click and enabling disable-touchpad-while-typing work properly, in both "Ubuntu" and "Ubuntu on Xorg", when I remove the xserver-xorg-input-synaptics package.

I suppose that means this bug is invalid, BUT...

1) It still seems like a bug to me that installing xserver-xorg-input-synaptics breaks stuff. Shouldn't both the settings app and gnome-tweak-tool be able to tell when that X server driver is being used and behave appropriately?

2) I don't believe I ever installed xserver-xorg-input-synaptics by hand, so I assume it was a holdover from before I upgraded to 17.10. So is it a bug we should be paying attention to -- or documenting in the release notes, or SOMETHING -- that upgrading from before 17.10 to 17.10 or later is going to break anyone who has the xserver-xorg-input-synaptics package installed before the upgrade?

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

You make excellent points.

1) Going forward I believe the Gnome guys see anything that's not libinput as unsupported. So we could log an enhancement request to get them to add Xorg synaptics support (ie. tweak the same things as 'synclient' does). But they're likely to ignore that request. Still, I think if someone could implement it based on the synclient code, they might accept a patch.

2) This is certainly a problem and what we should be fixing (although I haven't tested upgrades myself to verify). Let's make this bug about the upgrade problem.

Thanks for persisting and figuring it out.

summary: - touchpad disable while typing, disable tap-to-click don't work in 17.10
+ Touchpad settings don't work after upgrading to 17.10 (xserver-xorg-
+ input-synaptics is still installed)
summary: - Touchpad settings don't work after upgrading to 17.10 (xserver-xorg-
- input-synaptics is still installed)
+ Touchpad settings don't work after upgrading to 17.10 (because xserver-
+ xorg-input-synaptics is still installed)
Changed in libinput (Ubuntu):
status: Incomplete → New
no longer affects: libinput
Changed in gnome-control-center (Ubuntu):
importance: Undecided → High
Changed in libinput (Ubuntu):
importance: Undecided → High
Changed in gnome-control-center (Ubuntu):
importance: High → Medium
Changed in libinput (Ubuntu):
importance: High → Medium
Revision history for this message
Sebastien Bacher (seb128) wrote :

duplicate of bug #1686081

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Yes and no... That other bug has the precondition "If -synaptics is installed", which implies that one needs to be fixed for the case where synaptics remains installed. This bug however is fixed just by ensuring synaptics gets uninstalled.

Changed in gnome-control-center (Ubuntu):
assignee: nobody → Daniel van Vugt (vanvugt)
Changed in libinput (Ubuntu):
assignee: nobody → Daniel van Vugt (vanvugt)
Changed in gnome-control-center (Ubuntu):
status: New → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in mutter (Ubuntu):
status: New → Confirmed
affects: libinput (Ubuntu) → mutter (Ubuntu)
Changed in mutter (Ubuntu):
assignee: Daniel van Vugt (vanvugt) → nobody
status: New → In Progress
assignee: nobody → Daniel van Vugt (vanvugt)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Patch for mutter (which is the first half of the fix).

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "mutter_3.28.0-1ubuntu1.debdiff" seems to be a debdiff. The ubuntu-sponsors team has been subscribed to the bug report so that they can review and hopefully sponsor the debdiff. If the attachment isn't a patch, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are member of the ~ubuntu-sponsors, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issue please contact him.]

tags: added: patch
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Patch for gnome-control-center.

This has reminded me that gtk/gdk also needs a fix but I've worked around that for now.

Changed in gtk+3.0 (Ubuntu):
importance: Undecided → Medium
assignee: nobody → Daniel van Vugt (vanvugt)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I'll see if I can get a fix for GDK/GTK accepted upstream to clean up that device detection.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

All work is now being done in bug 1686081.

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.