diff -r cd284b4ca152 -r e96acbe0e928 pidgin/gtkwebview.c --- a/pidgin/gtkwebview.c Sun Jul 08 18:27:41 2012 -0400 +++ b/pidgin/gtkwebview.c Sun Jul 08 23:41:47 2012 -0400 @@ -563,6 +563,20 @@ } void +gtk_webview_load_html_string_with_selection(GtkWebView *webview, const char *html) +{ + gtk_webview_load_html_string(webview, html); + gtk_webview_safe_execute_script(webview, + "var s = window.getSelection();" + "var r = document.createRange();" + "var n = document.getElementById('caret');" + "r.setStartBefore(n);" + "r.setEndBefore(n);" + "s.removeAllRanges();" + "s.addRange(r);"); +} + +void gtk_webview_append_html(GtkWebView *webview, const char *html) { GtkWebViewPriv *priv = GTK_WEBVIEW_GET_PRIVATE(webview);