use key equivalent modifier mask.

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@22848 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
rfm 2006-05-01 18:39:03 +00:00
parent 73536612fe
commit 79a2f5656d
2 changed files with 18 additions and 13 deletions

View file

@ -954,6 +954,8 @@ static NSNotificationCenter *nc;
unsigned i;
unsigned count = [_items count];
NSEventType type = [theEvent type];
unsigned modifiers = [theEvent modifierFlags];
NSString *keyEquivalent = [theEvent charactersIgnoringModifiers];
if (type != NSKeyDown && type != NSKeyUp)
return NO;
@ -973,21 +975,16 @@ static NSNotificationCenter *nc;
}
else
{
if ([[item keyEquivalent] isEqualToString:
[theEvent charactersIgnoringModifiers]])
unsigned mask = [item keyEquivalentModifierMask];
if ([[item keyEquivalent] isEqualToString: keyEquivalent]
&& (modifiers & mask) == mask)
{
/*
* Must be carriage return or have the command key modifier
*/
if ([[item keyEquivalent] isEqualToString: @"\r"]
|| ([theEvent modifierFlags] & NSCommandKeyMask))
if ([item isEnabled])
{
if ([item isEnabled])
{
[_view performActionWithHighlightingForItemAtIndex: i];
}
return YES;
[_view performActionWithHighlightingForItemAtIndex: i];
}
return YES;
}
}
}