Bug 212220

Summary: Newly-supported KDE multimedia keys don't work as shortcuts
Product: [I don't know] kde Reporter: Andy Lutomirski <luto>
Component: generalAssignee: Unassigned bugs mailing-list <unassigned-bugs>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Fix, tested against Fedora 11's KDE

Description Andy Lutomirski 2009-10-28 19:50:54 UTC
Version:            (using KDE 4.3.2)
OS:                Linux
Installed from:    Fedora RPMs

A recent kde-qt commit added support to Qt for a bunch of multimedia keys (e.g. Screensaver and Sleep).  This allows me to select these keys as shortcuts, but they don't work:

http://qt.gitorious.org/+kde-developers/qt/kde-qt/commit/1a94cd7b132497f70a2b97ec2b58f6e2b1c5076a

I think the bug is in kkeyserver_x11.cpp, which does not have entries in g_rgQtToSymX for the new keys.

Presumably this could be fixed by adding these keys to g_rgQtToSymX, but a cleaner fix might be to remove that table entirely and just use QKeyMapper.
Comment 1 Andy Lutomirski 2009-10-29 16:28:39 UTC
Created attachment 37948 [details]
Fix, tested against Fedora 11's KDE

This patch fixes the bug on Fedora 11.  I haven't tested against upstream KDE.

What's KDE's policy with regard to depending on kde-qt at compile time?  The QT fix hasn't gone upstream yet.  I'll try to nudge QT.

http://bugreports.qt.nokia.com/browse/QTBUG-3597
Comment 2 Michael Jansen 2009-12-07 22:32:52 UTC
SVN commit 1060011 by mjansen:

Add new X11 Qt keys to KKeyServer
=================================

From http://reviewboard.kde.org/r/1950

Patch by Felix Geyer

If some of the bugs are not fixed by this patch please reopen. I couldn't
test most of them because i naturally have all of the keyboards / keys
available.

BUG: 166423
BUG: 180602
BUG: 182349
BUG: 182672
BUG: 183163
BUG: 183583
BUG: 183726
BUG: 192704
BUG: 196570
BUG: 205869
BUG: 212220

CCBUG: 181444
    The sleep button is now supported. Please close if fixed.

ADDED KEYS

XF86XK_AddFavorite 0x1008FF39
XF86XK_ApplicationLeft 0x1008FF50
XF86XK_ApplicationRight 0x1008FF51
XF86XK_AudioCycleTrack 0x1008FF9B
XF86XK_AudioForward 0x1008FF97
XF86XK_AudioRandomPlay 0x1008FF99
XF86XK_AudioRepeat 0x1008FF98
XF86XK_AudioRewind 0x1008FF3E
XF86XK_Away 0x1008FF8D
XF86XK_BackForward 0x1008FF3F
XF86XK_Battery 0x1008FF93
XF86XK_Bluetooth 0x1008FF94
XF86XK_Book 0x1008FF52
XF86XK_BrightnessAdjust 0x1008FF3B
XF86XK_Calculater 0x1008FF54
XF86XK_Calendar 0x1008FF20
XF86XK_CD 0x1008FF53
XF86XK_Clear 0x1008FF55
XF86XK_ClearGrab 0x1008FE21
XF86XK_Close 0x1008FF56
XF86XK_Community 0x1008FF3D
XF86XK_ContrastAdjust 0x1008FF22
XF86XK_Copy 0x1008FF57
XF86XK_Cut 0x1008FF58
XF86XK_Display 0x1008FF59
XF86XK_Documents 0x1008FF5B
XF86XK_DOS 0x1008FF5A
XF86XK_Eject 0x1008FF2C
XF86XK_Excel 0x1008FF5C
XF86XK_Explorer 0x1008FF5D
XF86XK_Finance 0x1008FF3C
XF86XK_Game 0x1008FF5E
XF86XK_Go 0x1008FF5F
XF86XK_Hibernate 0x1008FFA8
XF86XK_History 0x1008FF37
XF86XK_HotLinks 0x1008FF3A
XF86XK_iTouch 0x1008FF60
XF86XK_KbdBrightnessDown 0x1008FF06
XF86XK_KbdBrightnessUp 0x1008FF05
XF86XK_KbdLightOnOff 0x1008FF04
XF86XK_LightBulb 0x1008FF35
XF86XK_LogOff 0x1008FF61
XF86XK_MailForward 0x1008FF90
XF86XK_Market 0x1008FF62
XF86XK_Meeting 0x1008FF63
XF86XK_Memo 0x1008FF1E
XF86XK_MenuKB 0x1008FF65
XF86XK_MenuPB 0x1008FF66
XF86XK_Messenger 0x1008FF8E
XF86XK_MonBrightnessDown 0x1008FF03
XF86XK_MonBrightnessUp 0x1008FF02
XF86XK_Music 0x1008FF92
XF86XK_MySites 0x1008FF67
XF86XK_News 0x1008FF69
XF86XK_OfficeHome 0x1008FF6A
XF86XK_Option 0x1008FF6C
XF86XK_Paste 0x1008FF6D
XF86XK_Phone 0x1008FF6E
XF86XK_Pictures 0x1008FF91
XF86XK_PowerDown 0x1008FF21
XF86XK_PowerOff 0x1008FF2A
XF86XK_Reload 0x1008FF73
XF86XK_Reply 0x1008FF72
XF86XK_RotateWindows 0x1008FF74
XF86XK_RotationKB 0x1008FF76
XF86XK_RotationPB 0x1008FF75
XF86XK_Save 0x1008FF77
XF86XK_ScreenSaver 0x1008FF2D
XF86XK_Select 0x1008FFA0
XF86XK_Send 0x1008FF7B
XF86XK_Shop 0x1008FF36
XF86XK_Sleep 0x1008FF2F
XF86XK_Spell 0x1008FF7C
XF86XK_SplitScreen 0x1008FF7D
XF86XK_Subtitle 0x1008FF9A
XF86XK_Support 0x1008FF7E
XF86XK_Suspend 0x1008FFA7
XF86XK_TaskPane 0x1008FF7F
XF86XK_Terminal 0x1008FF80
XF86XK_Time 0x1008FF9F
XF86XK_ToDoList 0x1008FF1F
XF86XK_Tools 0x1008FF81
XF86XK_TopMenu 0x1008FFA2
XF86XK_Travel 0x1008FF82
XF86XK_UWB 0x1008FF96
XF86XK_Video 0x1008FF87
XF86XK_View 0x1008FFA1
XF86XK_WakeUp 0x1008FF2B
XF86XK_WebCam 0x1008FF8F
XF86XK_WLAN 0x1008FF95
XF86XK_Word 0x1008FF89
XF86XK_WWW 0x1008FF2E
XF86XK_Xfer 0x1008FF8A
XF86XK_ZoomIn 0x1008FF8B
XF86XK_ZoomOut 0x1008FF8C

 M  +243 -52   kkeyserver_x11.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1060011