Yes, I did create the fdi file, see below. (I also copied the file from /usr/share/hal/policy/99-synaptics.fdi to /usr/share/hal/policy/20thirdparty/99-ssynaptics.fdi and renamed originals to *.save)
Your inititial solution seems the best . Dumb question: how is it enabled for synclient? William. -------[ file: /usr/share/hal/policy/20thirdparty/99-synaptics.fdi ]------- <?xml version="1.0" encoding="ISO-8859-1"?> <!-- DO NOT EDIT THIS FILE IN PLACE. This file will be overwritten with the next update. If you need to add custom options, copy the file into /etc/hal/fdi/policy/ first. MODIFIED FILE: Added the *SHMConfig* line, for shared memory, so that touchpad properties can be tweaked (in real-time) using synclient OR syndaemon used to disable touchpad on keyboard activity. See https://fedoraproject.org/wiki/Input_device_configuration --> <deviceinfo version="0.2"> <device> <match key="info.capabilities" contains="input.touchpad"> <!-- To add custom options for the touchpad, modify the examples below to suit your needs. The available options are listed in the "synaptics" man page. After modifyfing this file, you must restart HAL. Check the output of lshal whether your modifications have been merged successfully. Note: Options must always be type "string". The following examples enable left, right, middle clicks on single, double, triple finger tapping, respectively. <merge key="input.x11_options.TapButton1" type="string">1</merge> <merge key="input.x11_options.TapButton2" type="string">3</merge> <merge key="input.x11_options.TapButton3" type="string">2</merge> --> <merge key="input.x11_options.SHMConfig" type="string">On</merge> <merge key="input.x11_driver" type="string">synaptics</merge> </match> </device> </deviceinfo> ________________________________ From: Vladimir Mosgalin <[email protected]> To: [email protected] Sent: Tuesday, September 20, 2011 10:03 PM Subject: Re: momentarily disabling synaptic touchpad Hi William Shu! On 2011.09.20 at 13:24:20 -0700, William Shu wrote next: > Vladimir, > Thank you so much for the suggestion. I followed the instructions on the web > page. For a moment it seems it will not work, then the touchpad was actually > disabled, but I have no clue what I did. Then, of its own, the pad was > activated after a few hours. I have rebooted the system as well as give the > command as root but no success. The output of synclient is given below.o Did you create .fdi file and enabled configuring with synclient in it? Because otherwise only options from .fdi file are going to work, you have to enable synclient run-time configuring with separate option. > The other command you gave seems to have an error! Not clear if part of a > shell script, but the characters -- ","0","*") -- after the last & seem > redundant.: > > syndaemon -i 1 -d -K && xinput set-int-prop \"SynPS/2 Synaptics > TouchPad\" \"Synaptics Two-Finger Pressure\" 32 10 &","0","*") > > ignoring them and unquoting the "'s removed the errors, but seemed to have no > effect! Yes, sorry. quotes were unneeded. Here is alternate version of second command, anyhow, to enable two-finger tap, if you need middle button on touchpad xinput --set-prop --type=int --format=32 "SynPS/2 Synaptics TouchPad" "Synaptics Two-Finger Pressure" 10 First one (syndaemon command) disables touchpad *temporarily* when you are typing only; that's merely one of the options, as most people just don't want touchpad to interfere with typing. Value after -i is in seconds for how long touchpad will stay disabled after keypress. Maybe you saw effect of that when thinking that touchpad was disabled permanently? I believe both syndaemon and synclient will work only when run-time configuration is enabled in .fdi (after which you might need to reboot or restart hal, as you can't detach and re-attach touchpad). If you want to disable touchpad permanently, you can also use xinput, like xinput --set-prop --type=int "SynPS/2 Synaptics TouchPad" "Device Enabled" 8 0 By the way, if finding device by text string in xinput not working for you, you can call "xinput list" to find device id of your touchpad and then use it instead. In case you absolutely can't get synclient & syndaemon working for you, just stick with xinput, they should work regardless of .fdi settings, I believe. More examples of xinput are here https://wiki.ubuntu.com/X/Config/Input Here is automated script to turn touchpad on & off. Customize to your liking and then bind its execution to some key. Script isn't mine, I'm merely copypasting it: #!/bin/sh # get touchpad id XINPUTNUM=`xinput list | grep 'SynPS/2 Synaptics TouchPad' | sed -n -e's/.*id=\([0-9]\+\).*/\1/p'` # get the current state of the touchpad TPSTATUS=`xinput list-props $XINPUTNUM | awk '/Device Enabled/ { print $NF }'` # if getting the status failed, exit test -z $TPSTATUS && exit 1 if [ $TPSTATUS = 0 ]; then xinput set-int-prop $XINPUTNUM "Device Enabled" 8 1 else xinput set-int-prop $XINPUTNUM "Device Enabled" 8 0 fi Also, on gnome desktop you might get working something as simple as this (but I'm really not sure it works on SL6.0 desktop): #!/bin/sh TOUCHPAD_ENABLED=$(gconftool-2 --get "/desktop/gnome/peripherals/touchpad/touchpad_enabled") if [ "$TOUCHPAD_ENABLED" = "true" ] then gconftool-2 --set "/desktop/gnome/peripherals/touchpad/touchpad_enabled" --type boolean false else gconftool-2 --set "/desktop/gnome/peripherals/touchpad/touchpad_enabled" --type boolean true fi -- Vladimir
