objective-cmouseeventnswindownseventcgeventtap

NSWindow frozen while simulating mouse down event


After receiving a mouse down event, my NSWindow is frozen. I'm unable to capture which threads hang in Xcode. I'm using the following code to simulate a mouse event:

CGEventSourceRef eventSource = CGEventSourceCreate(kCGEventSourceStateHIDSystemState);
CGEventRef event = CGEventCreateMouseEvent(eventSource, eventType, mouseLocation, mouseButton);
CGEventPost(kCGHIDEventTap, event);
CFRelease(event);

How can I resolve this?


Solution

  • I have changed runloop mode from NSDefaultRunLoopMode to NSRunLoopCommonModes and It works.