* nsterm.m (keyDown): If ns_right_alternate_modifier is Qleft, check

if ns_alternate_modifier is none.
This commit is contained in:
Jan Djärv 2011-01-21 09:35:30 +01:00
parent c310ff4fad
commit 449ab399f4
2 changed files with 12 additions and 4 deletions

View file

@ -1,3 +1,8 @@
2011-01-21 Jan Djärv <jan.h.d@swipnet.se>
* nsterm.m (keyDown): If ns_right_alternate_modifier is Qleft, check
if ns_alternate_modifier is none.
2011-01-20 Jan Djärv <jan.h.d@swipnet.se>
* unexmacosx.c: Add comment about include order.

View file

@ -4388,6 +4388,7 @@ - (void)keyDown: (NSEvent *)theEvent
int flags;
static NSMutableArray *nsEvArray;
static BOOL firstTime = YES;
int left_is_none;
NSTRACE (keyDown);
@ -4511,10 +4512,14 @@ most recently updated (I guess), which is not the correct one. */
emacs_event->modifiers |=
parse_solitary_modifier (ns_function_modifier);
left_is_none = NILP (ns_alternate_modifier)
|| EQ (ns_alternate_modifier, Qnone);
if ((flags & NSRightAlternateKeyMask) == NSRightAlternateKeyMask)
{
if ((NILP (ns_right_alternate_modifier)
|| EQ (ns_right_alternate_modifier, Qnone))
|| EQ (ns_right_alternate_modifier, Qnone)
|| (EQ (ns_right_alternate_modifier, Qleft) && left_is_none))
&& !fnKeysym)
{ /* accept pre-interp alt comb */
if ([[theEvent characters] length] > 0)
@ -4532,9 +4537,7 @@ most recently updated (I guess), which is not the correct one. */
if ((flags & NSLeftAlternateKeyMask) == NSLeftAlternateKeyMask) /* default = meta */
{
if ((NILP (ns_alternate_modifier)
|| EQ (ns_alternate_modifier, Qnone))
&& !fnKeysym)
if (left_is_none && !fnKeysym)
{ /* accept pre-interp alt comb */
if ([[theEvent characters] length] > 0)
code = [[theEvent characters] characterAtIndex: 0];