* 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 <http://www.gnu.org/licenses/>.
*/
#include "config.h"
gint level;
GdkModifierType modifiers;
GdkModifierType consumed_modifiers;
+ GdkModifierType shift_group_mask;
gboolean group_mod_is_accel_mod = FALSE;
const GdkModifierType xmods = GDK_MOD2_MASK|GDK_MOD3_MASK|GDK_MOD4_MASK|GDK_MOD5_MASK;
const GdkModifierType vmods = GDK_SUPER_MASK|GDK_HYPER_MASK|GDK_META_MASK;
/* if the group-toggling modifier is part of the default accel mod
* mask, and it is active, disable it for matching
*/
- if (mask & GTK_TOGGLE_GROUP_MOD_MASK)
+ 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);
* otherwise we can get multiple exact matches, some being
* bogus */
(!group_mod_is_accel_mod ||
- (state & GTK_TOGGLE_GROUP_MOD_MASK) ==
- (entry->modifiers & GTK_TOGGLE_GROUP_MOD_MASK)))
+ (state & shift_group_mask) == (entry->modifiers & shift_group_mask)))
{
GTK_NOTE (KEYBINDINGS,