diff options
| author | Teddy Wing | 2018-10-14 18:42:14 +0200 |
|---|---|---|
| committer | Teddy Wing | 2018-10-14 18:42:14 +0200 |
| commit | 42b2635f783019610f81dd778547ee938992a916 (patch) | |
| tree | d8f715eff4ca3a2473412e5a0f1434d1b99121fe | |
| parent | 0c7cfa6f86ed576876ec71c032d02fed4820c542 (diff) | |
| download | dome_key_event_source_simulator-42b2635f783019610f81dd778547ee938992a916.tar.bz2 | |
Use OS-independent `NSSystemDefined` & `NSScreenChangedEventType`
Those variants are deprecated starting in Mac OS 10.12. Use the new ones
for 10.12+ and the old ones otherwise.
| -rw-r--r-- | dome_key_event_source_simulator/dome_key_event_source_simulator.m | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/dome_key_event_source_simulator/dome_key_event_source_simulator.m b/dome_key_event_source_simulator/dome_key_event_source_simulator.m index c7e9dcb..1bb38c7 100644 --- a/dome_key_event_source_simulator/dome_key_event_source_simulator.m +++ b/dome_key_event_source_simulator/dome_key_event_source_simulator.m @@ -8,6 +8,14 @@ #import "dome_key_event_source_simulator.h" +#ifdef AVAILABLE_MAC_OS_X_VERSION_10_12_AND_LATER + #define NSEVENT_TYPE_SYSTEM_DEFINED NSEventTypeSystemDefined + #define NSEVENT_SUBTYPE_SCREEN_CHANGED NSEventSubtypeScreenChanged +#else + #define NSEVENT_TYPE_SYSTEM_DEFINED NSSystemDefined + #define NSEVENT_SUBTYPE_SCREEN_CHANGED NSScreenChangedEventType +#endif + static const size_t key_down_up[][2] = { {0xa00, 0xa}, // Down {0xb00, 0xb} // Up @@ -16,13 +24,13 @@ static const size_t key_down_up[][2] = { void dkess_press_key(int key, NSEventModifierFlags modifier_flags) { for (int i = 0; i < 2; i++) { - NSEvent *event = [NSEvent otherEventWithType:NSSystemDefined + NSEvent *event = [NSEvent otherEventWithType:NSEVENT_TYPE_SYSTEM_DEFINED location:NSZeroPoint modifierFlags:key_down_up[i][0] | modifier_flags timestamp:0.0 windowNumber:0 context:nil - subtype:NSScreenChangedEventType + subtype:NSEVENT_SUBTYPE_SCREEN_CHANGED data1:(key << 16) | (key_down_up[i][1] << 8) data2:-1]; |
