Updating branch refs/heads/xfce-4.10 to 4dba3925c2103a1320759bc003df68dbc9b0394f (commit) from 4561420e4a3fbe33f0e7533b5ae0592b07578695 (commit)
commit 4dba3925c2103a1320759bc003df68dbc9b0394f Author: Jérôme Guelfucci <jero...@xfce.org> Date: Sat Dec 29 14:56:50 2012 +0100 Don't initialize the match context values twice. They are initialized to the correct values by the later gtk_accelerator_parse call. libxfce4kbd-private/xfce-shortcuts-grabber.c | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff --git a/libxfce4kbd-private/xfce-shortcuts-grabber.c b/libxfce4kbd-private/xfce-shortcuts-grabber.c index 5728dda..f177206 100644 --- a/libxfce4kbd-private/xfce-shortcuts-grabber.c +++ b/libxfce4kbd-private/xfce-shortcuts-grabber.c @@ -440,17 +440,20 @@ xfce_shortcuts_grabber_event_filter (GdkXEvent *gdk_xevent, modifiers &= ~consumed; modifiers &= mod_mask; - context.keyval = keyval; - context.modifiers = modifiers; - + /* Use the keyval and modifiers values of gtk_accelerator_parse. We + * will compare them with values we also get from this function and as + * it has its own logic, it's easier and safer to do so. + * See bug #8744 for a "live" example. */ raw_shortcut_name = gtk_accelerator_name (keyval, modifiers); gtk_accelerator_parse (raw_shortcut_name, &context.keyval, &context.modifiers); + TRACE ("Looking for %s", raw_shortcut_name); g_free (raw_shortcut_name); g_hash_table_foreach (grabber->priv->keys, (GHFunc) find_event_key, &context); if (G_LIKELY (context.result != NULL)) + /* We had a positive match */ g_signal_emit_by_name (grabber, "shortcut-activated", context.result, timestamp); _______________________________________________ Xfce4-commits mailing list Xfce4-commits@xfce.org https://mail.xfce.org/mailman/listinfo/xfce4-commits