Trackpad Setup Using Hal Not Xorg
Since Ubuntu 8.10, the use of xorg.conf to configure the X desktop has been deprecated for the majority of PC setups. This means that enabling SHMConfig? and extra settings for trackpads is also no longer set up there. I found the defaults for the trackpad are not great so you need to be able to alter this.
I had a script that I called from a desktop shortcut to set these things but it was a pain as after an acpi resume they would not re-run automatically. Also, it would seem that the acpi resume scripts would not run the script properly (I'm guessing that this is due to synclient not connecting to the correct display - xhosts?)
However, as it is now part of HAL, it is possible to set this as part of an fdi script.
Simply edit/create the file : /etc/hal/fdi/policy/shmconfig.fdi With the following contents :
<?xml version="1.0" encoding="ISO-8859-1"?> <deviceinfo version="0.2"> <device> <match key="input.x11_driver" string="synaptics"> <merge key="input.x11_options.SHMConfig" type="string">true</merge> <merge key="input.x11_options.RightEdge" typ="string">950</merge> <merge key="input.x11_options.VertEdgeScroll" type="string">1</merge> <merge key="input.x11_options.AccelFactor" type="string">0.2</merge> <merge key="input.x11_options.TapButton2" type="string">2</merge> <merge key="input.x11_options.LTCornerButton" type="string">2</merge> </match> </device> </deviceinfo>
It is possible to set any of the shm settings in there, however, don't make the mistake I did and set the type of the integer looking values to "integer" not "string" as this doesn't work!
Full list of parameter values :
Parameter settings: LeftEdge = 120 RightEdge = 950 TopEdge = 120 BottomEdge = 650 FingerLow = 14 FingerHigh = 15 FingerPress = 256 MaxTapTime = 180 MaxTapMove = 110 MaxDoubleTapTime = 180 SingleTapTimeout = 180 ClickTime = 100 FastTaps = 0 EmulateMidButtonTime = 75 EmulateTwoFingerMinZ = 257 VertScrollDelta = 20 HorizScrollDelta = 20 VertEdgeScroll = 1 HorizEdgeScroll = 0 CornerCoasting = 0 VertTwoFingerScroll = 0 HorizTwoFingerScroll = 0 MinSpeed = 0.3 MaxSpeed = 0.75 AccelFactor = 0.1 TrackstickSpeed = 40 EdgeMotionMinZ = 30 EdgeMotionMaxZ = 160 EdgeMotionMinSpeed = 1 EdgeMotionMaxSpeed = 102 EdgeMotionUseAlways = 0 UpDownScrolling = 1 LeftRightScrolling = 1 UpDownScrollRepeat = 1 LeftRightScrollRepeat = 1 ScrollButtonRepeat = 100 TouchpadOff = 0 GuestMouseOff = 0 LockedDrags = 0 LockedDragTimeout = 5000 RTCornerButton = 2 RBCornerButton = 3 LTCornerButton = 2 LBCornerButton = 0 TapButton1 = 1 TapButton2 = 2 TapButton3 = 3 ClickFinger1 = 1 ClickFinger2 = 1 ClickFinger3 = 1 CircularScrolling = 0 CircScrollDelta = 0.1 CircScrollTrigger = 0 CircularPad = 0 PalmDetect = 1 PalmMinWidth = 10 PalmMinZ = 200 CoastingSpeed = 0 PressureMotionMinZ = 30 PressureMotionMaxZ = 160 PressureMotionMinFactor = 1 PressureMotionMaxFactor = 1 GrabEventDevice = 1