I have a Webview, and I want to do something with the selected text.

I tried: 
DOMRange *dr = [ webView selectedDOMRange ];
NSString *m = [ dr markupString ];
this contains the selected characters, but buried in lots of markup language. 
But I just want the characters.

NSString *s= [ dr stringRepresentation ];
just returns "Undefined".

I could do [webView copy:nil ]; and then get the string from the general 
pasteboard, but I rather do not like to mess up the pasteboard - the user might 
have put something important there.

So I tried:
NSPasteboard *pasteboard = [ NSPasteboard pasteboardWithUniqueName ];
NSArray *types = [ NSArray arrayWithObject: NSPasteboardTypeString ];
[ webView writeSelectionWithPasteboardTypes: types  toPasteboard: pasteboard ];
NSString *po = [ pasteboard stringForType: NSPasteboardTypeString ];
NSLog(@"%s selectedString \"%...@\"",__FUNCTION__,po);

but the result is:  selectedString "(null)"
Adding [ pasteboard declareTypes: types owner: nil ] does not make any changes.

So what am I doing wrong?
How to get the selection as string form a WebView?


Kind regards,

Gerriet.

_______________________________________________

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

Reply via email to