Fix keyboard shortcuts with Shift.

Reviewed by:	wblock@
Obtained from:	Git upstream (master branch)
This commit is contained in:
Olivier Duchateau 2013-05-11 18:15:40 +00:00
parent ad4e927f24
commit ebcf65c2df
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=317901
3 changed files with 38 additions and 1 deletions

View file

@ -3,7 +3,7 @@
PORTNAME= libxfce4menu
PORTVERSION= 4.10.0
PORTREVISION= 3
PORTREVISION= 4
CATEGORIES= x11 xfce
MASTER_SITES= ${MASTER_SITE_XFCE}
DISTNAME= libxfce4ui-${PORTVERSION}

View file

@ -0,0 +1,13 @@
https://bugzilla.xfce.org/show_bug.cgi?id=8744
--- ./libxfce4kbd-private/xfce-shortcut-dialog.c.orig 2012-04-28 19:46:52.000000000 +0000
+++ ./libxfce4kbd-private/xfce-shortcut-dialog.c 2013-05-09 09:19:32.000000000 +0000
@@ -327,6 +327,8 @@
&keyval, NULL, NULL, &consumed);
/* Get the modifiers */
+ if ((modifiers & GDK_SHIFT_MASK) && (consumed & GDK_SHIFT_MASK))
+ consumed &= ~GDK_SHIFT_MASK;
modifiers &= ~consumed;
modifiers &= mod_mask;

View file

@ -0,0 +1,24 @@
https://bugzilla.xfce.org/show_bug.cgi?id=8744
--- ./libxfce4kbd-private/xfce-shortcuts-grabber.c.orig 2012-04-28 19:46:52.000000000 +0000
+++ ./libxfce4kbd-private/xfce-shortcuts-grabber.c 2013-05-09 09:25:50.000000000 +0000
@@ -512,8 +512,10 @@
&keyval, NULL, NULL, &consumed);
/* Get the modifiers */
- modifiers &= ~consumed;
+ if ((modifiers & GDK_SHIFT_MASK) && (consumed & GDK_SHIFT_MASK))
+ consumed &= ~GDK_SHIFT_MASK;
gdk_keymap_add_virtual_modifiers (keymap, &modifiers);
+ modifiers &= ~consumed;
modifiers &= mod_mask;
context.keyval = keyval;
@@ -521,6 +523,7 @@
raw_shortcut_name = gtk_accelerator_name (keyval, modifiers);
TRACE ("Looking for %s", raw_shortcut_name);
+ gtk_accelerator_parse (raw_shortcut_name, &context.keyval, &context.modifiers);
g_free (raw_shortcut_name);
g_hash_table_foreach (grabber->priv->keys, (GHFunc) find_event_key, &context);