Summary: | On logout, my kmix "Volume Up" shortcut is cleared | ||
---|---|---|---|
Product: | [Unmaintained] kdelibs | Reporter: | Christopher Neufeld <kdebugs> |
Component: | shortcuts | Assignee: | kdelibs bugs <kdelibs-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | jakob.kummerow, realnc, saschpe, sergei.kasaurov |
Priority: | NOR | ||
Version: | 4.4 | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Christopher Neufeld
2010-03-03 21:08:42 UTC
More details, and a minor correction. I drew those kglobalshortcutsrc lines from a different computer, one which had F20 for the volume-up button. On the computer which uses F22 for increase volume, the line naturally shows "F22". I'm using revision 1098335. This is relatively recent breakage, I first noticed it when I recompiled about three weeks ago. Let's look at the function. In kdemultimedia/kmix/kmix.cpp void KMixWindow::initActionsLate() { if ( m_autouseMultimediaKeys ) { KAction* globalAction = actionCollection()->addAction("increase_volume"); globalAction->setText(i18n("Increase Volume")); globalAction->setGlobalShortcut(KShortcut(Qt::Key_VolumeUp), ( KAction::ShortcutTypes)( KAction::ActiveShortcut | KAction::DefaultShortcut), KAction::NoAutoloading); connect(globalAction, SIGNAL(triggered(bool) ), SLOT(slotIncreaseVolume())); globalAction = actionCollection()->addAction("decrease_volume"); globalAction->setText(i18n("Decrease Volume")); globalAction->setGlobalShortcut(KShortcut(Qt::Key_VolumeDown)); connect(globalAction, SIGNAL(triggered(bool) ), SLOT(slotDecreaseVolume())); globalAction = actionCollection()->addAction("mute"); globalAction->setText(i18n("Mute")); globalAction->setGlobalShortcut(KShortcut(Qt::Key_VolumeMute)); connect(globalAction, SIGNAL(triggered(bool) ), SLOT(slotMute())); } } Why is the setGlobalShortcut() code for "increase_volume" different from that for "decrease_volume" and "mute"? The latter two work correctly, but the first is broken for me. This patch fixes the behaviour for me: Index: kmix.cpp =================================================================== --- kmix.cpp (revision 1111731) +++ kmix.cpp (working copy) @@ -144,7 +144,8 @@ if ( m_autouseMultimediaKeys ) { KAction* globalAction = actionCollection()->addAction("increase_volume"); globalAction->setText(i18n("Increase Volume")); - globalAction->setGlobalShortcut(KShortcut(Qt::Key_VolumeUp), ( KAction::ShortcutTypes)( KAction::ActiveShortcut | KAction::DefaultShortcut), KAction::NoAutoloading); +// globalAction->setGlobalShortcut(KShortcut(Qt::Key_VolumeUp), ( KAction::ShortcutTypes)( KAction::ActiveShortcut | KAction::DefaultShortcut), KAction::NoAutoloading); + globalAction->setGlobalShortcut(KShortcut(Qt::Key_VolumeUp)); connect(globalAction, SIGNAL(triggered(bool) ), SLOT(slotIncreaseVolume())); globalAction = actionCollection()->addAction("decrease_volume"); I can confirm that the volume up shortcut is messed up every time I log into KDE (also using SVN trunk version through openSUSE packages). I've set Meta+Up as a shortcut but after login, 'Volume Up' special key is set instead, which my keyboard is lacking :-) Other KMix shortcuts are unaffected. This happened only recently. Haven't had the time to test the patch though.. SVN commit 1133816 by saschpe: Fix volume up / mute shortcut issue, which overwrites custom shortcuts with system defaults. BUG: 229300 M +1 -1 kmix.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=1133816 I'm the original reporter, and I'm marking it as verified. The change is the same as the non-comment part of my patch, which did fix the problem. Somehow this bug has been reintroduced, and is present in revision 1191299. The suspicious code in comment #2 is back again. The .cpp file has been moved to kdemultimedia/kmix/apps/. I can confirm that this bug is present again in both 4.5.80 and 4.5.85. The change described in #3 still fixes it. Please fix this again. (Btw, the bug was reintroduced in Revision 1170713 by esken on Sep 1 21:37:18 2010 UTC.) Can also confirm it. Can someone either revert the commit or re-apply my patch? I'm currently unable to do for myself. I can confirm this bug since 4.5.80. Unfortunately it's not fixed in RC2. I hope relese will do fine with that. I just committed Sascha's fix again. Unfortunately automatic updating of this bug failed since I don't have required permissions to mark it closed. Here're the links: trunk: WebSVN link: http://websvn.kde.org/?view=rev&revision=1213537 4.6 branch: WebSVN link: http://websvn.kde.org/?view=rev&revision=1213541 *** Bug 262088 has been marked as a duplicate of this bug. *** Fixed, according to comment #11 I just found the same bug with another shortcut. The "KDE Deamon -> Sleep" shortcut gets reset too. Should I open a new bug about this? Never mind, I opened bug 262908 for this. |