Is it possible for one window on a Mac desktop to programatically send a keyboard shortcut or key sequence to another?
I\'m looking to control an application which o
You can do this without need for AppleScript also. Here's an example working code which sends a key code with modifiers.
-Edit: this won't let you target a specific app, only post keystrokes to the whole system (as if pressed on a keyboard)
#include
// you can find key codes in , for example kVK_ANSI_A is 'A' key
// modifiers are flags such as kCGEventFlagMaskCommand
void PostKeyWithModifiers(CGKeyCode key, CGEventFlags modifiers)
{
CGEventSourceRef source = CGEventSourceCreate(kCGEventSourceStateCombinedSessionState);
CGEventRef keyDown = CGEventCreateKeyboardEvent(source, key, TRUE);
CGEventSetFlags(keyDown, modifiers);
CGEventRef keyUp = CGEventCreateKeyboardEvent(source, key, FALSE);
CGEventPost(kCGAnnotatedSessionEventTap, keyDown);
CGEventPost(kCGAnnotatedSessionEventTap, keyUp);
CFRelease(keyUp);
CFRelease(keyDown);
CFRelease(source);
}