diff options
| author | Stanislaw Halik <sthalik@misaki.pl> | 2013-11-17 19:32:07 +0100 | 
|---|---|---|
| committer | Stanislaw Halik <sthalik@misaki.pl> | 2013-11-17 19:32:07 +0100 | 
| commit | 8a3e9c35142c115188b03aa4d73117a8f12e3175 (patch) | |
| tree | 16ed70bea9e5e5b43b54f3b7e6619f72a43be01e /qxt-mini | |
| parent | 8373c6cd439e4cf393d03f603e8e914cc7dfabf6 (diff) | |
Try to implement darwin modifier keys
Diffstat (limited to 'qxt-mini')
| -rw-r--r-- | qxt-mini/qxtglobalshortcut_p.h | 12 | 
1 files changed, 10 insertions, 2 deletions
| diff --git a/qxt-mini/qxtglobalshortcut_p.h b/qxt-mini/qxtglobalshortcut_p.h index e3f3ddd3..5b10d089 100644 --- a/qxt-mini/qxtglobalshortcut_p.h +++ b/qxt-mini/qxtglobalshortcut_p.h @@ -75,11 +75,19 @@ public:          EventRef Event = reinterpret_cast<EventRef>(message);          UInt32 EventClass = GetEventClass (Event);          UInt32 EventKind = GetEventKind (Event); +        UInt32 eventModifiers = 0; +        GetEventParameter(Event, +                          kEventParamKeyModifiers, +                          typeUInt32, +                          NULL, +                          sizeof(UInt32), +                          NULL, +                          &eventModifiers);          if (kEventClassKeyboard && EventKind == kEventRawKeyDown)          { -            UInt32 keyPressed; +            UInt32 keyPressed = -1;              GetEventParameter(Event, kEventParamKeyCode, typeUInt32, NULL, sizeof(UInt32), NULL, &keyPressed);  -            return keyPressed == nativeKeycode(key); +            return keyPressed == nativeKeycode(key) && nativeModifiers(mods) == eventModifiers;          }      }  #endif // Q_WS_MAC | 
