diff options
| author | Jan Djärv | 2011-01-21 09:35:30 +0100 |
|---|---|---|
| committer | Jan Djärv | 2011-01-21 09:35:30 +0100 |
| commit | 449ab399f45da3a5310ef6d07865c923cc1eb269 (patch) | |
| tree | 1f3d9518e9e86fb01630a18cf0e0fb7465dbb708 /src | |
| parent | c310ff4fade6f04b0c9cd2ed1bee572e8a03efd2 (diff) | |
| download | emacs-449ab399f45da3a5310ef6d07865c923cc1eb269.tar.gz emacs-449ab399f45da3a5310ef6d07865c923cc1eb269.zip | |
* nsterm.m (keyDown): If ns_right_alternate_modifier is Qleft, check
if ns_alternate_modifier is none.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 5 | ||||
| -rw-r--r-- | src/nsterm.m | 11 |
2 files changed, 12 insertions, 4 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index c0424f95477..11a80ec3b10 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,8 @@ | |||
| 1 | 2011-01-21 Jan Djärv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * nsterm.m (keyDown): If ns_right_alternate_modifier is Qleft, check | ||
| 4 | if ns_alternate_modifier is none. | ||
| 5 | |||
| 1 | 2011-01-20 Jan Djärv <jan.h.d@swipnet.se> | 6 | 2011-01-20 Jan Djärv <jan.h.d@swipnet.se> |
| 2 | 7 | ||
| 3 | * unexmacosx.c: Add comment about include order. | 8 | * unexmacosx.c: Add comment about include order. |
diff --git a/src/nsterm.m b/src/nsterm.m index 34841387d3b..0838674de2b 100644 --- a/src/nsterm.m +++ b/src/nsterm.m | |||
| @@ -4388,6 +4388,7 @@ ns_term_shutdown (int sig) | |||
| 4388 | int flags; | 4388 | int flags; |
| 4389 | static NSMutableArray *nsEvArray; | 4389 | static NSMutableArray *nsEvArray; |
| 4390 | static BOOL firstTime = YES; | 4390 | static BOOL firstTime = YES; |
| 4391 | int left_is_none; | ||
| 4391 | 4392 | ||
| 4392 | NSTRACE (keyDown); | 4393 | NSTRACE (keyDown); |
| 4393 | 4394 | ||
| @@ -4511,10 +4512,14 @@ ns_term_shutdown (int sig) | |||
| 4511 | emacs_event->modifiers |= | 4512 | emacs_event->modifiers |= |
| 4512 | parse_solitary_modifier (ns_function_modifier); | 4513 | parse_solitary_modifier (ns_function_modifier); |
| 4513 | 4514 | ||
| 4515 | left_is_none = NILP (ns_alternate_modifier) | ||
| 4516 | || EQ (ns_alternate_modifier, Qnone); | ||
| 4517 | |||
| 4514 | if ((flags & NSRightAlternateKeyMask) == NSRightAlternateKeyMask) | 4518 | if ((flags & NSRightAlternateKeyMask) == NSRightAlternateKeyMask) |
| 4515 | { | 4519 | { |
| 4516 | if ((NILP (ns_right_alternate_modifier) | 4520 | if ((NILP (ns_right_alternate_modifier) |
| 4517 | || EQ (ns_right_alternate_modifier, Qnone)) | 4521 | || EQ (ns_right_alternate_modifier, Qnone) |
| 4522 | || (EQ (ns_right_alternate_modifier, Qleft) && left_is_none)) | ||
| 4518 | && !fnKeysym) | 4523 | && !fnKeysym) |
| 4519 | { /* accept pre-interp alt comb */ | 4524 | { /* accept pre-interp alt comb */ |
| 4520 | if ([[theEvent characters] length] > 0) | 4525 | if ([[theEvent characters] length] > 0) |
| @@ -4532,9 +4537,7 @@ ns_term_shutdown (int sig) | |||
| 4532 | 4537 | ||
| 4533 | if ((flags & NSLeftAlternateKeyMask) == NSLeftAlternateKeyMask) /* default = meta */ | 4538 | if ((flags & NSLeftAlternateKeyMask) == NSLeftAlternateKeyMask) /* default = meta */ |
| 4534 | { | 4539 | { |
| 4535 | if ((NILP (ns_alternate_modifier) | 4540 | if (left_is_none && !fnKeysym) |
| 4536 | || EQ (ns_alternate_modifier, Qnone)) | ||
| 4537 | && !fnKeysym) | ||
| 4538 | { /* accept pre-interp alt comb */ | 4541 | { /* accept pre-interp alt comb */ |
| 4539 | if ([[theEvent characters] length] > 0) | 4542 | if ([[theEvent characters] length] > 0) |
| 4540 | code = [[theEvent characters] characterAtIndex: 0]; | 4543 | code = [[theEvent characters] characterAtIndex: 0]; |