ThinkPad Back and Forward keys do not work

Bug #20204 reported by Sam Tobin-Hochstadt
34
Affects Status Importance Assigned to Milestone
X.Org X server
Fix Released
Medium
xkeyboard-config (Debian)
Fix Released
Unknown
xkeyboard-config (Ubuntu)
Fix Released
High
Unassigned
Nominated for Intrepid by Սահակ

Bug Description

On a new Thinkpad T43, there are keys that are intended to go back and forward
in web browsers. They do not appear do have any effect whatsoever in any Ubuntu
application (certainly not Firefox). There is also no way to configure them to
work in the keyboard preferences dialog.

Revision history for this message
Matt Zimmerman (mdz) wrote :

We talked about this some time ago...on my T42 at least, it is possible to
assign actions to these keys in the GNOME shortcut preferences (they show up
with a numeric keycode), but the shortcuts simply do not work. Are you really
not able to set shortcuts at all?

Revision history for this message
Sam Tobin-Hochstadt (samth) wrote :

Aha, I had tried the keyboard settings, but not the shortcuts. That allows me
to map the buttons to various things (like "show home folder") but not to "Back"
or "Forward".

Revision history for this message
Matthew Garrett (mjg59) wrote :

We don't seem to have any infrastructural support for forward and backwards type
keys. Seb, does Firefox respond to any X keysyms for this sort of thing?

Revision history for this message
Reinhard Tartler (siretart) wrote :

I tried this too. xev does the following output when pressing those keys:

KeyPress event, serial 25, synthetic NO, window 0x4400001,
    root 0x48, subw 0x0, time 11202776, (-31,459), root:(716,573),
    state 0x0, keycode 234 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:

KeyRelease event, serial 25, synthetic NO, window 0x4400001,
    root 0x48, subw 0x0, time 11202856, (-31,459), root:(716,573),
    state 0x0, keycode 234 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:

KeyPress event, serial 25, synthetic NO, window 0x4400001,
    root 0x48, subw 0x0, time 11203100, (-31,459), root:(716,573),
    state 0x0, keycode 233 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:

KeyRelease event, serial 25, synthetic NO, window 0x4400001,
    root 0x48, subw 0x0, time 11203140, (-31,459), root:(716,573),
    state 0x0, keycode 233 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:

I had found somewhere in the web some patches to the XKB Config adding Symbols
to those keys. Not sure if they are applicable at all to breezy's xorg

Revision history for this message
Reinhard Tartler (siretart) wrote :

FYI, Thinkwiki has a nice overview about special keys in thinkpads:
http://www.thinkwiki.org/wiki/How_to_get_special_keys_to_work

Revision history for this message
Matt Zimmerman (mdz) wrote :

*** Bug 20588 has been marked as a duplicate of this bug. ***

Revision history for this message
Reinhard Tartler (siretart) wrote :

There is even a debian bugreport with a patch. Perhaps it worth looking at it:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=261088

Revision history for this message
In , Crispin Flowerday (crispin-flowerday-deactivatedaccount) wrote :

My IBM x31 keyboard has back and forward buttons above the left and right
arrows, there should be entries for these so that they map to XF86Back and
XF86Forward, I suggest the following changes:

xkb/symbols/inet, add:

partial alphanumeric_keys
xkb_symbols "thinkpad" {
    key { [ XF86Back ] };
    key { [ XF86Forward ] };
};

and add 'thinkpad' to the list of $inetkbds in the rules/base file.

Revision history for this message
Martin Ericsson (i00marer) wrote :

the same bug is in freedesktop, see:
https://bugs.freedesktop.org/show_bug.cgi?id=5697

Revision history for this message
Matt Zimmerman (mdz) wrote :

I'm not sure that this is the same as freedesktop #5697 or Debian #261088. In any case, in current Dapper, I'm able to assign shortcuts to these keys using the GNOME preferences, which didn't work before, so my problem is addressed.

Revision history for this message
Reinhard Tartler (siretart) wrote :

Yes, the shortcut dialog does react to the buttons. I cannot seem to use them with switch workplace, though.

Anyway, freedesktop #5697 is about adding Keysyms. xev reports still 'NoSymbol' instead of XF86Back or XF86Forward.

Revision history for this message
Paul Sladen (sladen) wrote :

KEY_BACK and KEY_FORWARD are standard keycodes in 'linux/input.h' and need mapping to 'XF86Back' and 'XF86Forward'.

Then this needs testing that these are already listened to by Firefox.

Revision history for this message
André Rüdiger (andreruediger-deactivatedaccount) wrote :

Added the upstream bug that includes an easy fix to make these buttons work out of the box.

Please also see the corresponding firefox bug https://launchpad.net/products/firefox/+bug/24582

Changed in xkeyboard-config:
status: Unknown → Confirmed
Changed in xorg-server:
status: Unknown → Confirmed
Revision history for this message
In , Daniel Stone (daniels) wrote :

Sorry about the phenomenal bug spam, guys. Adding xorg-team@ to the QA contact so bugs don't get lost in future.

Revision history for this message
apelete (apelete) wrote :

These keys should be configured out of the box and work for all applications using "back" and "forward" functions, e.g. Nautilus, Firefox, Yelp....
Here's a hint I found on the net to enable the keys in xorg:
---
Basically in /etc/X11/xkb/symbols/inet (ubuntu, other distros will vary) put:

partial alphanumeric_keys
xkb_symbols "thinkpad" {
    key <I6A> { [ XF86Back ] };
    key <I69> { [ XF86Forward ] };
};

(how do I generate those <I6A> numbers ? <I69> = keycode 233 and <I6A> = keycode 234 from xev point of view)

and then in the $inetkbds bit of /etc/X11/xkb/rules/base add "thinkpad". Once that is done, just select the "IBM thinkpad <random model numbers>" layout in gnome-keyboard-properties, and your back and forward buttons will 'just work' with no xmodmap messing.
---

I believe this is the correct way of doing things so it should be done by default.
I also know there's a special startup script which loads key mappings depending on the laptop model. Someone here might have ideas on how to extend it for keyboards, it's another possible solution....

Revision history for this message
Guillaume Duveau (guix) wrote :

On my Z60t under Feisty it works for Konqueror but not Firefox

Changed in xkeyboard-config:
status: Confirmed → Fix Released
Changed in xkeyboard-config:
status: Fix Released → Confirmed
Revision history for this message
In , Sergey V. Udaltsov (svu) wrote :

That definition is already is in xkeyboard-config

Changed in xorg-server:
status: Confirmed → Fix Released
Changed in xkeyboard-config:
status: Confirmed → Fix Released
Revision history for this message
Rob (rob1101) wrote :

i tried the solution just above me and it did not work for my thinkpad r31

Revision history for this message
Reinhard Tartler (siretart) wrote :

raising severity since this bug is now blocking us from profiting from the fixed bug #24582

Changed in xkeyboard-config:
importance: Medium → High
Revision history for this message
Timo Aaltonen (tjaalton) wrote :

Closing as fixed, since the mappings are already there (in Hardy). You just need to take them in use as was mentioned in comment #13.

Changed in xkeyboard-config:
status: Confirmed → Fix Released
Revision history for this message
Reinhard Tartler (siretart) wrote :

Timo: can we please take them in use as mentioned in comment #13 by default on xkb-data?
(reopening this bug therefore)

Changed in xkeyboard-config:
status: Fix Released → Triaged
Revision history for this message
Սահակ (petrosyan) wrote :

this bug has been fixed in Ubuntu 8.10

Changed in xkeyboard-config:
status: Triaged → Fix Released
Revision history for this message
Elias K Gardner (zorkerz) wrote : Re: [Bug 20204] Re: ThinkPad Back and Forward keys do not work

Confirmed its fixed in intrepid. Thats awsome!

Changed in xorg-server:
importance: Unknown → Medium
Changed in xorg-server:
importance: Medium → Unknown
Changed in xorg-server:
importance: Unknown → Medium
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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