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
  •  


Dell PowerEdge FX2s CTO Blade 4 Slot 2U Chassis 2x 2000W picture

Dell PowerEdge FX2s CTO Blade 4 Slot 2U Chassis 2x 2000W

$399.00



DELL PowerEdge M630 Blade 2x E5-2620v4 2.1GHz 16 Cores 32GB H330 Choose Drives picture

DELL PowerEdge M630 Blade 2x E5-2620v4 2.1GHz 16 Cores 32GB H330 Choose Drives

$285.00



Dell PowerEdge M620  Blade Server 2 x Xeon e5 2665 8 x 16 GB(128) RAM - No HD picture

Dell PowerEdge M620 Blade Server 2 x Xeon e5 2665 8 x 16 GB(128) RAM - No HD

$44.99



HP ProLiant BL460c Gen8 G8 Blade Server 2x Intel Xeon 10-Core E5-2670v2 NO RAM picture

HP ProLiant BL460c Gen8 G8 Blade Server 2x Intel Xeon 10-Core E5-2670v2 NO RAM

$40.00



Dell PowerEdge FX2S FC830 Blade Server Chassis Enclosure 2*2000W PSU NO BLADES picture

Dell PowerEdge FX2S FC830 Blade Server Chassis Enclosure 2*2000W PSU NO BLADES

$299.99



Dell PowerEdge M620 Blade Server 2x 10C E5-2690v2 64GB Ram 2x 600GB 10k HDD picture

Dell PowerEdge M620 Blade Server 2x 10C E5-2690v2 64GB Ram 2x 600GB 10k HDD

$125.00



DELL PowerEdge M520 Blade Server, 2x Intel Xeon E5-2407V2, 64GB RAM -

DELL PowerEdge M520 Blade Server, 2x Intel Xeon E5-2407V2, 64GB RAM - "B"

$89.99



Dell PowerEdge M620 Blade Server picture

Dell PowerEdge M620 Blade Server

$39.99



DELL PowerEdge M630 Blade 2x E5-2680v4 2.4GHz =28 Cores 128GB H330 2x10Gb X520 picture

DELL PowerEdge M630 Blade 2x E5-2680v4 2.4GHz =28 Cores 128GB H330 2x10Gb X520

$259.00



HP ProLiant BL460c Gen9 Blade 2x E5-2690v4 2.6GHz =28 Cores 32GB P246 650FLB picture

HP ProLiant BL460c Gen9 Blade 2x E5-2690v4 2.6GHz =28 Cores 32GB P246 650FLB

$219.00