Results 1 to 10 of 23

Thread: Touchpad Control

Threaded View

  1. #1
    Senior Member
    Join Date
    Jan 2011
    Posts
    242

    Touchpad Control

    There are two drawbacks to using a laptop: the touchpad and the touchpad.

    First, you are typing something and the touchpad decides you've tapped in the secret code for "destroy, destroy, frustration is irrelevant" and whatever it was you were doing is gone.

    Second, this still happens even though you've plugged in an external mouse and aren't using the touchpad at all.

    The route to solving the first problem is through syndaemon and the route to solving the second is through synclient. Both are command line apps already installed in Knoppix (6.4.4. at least).

    To get the right settings automatically when Knoppix start-ups you need an additional script in /etc/X11/Xsession.d and to get the settings to change automagically when you plug-in or unplug a USB mouse, you need to add an extra pair of rules to /etc/udev/rules.d.

    There are examples of how to do this out there but they usually start with someone complaining what used to work has stopped and could they crib a new solution from someone who has already done all the hard work.

    Seems Knoppix is no exception and none of the solutions out there work. Seems xhost + is missing somewhere for sentimental reasons or perhaps Knoppix is just using a very new X server with new and improved security (the kind that got Windows Vista such a bad name).

    Here's my take on this:

    Code:
    # /etc/udev/rules.d/75-touchpad.rules
    # Disable touchpad when USB mouse is plugged in and reenable when USB mouse is removed
    
    ACTION=="add",    SUBSYSTEM=="input", ENV{ID_INPUT_MOUSE}=="1", RUN+="/etc/X11/Xsession.d/50touchpad 1"
    ACTION=="remove", SUBSYSTEM=="input", ENV{ID_INPUT_MOUSE}=="1", RUN+="/etc/X11/Xsession.d/50touchpad 0"
    
    # EOF
    and

    Code:
    #!/bin/sh
    # /etc/X11/Xsession.d/50touchpad
    
    if pidof X >/dev/null; then
    
      # Turn touchpad off when a USB mouse is present
    
      pidfile=/var/run/syndaemon.pid;
    
      if [ -n "${XAUTHORITY}" ]; then
        # Xsession initialisation
    
        if lsusb -v 2>/dev/null | grep -qF Mouse; then
          synclient TouchpadOff=1;
        else
          syndaemon -d -t -k -p $pidfile;
        fi
      else
        # udev hotplug event
    
        DISPLAY=":0";
        USER=$(who | awk "/ $DISPLAY /"'{print $1}');
        XAUTHORITY=/home/$USER/.Xauthority;
        export DISPLAY XAUTHORITY;
    
        synclient TouchpadOff=$1;
    
        if [ "$1" -eq 1 ]; then
          [ -f $pidfile ] && kill $(cat $pidfile);
          [ -f $pidfile ] && sync;
        else
          [ ! -f $pidfile ] && syndaemon -d -t -k -p $pidfile;
          [ ! -f $pidfile ] && sync;
        fi
      fi
    
    fi
    
    # EOF
    The second must be executable as it is called by the rules in the first.

    Enjoy.
    Last edited by Forester; 03-17-2011 at 11:30 PM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  


A-Tech 256GB 4x 64GB 4Rx4 PC4-19200 ECC Load Reduced LRDIMM Server Memory RAM picture

A-Tech 256GB 4x 64GB 4Rx4 PC4-19200 ECC Load Reduced LRDIMM Server Memory RAM

$287.96



Team T-FORCE VULCAN Z 16GB (2 x 8GB) 288-Pin PC RAM DDR4 3200 (PC4 25600) XMP picture

Team T-FORCE VULCAN Z 16GB (2 x 8GB) 288-Pin PC RAM DDR4 3200 (PC4 25600) XMP

$38.99



A-Tech 8GB DDR3 1600 PC3-12800 Laptop SODIMM 204-Pin Memory RAM PC3L DDR3L 1x 8G picture

A-Tech 8GB DDR3 1600 PC3-12800 Laptop SODIMM 204-Pin Memory RAM PC3L DDR3L 1x 8G

$13.99



Samsung 16GB (2x8GB) DDR4 2400MHz PC4-19200 Desktop RAM Memory M378A1K43CB2-CRC picture

Samsung 16GB (2x8GB) DDR4 2400MHz PC4-19200 Desktop RAM Memory M378A1K43CB2-CRC

$19.95



Crucial 16GB (2x 8GB) Kit DDR3L 1600MHz PC3-12800 UDIMM Desktop 240-Pin CL11 RAM picture

Crucial 16GB (2x 8GB) Kit DDR3L 1600MHz PC3-12800 UDIMM Desktop 240-Pin CL11 RAM

$21.33



HyperX FURY DDR3 8GB 16GB 32GB 1600 MHz PC3-12800 Desktop RAM Memory DIMM 240pin picture

HyperX FURY DDR3 8GB 16GB 32GB 1600 MHz PC3-12800 Desktop RAM Memory DIMM 240pin

$12.90



CORSAIR Vengeance RGB Pro 32GB (2 x 16GB) 288-Pin PC RAM DDR4 3600 (PC4 28800) picture

CORSAIR Vengeance RGB Pro 32GB (2 x 16GB) 288-Pin PC RAM DDR4 3600 (PC4 28800)

$79.95



HyperX FURY RAM DDR4 16GB 8GB 32GB 4GB 3200 2666 2400 2133 Desktop Memory DIMM picture

HyperX FURY RAM DDR4 16GB 8GB 32GB 4GB 3200 2666 2400 2133 Desktop Memory DIMM

$14.85



HyperX FURY DDR4 64GB (4x16GB) 3200MHz PC4-25600 Desktop RAM Memory DIMM 288PIN picture

HyperX FURY DDR4 64GB (4x16GB) 3200MHz PC4-25600 Desktop RAM Memory DIMM 288PIN

$129.95



HyperX FURY DDR4 16GB 32GB 64GB 2666MHz PC4-21300 Desktop RAM Memory DIMM 288Pin picture

HyperX FURY DDR4 16GB 32GB 64GB 2666MHz PC4-21300 Desktop RAM Memory DIMM 288Pin

$119.80