-   Slackware (
-   -   Getting Thinkpad scroll button to work in Slackware 13 (

Lufbery 10-21-2009 10:21 AM

Getting Thinkpad scroll button to work in Slackware 13
Hi all,

What's the best way to get my Thinkpad's scroll button working with Slackware 13 (32-bit)? With previous versions, I simply edited the xorg.conf file. But the text below from the changes and hints file indicates a couple of other options:


Speaking of Xorg, the version of Xorg shipped with Slackware 13.0 will not
(in most cases) require an /etc/X11/xorg.conf file at all. Configuration of
input devices and such is handled by HAL, and the X server autoconfigures
everything else. You can still create an xorg.conf file if you wish, or you
can create a minimal xorg.conf with only the specific contents that you wish
to override (as an example, to use a binary-only video driver).
Due to removed drivers and other such changes, it's quite possible that your
old xorg.conf will not work correctly with this version of Xorg.

If you need to use a non-US keyboard layout, then copy the file located at
/usr/share/hal/fdi/policy/10osvendor/10-keymap.fdi to /etc/hal/fdi/policy
and edit it to suit your needs. Have a look at the contents of that file
for an example and more information. If you prefer to do this the "old" way
using /etc/X11/xorg.conf, then you can use "X -configure" or "xorgsetup" to
generate an xorg.conf, then add the following lines to the "ServerFlags"
section to disable input device hotplugging via HAL:
Option "AllowEmptyInput" "false"
Option "AutoAddDevices" "false"
Option "AutoEnableDevices" "false"
This is also relevant if you prefer to disable HAL completely for whatever
Sure enough, I did not need to configure X at all for video and sound to work on my Thinkpad laptop. But the mouse scroll button does not work.

So, do I make an xorg.conf file that only has the mouse input settings in it?

Or, should I edit the relevant HAL policy? If that's the better way, how should I go about doing that?


Lufbery 10-21-2009 10:23 AM

Ack! Google-fu may have helped: Here are instructions from Thinkwiki to edit HAL to configure the scroll button. I'll give this a try this evening and report back on my success or failure.


Alien Bob 10-21-2009 10:57 AM

For my T400's TrackPoint those settings work. I think this way of scrolling is a big improvement over the standard functionality, I prefer it over anything else.
Another nice feature ( and that works out of the box in Slackware) is that you can slide a finger across the right side of the TrackPad to scroll your window.


w1k0 10-21-2009 11:18 AM

In the case of my ThinkPad T60 TouchPad scrolling doesn't work out of the box. To enable it I have to use that set of rules:


<?xml version="1.0" encoding="ISO-8859-1"?>
<deviceinfo version="0.2">
    <match key="info.capabilities" contains="input.touchpad">
        <merge key="input.x11_driver" type="string">synaptics</merge>
        <merge key="input.x11_options.SHMConfig" type="string">true</merge>
        <merge key="input.x11_options.TapButton1" type="string">1</merge>
        <merge key="input.x11_options.MaxTapMove" type="string">2000</merge>
        <merge key="input.x11_options.VertEdgeScroll" type="string">true</merge>
        <merge key="input.x11_options.HorizEdgeScroll" type="string">true</merge>

Because I don't like TouchPad I usually disable it using that rule:


<match key="info.product" string="SynPS/2 Synaptics TouchPad">
    <merge key="input.x11_options.TouchpadOff" type="string">1</merge>

To enable TrackPoint scrolling I use the rules mentioned by Lufbery:


<match key="info.product" string="TPPS/2 IBM TrackPoint">
    <merge key="input.x11_options.EmulateWheel" type="string">true</merge>
    <merge key="input.x11_options.EmulateWheelButton" type="string">2</merge>
    <merge key="input.x11_options.YAxisMapping" type="string">4 5</merge>
    <merge key="input.x11_options.XAxisMapping" type="string">6 7</merge>
    <merge key="input.x11_options.Emulate3Buttons" type="string">true</merge>
    <merge key="input.x11_options.EmulateWheelTimeout" type="string">200</merge>

Lufbery 10-21-2009 08:48 PM


The instructions from Thinkwiki worked perfectly. :)


All times are GMT -5. The time now is 03:40 PM.