Ubuntu: How do I disable the TouchPad on a Lenovo x240, but keep mouse buttons active?


I want to disable the touchpad of my Lenovo x240. If I use the settings GUI the mouse buttons get disabled, too.

How can I disable the touchpad mouse cursor movement, and keep the mouse buttons active?

Related, but I want to disable mouse movements completely:

Drivers for Lenovo Thinkpad S540 Touchpad (erratic mouse cursor)

I use Ubuntu 14.04 with xserver-xorg-input-synaptics version 1.7.4


Open gedit and copy-paste the following lines into it:

#!/bin/sh  # This script disables the touchpad without disabling buttons by setting Hysteresis  # to an impossible value.    ############  # Warning! #  ############  # If you have a touchpad with no "Physical" buttons but have to tap the corners   # of your touchpad to simulate physical buttons, put a "#" sign in front of the next  # 4 lines!    synclient LTCornerButton=1  #synclient LBCornerButton=0  synclient RTCornerButton=3  #synclient RBCornerButton=0      # Set PalmDetect on: Needed if the before lines are commented away,  # Doesn't do any harm if they're not  synclient PalmDetect=1    synclient HorizHysteresis=10000   synclient VertHysteresis=10000    # Disable all other touchpad features  synclient VertEdgeScroll=0  synclient HorizEdgeScroll=0  synclient CornerCoasting=0  synclient VertTwoFingerScroll=0  synclient HorizTwoFingerScroll=0  synclient TouchpadOff=2  synclient LockedDrags=0  synclient TapButton1=0  synclient TapButton2=0  synclient TapButton3=0  synclient CircularPad=0  

Then save it as /usr/local/bin/DisableTouchPad.sh

In a terminal type: chmod a+xr /usr/local/bin/DisableTouchPad.sh

To activate it type: DisableTouchPad.sh and test whether this works.

To make this change permanent, go to the dash, open "Startup Applications", click add, in the command type: /usr/local/bin/DisableTouchPad.sh and in the Name and Comment type anything that will remind you what this was about. Click add again.

Presto: a disabled touchpad with the buttons still enabled!


Run the following command in a terminal:

xinput list  

You will get an output that looks like this:

⎡ 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)]  ⎣ 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)]      ↳ Laptop_Integrated_Webcam_1.3M             id=10   [slave  keyboard (3)]      ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]      ↳ Dell WMI hotkeys                          id=13   [slave  keyboard (3)]  

It displays all the input devices connected. Note that they all have an id. Since 12 is the id for my touchpad, running the following command will disable it.

xinput set-prop 12 "Device Enabled" 0  

Just change to xinput set-prop <<ID OF DEVICE>> "Device Enabled" 0

This is taken from here.


I've got a Lenovo T440s with a similar touchpad. I haven't disabled it myself (although I prefer to use the trackpoint), but I used this blog by Who-t to configure mine. On that page it says:

If you don't like touchpads at all and prefer to use the trackstick only, use Option "TouchpadOff" "1". This will disable everything but physical clicks on the touchpad.

The place to put this option in is a Section "InputClass" in a file etc/X11/xorg.conf.d/, which you could name 80-fix-thinkpad-touchpad.conf or something similar. See the aforementioned web site for examples.

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Next Post »