[lucid] enable trackpoint scroll emulation by default

Bug #554984 reported by Konstantin Khlebnikov
100
This bug affects 18 people
Affects Status Importance Assigned to Milestone
xserver-xorg-input-evdev (Ubuntu)
Fix Released
Wishlist
Timo Aaltonen

Bug Description

Binary package hint: xserver-xorg-input-evdev

now it pretty simple, just add

/usr/lib/X11/xorg.conf.d/10-trackpoint.conf

Section "InputClass"
 Identifier "trackpoint catchall"
 MatchIsPointer "on"
 MatchProduct "TPPS/2 IBM TrackPoint"
 MatchDevicePath "/dev/input/event*"
 Driver "evdev"
 Option "EmulateWheel" "True"
 Option "EmulateWheelButton" "2"
 Option "Emulate3Buttons" "False"
 Option "XAxisMapping" "6 7"
 Option "YAxisMapping" "4 5"
EndSection

http://www.thinkwiki.org/wiki/How_to_configure_the_TrackPoint

Tags: lucid
Bryce Harrington (bryce)
tags: added: lucid
Robert Hooker (sarvatt)
Changed in xserver-xorg-input-evdev (Ubuntu):
importance: Undecided → Wishlist
Revision history for this message
c4pp4 (c4pp4) wrote :

Thank you.
In my case - Lenovo R61i:
MatchProduct "DualPoint Stick"

Revision history for this message
Jens Böning (jensel) wrote :

See attachment for a slightly modified proposal of OPs fix. Please supply either as

/usr/lib/X11/xorg.conf.d/20-trackpoint.conf

Differences to OPs proposal:
* Does not set driver, as this is already done by existing files
* Matches "TPPS/2 IBM TrackPoint", "DualPoint Stick, and "Synaptics Inc. Composite TouchPad / TrackPoint"

Jens Böning (jensel)
Changed in xserver-xorg-input-evdev (Ubuntu):
status: New → Fix Committed
Bryce Harrington (bryce)
Changed in xserver-xorg-input-evdev (Ubuntu):
assignee: nobody → Timo Aaltonen (tjaalton)
Bryce Harrington (bryce)
Changed in xserver-xorg-input-evdev (Ubuntu):
status: Fix Committed → In Progress
Revision history for this message
Michael Unterkalmsteiner (miciu) wrote :

By adding "Lite-On Technology Corp. ThinkPad USB Keyboard with TrackPoint" to the list in "MatchProduct", scrolling with my external Lenovo keyboard (Model No: SK-8855) works too.

Revision history for this message
Philip Langer (philchip) wrote :

Just to confirm the fix for my machine:
Thanks to Jens' attachment in comment #2 (which I manually saved to on my machine as described), middle mouse button scrolling now works on my Dell Latitude E6500 running most current lucid (kernel 2.6.32-21-generic).

I: Bus=0011 Vendor=0002 Product=0008 Version=0000
N: Name="DualPoint Stick"
P: Phys=isa0060/serio1/input1
S: Sysfs=/devices/platform/i8042/serio1/input/input12
U: Uniq=
H: Handlers=mouse2 event12

Revision history for this message
Timo Aaltonen (tjaalton) wrote :

This is a user preference and not something that everyone would want by default. It can have an undesirable effect when you actually need to drag something with your middle button pressed (for instance dragging a folder in nautilus). I'm leaving this open, but my opinion is that it should be user configurable in the DE, and gpointing-device-settings does that, though input device configuration should be provided by the DE itself.

Revision history for this message
Konstantin Khlebnikov (khlebnikov) wrote :

NAK. Scrolling is _much_ more frequently used operation than middle-button-dragging.
And such touchpoint use-case is well-known, because it is default setup on thinkpads for years (in windows of course)

for dragging-case maybe leave third-button emulation enabled )

Revision history for this message
Jens Böning (jensel) wrote :

I tried to incorporate all suggestions below into an updated version of 20-trackpoint.conf.

Changes:
* Matches now "DualPoint Stick" and _all_ pointing devices which contain the substring "TrackPoint"
* Enables 3ButtonEmutation by default to allow middle-button-dragging
* I labelled the thing as "patch"

Revision history for this message
Jens Böning (jensel) wrote :

I tried to incorporate all suggestions into an updated version of 20-trackpoint.conf.

Changes:
* Matches now "DualPoint Stick" and _all_ pointing devices which contain the substring "TrackPoint"
* Enables 3ButtonEmutation by default to allow middle-button-dragging
* I labelled the thing as "patch"

Revision history for this message
Jens Böning (jensel) wrote :

(Sorry for the double post)

Here is another version which might be more suitable for distribution. It prepares trackpoint wheel emulation, but leaves it disabled. This makes it far easier to enable this option in contrast to Ubuntu's stock configuration.

Revision history for this message
Anmar Oueja (anmar) wrote :

I think this should make it into Maverick final release since it seems to be resolved. The patch in comment #9 works fine.

Revision history for this message
Timo Aaltonen (tjaalton) wrote :

Ok, I've committed a snippet to git that is basically what Jens proposed in comment #8. Enabling middlemouse emulation will do as a workaround for the drag issue.

Changed in xserver-xorg-input-evdev (Ubuntu):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package xserver-xorg-input-evdev - 1:2.6.0-1ubuntu13

---------------
xserver-xorg-input-evdev (1:2.6.0-1ubuntu13) oneiric; urgency=low

  * 11-evdev-trackpoint.conf: Add a config snippet for enabling wheel
    emulation for trackpoint devices, should support a variety of models.
    Middlemouse emulation is turned on, to allow dragging for instance
    in Nautilus. Thanks to Jens Böning and others for collecting data and
    testing this! (LP: #554984)
  * 11-evdev-quirks.conf: Add a quirk for Kensington Pocket Mouse / Benq m310
    to ignore AbsoluteAxis. (LP: #325581)
 -- Timo Aaltonen <email address hidden> Wed, 29 Jun 2011 19:17:04 +0300

Changed in xserver-xorg-input-evdev (Ubuntu):
status: Fix Committed → Fix Released
Revision history for this message
Wayne Davison (wayned) wrote :

Sadly, this feature makes middle clicking (on things like browser links, etc.) very flaky -- clicks go ignored quite often. I used gpointing-device-settings to turn the feature off, but a reboot had it go enabled once again, and I had to toggle the gpointing-device-settings checkbox back on and then off again to get it disabled. Did the fix for this get hard-wired to ignore the gpointing-device-settings value? Kinda looks that way. I've now modified /usr/share/X11/xorg.conf.d/11-evdev-trackpoint.conf to disable this as well.

Revision history for this message
Konstantin Khlebnikov (khlebnikov) wrote :

You can increase EmulateWheelTimeout, see man evdev

Revision history for this message
Thomas Calvert (thomas-calvert) wrote :

I have never encountered the problem described by Wayne, for been using T400s/T410s for over a year with the script I describe in #529745 ...

Revision history for this message
Mark Eichin (eichin-gmail) wrote :

Argh, I finally found and identified this. "The control-middle-button menu in xterm doesn't work anymore" should find this bug; I wasted a bit of time assuming it was xterm-specific (xterm has had active development, much to my surprise.) Is there a proper way to turn this override off other than editing/deleting /usr/share/X11/xorg.conf.d/11-evdev-trackpoint.conf itself? (Alternatively, a matching "how to get the xterm menu back" bug would probably be useful...)

Revision history for this message
janek (jan0x6c) wrote :

Mark Eichin (eichin-gmail) wrote on 2011-12-13:
>"how to get the xterm menu back"

man xterm # (at bottom; current bindings)

VT Options (menu with <Ctrl> <mouseBt2Down>)

[...]

!Ctrl <Btn2Down>:popup-menu(vtMenu) \n\
!Lock Ctrl <Btn2Down>:popup-menu(vtMenu) \n\
!Lock Ctrl @Num_Lock <Btn2Down>:popup-menu(vtMenu) \n\
! @Num_Lock Ctrl <Btn2Down>:popup-menu(vtMenu) \n\

[...]

This can be changed

VT Options (menu with <Ctrl> <Alt> <mouseBt1Down>)

[...]

!Ctrl Meta <Btn1Down>:popup-menu(vtMenu) \n\
!Lock Ctrl Meta <Btn1Down>:popup-menu(vtMenu) \n\
!Lock Ctrl Meta @Num_Lock <Btn1Down>:popup-menu(vtMenu) \n\
! @Num_Lock Ctrl Meta <Btn1Down>:popup-menu(vtMenu) \n\

[...]

You can test it with an xterm:

xterm -xrm \
'XTerm*VT100.translations: #override \n\
!Ctrl Meta <Btn1Down>:popup-menu(vtMenu) \n\
!Lock Ctrl Meta<Btn1Down>:popup-menu(vtMenu) \n\
!Lock Ctrl Meta @Num_Lock <Btn1Down>:popup-menu(vtMenu) \n\
! @Num_Lock Ctrl Meta <Btn1Down>:popup-menu(vtMenu)'

Finally my .Xresources (man X # XENVIRONMENT)

! .Xresource START
! trackpoint xterm VT Options Tek Options vtMenu tekMenu
! VT Options (menu with <Ctrl> <Alt> <mouseBt1Down>)

XTerm*VT100.translations: #override \n\
 !Ctrl Meta <Btn1Down>:popup-menu(vtMenu) \n\
 !Lock Ctrl Meta<Btn1Down>:popup-menu(vtMenu) \n\
 !Lock Ctrl Meta @Num_Lock <Btn1Down>:popup-menu(vtMenu) \n\
 ! @Num_Lock Ctrl Meta <Btn1Down>:popup-menu(vtMenu)

! Tek Options (menu with <Ctrl> <Alt> <mouseBt1Down>)

XTerm*Tek4014.translations: #override \n\
 !Ctrl Meta <Btn1Down>: popup-menu(tekMenu) \n\
 !Lock Ctrl Meta <Btn1Down>: popup-menu(tekMenu) \n\
 !Lock Ctrl Meta @Num_Lock <Btn1Down>: popup-menu(tekMenu) \n\
 !Ctrl Meta @Num_Lock <Btn1Down>: popup-menu(tekMenu)

! .Xresource END

Additional helpful information:

http://www.x.org/docs/Xt/intrinsics.pdf
Appendix B
Translation Table Syntax

[...]
If an exclamation point (!) is specified at the beginning of the modifier list, it means that the
listed modifiers must be in the correct state and no other modifiers can be asserted.
[...]

http://www.x.org/docs/Xaw/widgets.pdf
4.2.3. Positioning the SimpleMenu

[...]
Translation writers should be aware that Xt does not register grabs on ‘‘don’t care’’ modifiers
[...]

appres XTerm # resources list

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.