summaryrefslogtreecommitdiff
path: root/libs/gtkmm2ext
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-09-29 12:00:43 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-09-29 12:01:50 -0400
commit99c8e5191868a1c499b3c5b260752898fd547afe (patch)
tree4205057873d45778676088d542bd9606c3eb6d42 /libs/gtkmm2ext
parent5472498a504844229c2e492c3aed658d5f7a3d00 (diff)
manually revert b9cab93fb116b and remove associated code.
For the last time, because of how GDK works, Keyboard::PrimaryModifier on MacOS MUST include MOD2 ***AND** META
Diffstat (limited to 'libs/gtkmm2ext')
-rw-r--r--libs/gtkmm2ext/keyboard.cc24
1 files changed, 1 insertions, 23 deletions
diff --git a/libs/gtkmm2ext/keyboard.cc b/libs/gtkmm2ext/keyboard.cc
index 9bbe960dc6..1b0aec6cd6 100644
--- a/libs/gtkmm2ext/keyboard.cc
+++ b/libs/gtkmm2ext/keyboard.cc
@@ -60,7 +60,7 @@ guint Keyboard::insert_note_mod = GDK_CONTROL_MASK;
#ifdef __APPLE__
-uint Keyboard::PrimaryModifier = GDK_MOD2_MASK; // Command
+uint Keyboard::PrimaryModifier = (GDK_MOD2_MASK|GDK_META_MASK); // Command
guint Keyboard::SecondaryModifier = GDK_CONTROL_MASK; // Control
guint Keyboard::TertiaryModifier = GDK_SHIFT_MASK; // Shift
guint Keyboard::Level4Modifier = GDK_MOD1_MASK; // Alt/Option
@@ -369,28 +369,6 @@ Keyboard::reset_relevant_modifier_key_mask ()
gtk_accelerator_set_default_mod_mask (RelevantModifierKeyMask);
-#ifdef __APPLE__
- /* Remove SUPER,HYPER,META.
- *
- * GTK on OS X adds META when Command is pressed for various indefensible reasons, since
- * it also uses MOD2 to indicate Command. Our code assumes that each
- * modifier (Primary, Secondary etc.) is represented by a single bit in
- * the modifier mask, but GTK's (STUPID) design uses two (MOD2 + META)
- * to represent the Command key. Some discussion about this is here:
- * https://bugzilla.gnome.org/show_bug.cgi?id=692597
- *
- * We cannot do this until AFTER we told GTK what the default modifier
- * was, because otherwise it will fail to recognize MOD2-META-<key> as
- * an accelerator.
- *
- * Note that in the tabbed branch, we no longer use GTK accelerators
- * for functional purposes, so this is as critical for that branch.
- */
-
- RelevantModifierKeyMask = GdkModifierType (RelevantModifierKeyMask & ~GDK_SUPER_MASK);
- RelevantModifierKeyMask = GdkModifierType (RelevantModifierKeyMask & ~GDK_HYPER_MASK);
- RelevantModifierKeyMask = GdkModifierType (RelevantModifierKeyMask & ~GDK_META_MASK);
-#endif
RelevantModifierKeysChanged(); /* EMIT SIGNAL */
}