Lenovo's disable touchpad button not working

It does not work for me too(Ubuntu 13.10 Sony Vaio).

But I use following command(with shortcut key)

First determine the device id

xinput list

Then disable it, (this command as shortcut key action)

xinput set-prop 15 "Device Enabled" 0

Replace 15 with your device id.

SOURCE : https://help.ubuntu.com/community/SynapticsTouchpad


This does not answer your question about non working key, but it will help in case you want to use another key instead.

  • Another way using Gnome Settings, Which I think it's better and simple as it will well integrated with desktop (Indicators...), the toggle script:

    if [ `gsettings get org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled` == "true" ]; then gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled false ; else gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled true ; fi
    

    Query status:

    gsettings get org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled
    

    Disable:

    gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled false
    

    Enable:

    gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled true
    
  • Using xinput:

    if [ `xinput list-props 12 | awk '/Device Enabled/ { print $4 }'` -eq 1 ]; then xinput set-prop 12 "Device Enabled" 0 ; else xinput set-prop 12 "Device Enabled" 1 ; fi
    

    12 is the id you got from xinput list, but there a drawback here using predefined id. For example, If a new USB mouse attached/unplugged before boot, touchpad could get deferent id. (It happens to me with USB mouse, my touch pad damaged)

  • Using xinput and device name instead of id:

    export touchpad_id=`xinput list | awk 'gsub(".*AlpsPS/2 ALPS DualPoint TouchPad[ \t]*id=*","") { print $1 }'` ; if [ `xinput list-props $touchpad_id | awk '/Device Enabled/ { print $4 }'` -eq 1 ]; then xinput set-prop $touchpad_id "Device Enabled" 0 ; else xinput set-prop $touchpad_id "Device Enabled" 1 ; fi
    

    My touchpad name is AlpsPS/2 ALPS DualPoint TouchPad got it from xinput list, replace it with your device name.

    Get device id by name AlpsPS/2 ALPS DualPoint TouchPad and store it in touchpad_id:

    export touchpad_id=`xinput list | awk 'gsub(".*AlpsPS/2 ALPS DualPoint TouchPad[ \t]*id=*","") { print $1 }'`
    

    Query status:

    xinput list-props $touchpad_id | awk '/Device Enabled/ { print $4 }'
    

    Disable:

    xinput set-prop $touchpad_id "Device Enabled" 0
    

    Enable:

    xinput set-prop $touchpad_id "Device Enabled" 1