Chromium Code Reviews| Index: ui/events/cocoa/events_mac.mm |
| diff --git a/ui/events/cocoa/events_mac.mm b/ui/events/cocoa/events_mac.mm |
| index 4a8347fd25f67bb93125ef6f5ff82f407334ee13..6631d88361f1b43f49c37ec4e66cf0d12310d822 100644 |
| --- a/ui/events/cocoa/events_mac.mm |
| +++ b/ui/events/cocoa/events_mac.mm |
| @@ -21,6 +21,29 @@ |
| namespace ui { |
| +namespace { |
| + |
| +EventType EventTypeForFlagsChanged(NSEventModifierFlags flags, |
| + KeyboardCode key_code) { |
| + switch (key_code) { |
| + case VKEY_CAPITAL: |
|
tapted
2016/10/25 06:55:09
There's no need to use the Windows keycodes that K
|
| + return (flags & NSAlphaShiftKeyMask) ? ET_KEY_PRESSED : ET_KEY_RELEASED; |
| + case VKEY_SHIFT: |
| + return (flags & NSShiftKeyMask) ? ET_KEY_PRESSED : ET_KEY_RELEASED; |
| + case VKEY_CONTROL: |
| + return (flags & NSControlKeyMask) ? ET_KEY_PRESSED : ET_KEY_RELEASED; |
| + case VKEY_MENU: |
| + return (flags & NSAlternateKeyMask) ? ET_KEY_PRESSED : ET_KEY_RELEASED; |
| + case VKEY_APPS: // Fallthrough. |
| + case VKEY_LWIN: |
| + return (flags & NSCommandKeyMask) ? ET_KEY_PRESSED : ET_KEY_RELEASED; |
| + default: |
| + return ET_UNKNOWN; |
| + } |
| +} |
| + |
| +} // namespace |
| + |
| EventType EventTypeFromNative(const base::NativeEvent& native_event) { |
| NSEventType type = [native_event type]; |
| switch (type) { |
| @@ -54,6 +77,8 @@ EventType EventTypeFromNative(const base::NativeEvent& native_event) { |
| case NSSystemDefined: |
| return ET_UNKNOWN; |
| case NSFlagsChanged: |
| + return EventTypeForFlagsChanged(native_event.modifierFlags, |
|
tapted
2016/10/25 06:55:09
[native_event modifierFlags] - we only use dot no
tapted
2016/10/27 00:33:05
And here just have
case NSKeyDown:
case NSKey
alshabalin
2016/10/28 19:58:13
Done.
|
| + KeyboardCodeFromNSEvent(native_event)); |
| case NSApplicationDefined: |
| case NSPeriodic: |
| case NSCursorUpdate: |