app: don't hardcode MOD2 in GimpContainerTreeView either
Add new utility function gimp_get_all_modifiers_mask() which returns all modifiers used for "useful" things on the current platform, like in the commit below.
This commit is contained in:
@ -1124,10 +1124,7 @@ gimp_container_tree_view_button_press (GtkWidget *widget,
|
||||
column, edit_cell, TRUE);
|
||||
}
|
||||
else if (! toggled_cell &&
|
||||
((bevent->state & (GDK_SHIFT_MASK |
|
||||
GDK_CONTROL_MASK |
|
||||
GDK_MOD1_MASK |
|
||||
GDK_MOD2_MASK)) == 0))
|
||||
! (bevent->state & gimp_get_all_modifiers_mask ()))
|
||||
{
|
||||
/* Only activate if we're not in a toggled cell
|
||||
* and no modifier keys are pressed
|
||||
|
@ -699,6 +699,20 @@ gimp_get_constrain_behavior_mask (void)
|
||||
GDK_MODIFIER_INTENT_MODIFY_SELECTION);
|
||||
}
|
||||
|
||||
GdkModifierType
|
||||
gimp_get_all_modifiers_mask (void)
|
||||
{
|
||||
GdkDisplay *display = gdk_display_get_default ();
|
||||
|
||||
return (GDK_SHIFT_MASK | GDK_CONTROL_MASK | GDK_MOD1_MASK |
|
||||
gdk_keymap_get_modifier_mask (gdk_keymap_get_for_display (display),
|
||||
GDK_MODIFIER_INTENT_PRIMARY_ACCELERATOR) |
|
||||
gdk_keymap_get_modifier_mask (gdk_keymap_get_for_display (display),
|
||||
GDK_MODIFIER_INTENT_EXTEND_SELECTION) |
|
||||
gdk_keymap_get_modifier_mask (gdk_keymap_get_for_display (display),
|
||||
GDK_MODIFIER_INTENT_MODIFY_SELECTION));
|
||||
}
|
||||
|
||||
/**
|
||||
* gimp_get_screen_resolution:
|
||||
* @screen: a #GdkScreen or %NULL
|
||||
|
@ -63,6 +63,7 @@ GdkModifierType gimp_get_extend_selection_mask (void);
|
||||
GdkModifierType gimp_get_modify_selection_mask (void);
|
||||
GdkModifierType gimp_get_toggle_behavior_mask (void);
|
||||
GdkModifierType gimp_get_constrain_behavior_mask (void);
|
||||
GdkModifierType gimp_get_all_modifiers_mask (void);
|
||||
|
||||
void gimp_get_screen_resolution (GdkScreen *screen,
|
||||
gdouble *xres,
|
||||
|
Reference in New Issue
Block a user