Warning: in_array() expects parameter 2 to be array, string given in /virtual/theblogs.bestsolution.at/httpd/htdocs/wp-content/plugins/google-one/google-plus-one.php on line 344

Warning: in_array() expects parameter 2 to be array, string given in /virtual/theblogs.bestsolution.at/httpd/htdocs/wp-content/plugins/google-one/google-plus-one.php on line 346

Warning: in_array() expects parameter 2 to be array, string given in /virtual/theblogs.bestsolution.at/httpd/htdocs/wp-content/plugins/google-one/google-plus-one.php on line 344

Warning: in_array() expects parameter 2 to be array, string given in /virtual/theblogs.bestsolution.at/httpd/htdocs/wp-content/plugins/google-one/google-plus-one.php on line 346

Warning: in_array() expects parameter 2 to be array, string given in /virtual/theblogs.bestsolution.at/httpd/htdocs/wp-content/plugins/google-one/google-plus-one.php on line 344

Warning: in_array() expects parameter 2 to be array, string given in /virtual/theblogs.bestsolution.at/httpd/htdocs/wp-content/plugins/google-one/google-plus-one.php on line 346

Warning: in_array() expects parameter 2 to be array, string given in /virtual/theblogs.bestsolution.at/httpd/htdocs/wp-content/plugins/google-one/google-plus-one.php on line 344

Warning: in_array() expects parameter 2 to be array, string given in /virtual/theblogs.bestsolution.at/httpd/htdocs/wp-content/plugins/google-one/google-plus-one.php on line 346

improving synaptics touchpad tapping behaviour


Warning: in_array() expects parameter 2 to be array, string given in /virtual/theblogs.bestsolution.at/httpd/htdocs/wp-content/plugins/google-one/google-plus-one.php on line 344

Warning: in_array() expects parameter 2 to be array, string given in /virtual/theblogs.bestsolution.at/httpd/htdocs/wp-content/plugins/google-one/google-plus-one.php on line 346

[UPDATE]: this post is not entirely correct, because under some cirumstances the synaptics configuration in xorg.conf is completely ignored and thus syndaemon will simply not do what it should. A followup article will come soon.

Occasionally I have to work without having a real mouse and thus am relying on my laptops very ordinary Synaptics touchpad. Now one of the most anoying sideffects of working with the touchpad only is that I permanently seem to unintentionally move around the mouse pointer with some parts of my hands while typing …

But – there is hope and countermeasures 🙂 What I want to have is the touchpad being deactivated while I type something and reactivated in a “resonable” time.

Preface: the steps below are valid for Mandriva 2009.1, but are probably not much different for other distributions.

First ensure that SHMConfig has been activated in xorg.conf, eg like this:

Section "InputDevice"
Identifier "SynapticsMouse1"
Driver "synaptics"
Option "SHMConfig" "on"
EndSection

The synaptics man page says that you should be aware that enabling SHMConfig poses some kind of security risk, because enabling it gives any user on your box access to your touchpad’s configuration … well, that seems to be a risk worth taking 🙂

Having turned on SHMConfig, you are now able to control your touchpads behaviour using synclient and syndaemon. Both have reasonable man pages, if you want further information.

The next step is to tell syndaemon to deactivate the touchpad while typing and reactivate it afterwards. And, because this is such a nice feature, it should also be available to any user on the system.

As root, create /etc/X11/xinit.d/99syndaemon with any editor of your choice (very likely it does not exist already) and insert the lines below:


#!/bin/bash

syndaemon_is_running=`pidof -c syndaemon`
if [ $? -eq 0 ] ; then
if [ -f "/usr/bin/syndaemon" ] ; then
/usr/bin/syndaemon -d -t -i 2 > /dev/null 2>&1
fi
fi

And finally make the new file executeable:
% chmod 755 /etc/X11/xinit.d/99syndaemon

Log out and in again and that should be it.

Of course there are many ways to have an application autostart upon X11 login, but I personally perfer the xinit style.

All the settings of your touchpad can be queried using the synclient command:
% synclient -l

Spread the love

Leave a Reply

avatar
  Subscribe  
Notify of

Post Navigation