В обработчике распознавателя жестов нажатия я пытаюсь выяснить, была ли нажата CMD или Shift, например:
- (void)handlePress:(NSPressGestureRecognizer*)gr {
NSEventModifierFlags flags = [[NSApp currentEvent] modifierFlags];
if (flags & NSCommandKeyMask) {
NSLog(@"CMD pressed");
}
}
Однако флаг правильно установлен только в методе обработчика событий keyDown или keyUp. NSGestureRecognizer, похоже, не раскрывает объект события, поэтому я получаю его currentEvent из NSApp. Что мне не хватает?