Hi cocoa-dev, I recently added an event tap to my program. Since doing that, there is a strange behavior: when I kill my job (usually by making a change in Xcode and pressing cmd-Enter, being prompted to kill the job, and selecting OK), it will repeat back the last 10-20 keypresses as or after it dies. For example, if I do this:
1. Start my program 2. Switch back to Xcode and type "foo" in some source file. 3. Cmd-enter in Xcode 4. A dialog asks if I want to kill the job, say yes. 5. A ghost types "foo" in whatever window the cursor happens to be in. This is on 10.6.4 and Xcode 3.2.3. I register the event tap like this: machPortRef = CGEventTapCreate(kCGHIDEventTap, kCGHeadInsertEventTap, kCGEventTapOptionListenOnly, CGEventMaskBit(kCGEventKeyDown), (CGEventTapCallBack)OnTappedEvent, self); if (machPortRef) { CFRunLoopSourceRef eventSrc; eventSrc = CFMachPortCreateRunLoopSource(NULL, machPortRef, 0); if (eventSrc == NULL) { DebugLog(@"CFMachPortCreateRunLoopSource failed."); } else { // Get the CFRunLoop primitive for the Carbon Main Event Loop, and add the new event souce CFRunLoopAddSource(CFRunLoopGetCurrent(), eventSrc, kCFRunLoopDefaultMode); CFRelease(eventSrc); } } Even if my handler does nothing, it still exhibits this behavior: static CGEventRef OnTappedEvent(CGEventTapProxy proxy, CGEventType type, CGEventRef event, void *refcon) { return event; } I couldn't find reports of anyone else having this problem, which usually means I did something wrong :). Any ideas on what could cause this? Thanks, George _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com