- gdk_keymap_translate_keyboard_state (key_hash->keymap,
- hardware_keycode, state, group,
- &keyval, &effective_group, &level, &consumed_modifiers);
+ /* if the group-toggling modifier is part of the default accel mod
+ * mask, and it is active, disable it for matching
+ */
+ shift_group_mask = gdk_keymap_get_modifier_mask (key_hash->keymap,
+ GDK_MODIFIER_INTENT_SHIFT_GROUP);
+ if (mask & shift_group_mask)
+ group_mod_is_accel_mod = TRUE;
+
+ gdk_keymap_map_virtual_modifiers (key_hash->keymap, &mask);
+ gdk_keymap_add_virtual_modifiers (key_hash->keymap, &state);