diff --git a/QCUIElement.m b/QCUIElement.m index 406843d..07fbcf6 100644 --- a/QCUIElement.m +++ b/QCUIElement.m @@ -344,10 +344,11 @@ - (NSString *)readString { } } - //NSPasteboard *pboard = [NSPasteboard generalPasteboard]; - //NSString *savedContents = [pboard stringForType:NSPasteboardTypeString]; + NSPasteboard *pboard = [NSPasteboard generalPasteboard]; + NSString *savedContents = [pboard stringForType:NSPasteboardTypeString]; NSString *copiedContents = [self performCopee:YES]; - //[pboard setString:savedContents forType:NSPasteboardTypeString]; // trying to restore original clip board contents... doesn't seem to work, not sure if good idaea anyway. + [pboard clearContents]; + [pboard setString:savedContents forType:NSPasteboardTypeString]; // trying to restore original clip board contents... doesn't seem to work, not sure if good idaea anyway. return copiedContents; } @@ -357,6 +358,7 @@ - (NSString *)readString { - (BOOL)writeString:(NSString *)pasteString { NSPasteboard *pboard = [NSPasteboard generalPasteboard]; + NSString *savedContents = [pboard stringForType:NSPasteboardTypeString]; [pboard clearContents]; [pboard declareTypes:[NSArray arrayWithObject:NSPasteboardTypeString] owner:nil]; [pboard setString:pasteString forType:NSPasteboardTypeString]; @@ -369,10 +371,13 @@ - (BOOL)writeString:(NSString *)pasteString { if ([pasteMenuItem enabled]) { if (AXUIElementPerformAction(pasteMenuItem->uiElementRef, kAXPressAction) == kAXErrorSuccess) { + usleep(100000); // hack... might not work with long documents? + [pboard clearContents]; + [pboard setString:savedContents forType:NSPasteboardTypeString]; return YES; } } - + return NO; }