After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 580616 - gnome-settings-daemon doesn't reliably detect keybinding changes
gnome-settings-daemon doesn't reliably detect keybinding changes
Status: RESOLVED FIXED
Product: gnome-settings-daemon
Classification: Core
Component: plugins
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gnome-settings-daemon-maint
gnome-settings-daemon-maint
Depends on:
Blocks:
 
 
Reported: 2009-04-28 15:40 UTC by Matthias Clasen
Modified: 2009-06-15 05:58 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (452 bytes, patch)
2009-04-29 18:27 UTC, Matthias Clasen
committed Details | Review

Description Matthias Clasen 2009-04-28 15:40:43 UTC
This has been reported here: https://bugzilla.redhat.com/show_bug.cgi?id=497725

Sometimes when reassigning one of the XF86Audio keys to a custom keybinding, the new binding doesn't work (ie the custom command is not triggered). And I've also seen situations where after reassigning the key back to its standard function, both the custom command and the volume popup were triggered. When that happened, I looked at gconf, and the binding entry for the custom binding had correctly been reset to empty, but the command was still triggered. Therefore, I assume the plugin that handles the keybindings got out of sync with whats in gconf somehow.
Comment 1 Matthias Clasen 2009-04-29 18:27:18 UTC
Created attachment 133592 [details] [review]
patch

Here is a patch that fixes this for me. Need to be more careful when comparing two key structs. With the current code, whenever one of them had keycodes == NULL, they were considered the same. Which is exactly what happens when creating a new custom binding, or removing one.
Comment 2 Jens Granseuer 2009-04-29 18:41:48 UTC
The usual indentation issues aside (plus opening braces should be same line as the "else"), please apply.