summaryrefslogtreecommitdiffstats
path: root/src/gui_mac.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui_mac.c')
-rw-r--r--src/gui_mac.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/gui_mac.c b/src/gui_mac.c
index 645e0b5b87..f60567e570 100644
--- a/src/gui_mac.c
+++ b/src/gui_mac.c
@@ -2200,6 +2200,7 @@ gui_mac_doKeyEvent(EventRecord *theEvent)
KeySym key_sym;
int key_char;
int modifiers;
+ int simplify = FALSE;
/* Mask the mouse (as per user setting) */
if (p_mh)
@@ -2253,7 +2254,7 @@ gui_mac_doKeyEvent(EventRecord *theEvent)
/* Handle special keys. */
#if 0
- /* Why have this been removed? */
+ /* Why has this been removed? */
if (!(theEvent->modifiers & (cmdKey | controlKey | rightControlKey)))
#endif
{
@@ -2270,11 +2271,14 @@ gui_mac_doKeyEvent(EventRecord *theEvent)
# endif
key_char = TO_SPECIAL(special_keys[i].vim_code0,
special_keys[i].vim_code1);
- key_char = simplify_key(key_char,&modifiers);
+ simplify = TRUE;
break;
}
}
+ /* For some keys the modifier is included in the char itself. */
+ if (simplify || key_char == TAB || key_char == ' ')
+ key_char = simplify_key(key_char, &modifiers);
/* Add the modifier to the input bu if needed */
/* Do not want SHIFT-A or CTRL-A with modifier */