X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkprivate.c;h=70151f9bfe97733efe42def11c23326bb75cbefa;hb=ca2368dba958d6fecf2fce417307bb9cbbe6eb6b;hp=1ec08147fb00d38c8ee843be7490029f5838b5bc;hpb=1c8481a6ea52f34210177f54159d231ea4ba0b7d;p=~andy%2Fgtk
diff --git a/gtk/gtkprivate.c b/gtk/gtkprivate.c
index 1ec08147f..70151f9bf 100644
--- a/gtk/gtkprivate.c
+++ b/gtk/gtkprivate.c
@@ -12,9 +12,7 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
- * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * License along with this library. If not, see .
*/
/*
@@ -27,6 +25,7 @@
#include "config.h"
#include
+#include
#include "gdk/gdk.h"
@@ -216,15 +215,18 @@ _gtk_translate_keyboard_accel_state (GdkKeymap *keymap,
gint *level,
GdkModifierType *consumed_modifiers)
{
+ GdkModifierType shift_group_mask;
gboolean group_mask_disabled = FALSE;
gboolean retval;
/* if the group-toggling modifier is part of the accel mod mask, and
* it is active, disable it for matching
*/
- if (accel_mask & state & GTK_TOGGLE_GROUP_MOD_MASK)
+ shift_group_mask = gdk_keymap_get_modifier_mask (keymap,
+ GDK_MODIFIER_INTENT_SHIFT_GROUP);
+ if (accel_mask & state & shift_group_mask)
{
- state &= ~GTK_TOGGLE_GROUP_MOD_MASK;
+ state &= ~shift_group_mask;
group = 0;
group_mask_disabled = TRUE;
}
@@ -244,7 +246,7 @@ _gtk_translate_keyboard_accel_state (GdkKeymap *keymap,
*effective_group = 1;
if (consumed_modifiers)
- *consumed_modifiers &= ~GTK_TOGGLE_GROUP_MOD_MASK;
+ *consumed_modifiers &= ~shift_group_mask;
}
return retval;