Skip to content

Instantly share code, notes, and snippets.

@tsrivishnu
Last active February 16, 2021 14:09
Show Gist options
  • Save tsrivishnu/5b467f07374ce42ad6d97b6a3fdf0ea5 to your computer and use it in GitHub Desktop.
Save tsrivishnu/5b467f07374ce42ad6d97b6a3fdf0ea5 to your computer and use it in GitHub Desktop.
How to enable Middle button (plus Trackpoint) scrolling on Thinkpad T440p running Ubuntu 16.04

Trackpoint scrolling on Thinkpad T440p running Ubuntu 16.04

I have moved to use Ubuntu for work after more than 6 years of using a Macbook. Like many others, I didn't really like moving away from Mac but few limitations, especially the poor performance of Docker on Mac convinced me to stick to Ubuntu. Honestly, Ubuntu, or any other linux operating system isn't that bad once you know the basics and figure out that there is a solution for almost all the problems.

With regards to build quality, I feel, Thinkpads are the next best to Macbooks. I have seen my colleagues use windows on them and use the trackpoint scroll. That little red stick in the middle of the keyboard along with a press on the middle button on the trackpad will let you scroll a page.

This hasn't been working on my Thinkpad T440p running Ubuntu 16.04. I really wanted it and can't really tell how much I hated the fact that I couldn't get it to work. After some reading on this bug report, it looks like installing the package xserver-xorg-input-libinput is all you need to do to get it to work. Install with:

sudo apt-get install xserver-xorg-input-libinput

and restart your machine and the trackpoint scroll should be working like expected.

Enable Natural scroll after install libinput

If you use natural scroll from your trackpad, you might have enabled it in the 'Mouse & Trackpad' section in the settings. After install libinput, the GUI option to enable it will be gone. To enable it, you will need to edit the file /usr/share/X11/xorg.conf.d/90-libinput.conf and add the line

  Option  "NaturalScrolling" "True"

in the section that has Identifier that says 'trackpad' and restart.

@sitompul
Copy link

sitompul commented Jun 5, 2018

its not working on ubuntu 18.04. do you have an updated workaround/fix?

@nsmlzl
Copy link

nsmlzl commented Jun 21, 2018

I would check, if you are using for the TrackPad the libinput or synaptics drivers:
xinput list shows the TrackPad and Trackpoint connected. In my case I could use xinput list-props "xinput list-props "SynPS/2 Synaptics TouchPad" to show me all the settings of my TrackPad.
Check if it says libinput or synaptics in front of the settings.

For me it worked, when for TrackPad and TrackPoint I used the same driver.
https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-input-libinput/+bug/1690443

@lckarssen
Copy link

Thanks @nschmelzle, the bug report in your post pointed to the solution on my Thinkpad T440s. The Synaptics driver was used for the touchpad. Removing /usr/share/X11/xorg.conf.d/70-synaptics.conf and restarting solved the issue for me (Ubuntu 18.04 with Xorg, upgraded from 17.10 and before).

@stefantkeller
Copy link

stefantkeller commented Jul 8, 2018

The same problem showed up on my ThinkPad E570. Completely removing /usr/share/X11/xorg.conf.d/70-synaptics.conf did bring back the functionality of middle button scrolling (thanks @Ickarssen for figuring that out!). However, this also removed the trackpad completely.

To keep the " useful" configurations in 70-synaptics.conf and only removing the conflicting part I commented out the following section. This seems to do the job for me.

# This option enables the bottom right corner to be a right button on clickpads  
# and the right and middle top areas to be right / middle buttons on clickpads
# with a top button area.  
# This option is only interpreted by clickpads.  
Section "InputClass"  
        Identifier "Default clickpad buttons"  
        MatchDriver "synaptics"  
        Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"  
        Option "SecondarySoftButtonAreas" "58% 0 0 15% 42% 58% 0 15%"  
EndSection

(In case someone finds this workaround and wants more detailed instructions:)
First, I renamed the file in question (as the original might be overwritten in future updates):
$ sudo mv /usr/share/X11/xorg.conf.d/70-synaptics.conf /usr/share/X11/xorg.conf.d/71-synaptics-fixed.conf

Secondly, I added a " #" to the beginning of each of the lines from Section to EndSection

#Section "InputClass"  
#        Identifier "Default clickpad buttons"  
#        MatchDriver "synaptics"  
#        Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"  
#        Option "SecondarySoftButtonAreas" "58% 0 0 15% 42% 58% 0 15%"  
#EndSection

Third, reboot.

@sitompul
Copy link

sitompul commented Nov 9, 2018

Thanks @nschmelzle, the bug report in your post pointed to the solution on my Thinkpad T440s. The Synaptics driver was used for the touchpad. Removing /usr/share/X11/xorg.conf.d/70-synaptics.conf and restarting solved the issue for me (Ubuntu 18.04 with Xorg, upgraded from 17.10 and before).

Thank you so much for this. It finally works

@umbe1987
Copy link

Thanks @nschmelzle, the bug report in your post pointed to the solution on my Thinkpad T440s. The Synaptics driver was used for the touchpad. Removing /usr/share/X11/xorg.conf.d/70-synaptics.conf and restarting solved the issue for me (Ubuntu 18.04 with Xorg, upgraded from 17.10 and before).

Amazing, it worked! Thanks

The same problem showed up on my ThinkPad E570. Completely removing /usr/share/X11/xorg.conf.d/70-synaptics.conf did bring back the functionality of middle button scrolling (thanks @Ickarssen for figuring that out!). However, this also removed the trackpad completely.

Not in my case, I can use both the trackpoint with middle button scrolling, AND trackpad with two fingers scrolling.
Using t440p with Ubuntu 18.04

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment