summaryrefslogtreecommitdiff
path: root/embed/ephy-embed-utils.c
diff options
context:
space:
mode:
authorCarlos Garcia Campos <cgarcia@igalia.com>2014-11-21 14:58:23 +0100
committerCarlos Garcia Campos <carlosgc@gnome.org>2014-11-24 14:02:25 +0100
commitcc89a4362495bf7d102b3d325e6fa1098a2d29b4 (patch)
tree1e0be8b1b1f6db90b17a2a03883a2539324824c2 /embed/ephy-embed-utils.c
parentdaae78496b86553668c9dc3de917603c9b2469c0 (diff)
downloadepiphany-cc89a4362495bf7d102b3d325e6fa1098a2d29b4.tar.gz
Use user a script message instead of a DBus signal for RemoveItemFromOverview
Diffstat (limited to 'embed/ephy-embed-utils.c')
-rw-r--r--embed/ephy-embed-utils.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/embed/ephy-embed-utils.c b/embed/ephy-embed-utils.c
index 4d5077708..8672ea5fa 100644
--- a/embed/ephy-embed-utils.c
+++ b/embed/ephy-embed-utils.c
@@ -32,6 +32,7 @@
#include <string.h>
#include <glib/gi18n.h>
#include <libsoup/soup.h>
+#include <JavaScriptCore/JavaScript.h>
static GRegex *non_search_regex;
static GRegex *domain_regex;
@@ -324,6 +325,27 @@ ephy_embed_utils_urls_have_same_origin (const char *a_url,
return retval;
}
+char *
+ephy_embed_utils_get_js_result_as_string (WebKitJavascriptResult *js_result)
+{
+ JSValueRef js_value;
+ JSStringRef js_string;
+ size_t max_size;
+ char *retval = NULL;
+
+ js_value = webkit_javascript_result_get_value (js_result);
+ js_string = JSValueToStringCopy (webkit_javascript_result_get_global_context (js_result),
+ js_value, NULL);
+ max_size = JSStringGetMaximumUTF8CStringSize (js_string);
+ if (max_size) {
+ retval = g_malloc (max_size);
+ JSStringGetUTF8CString (js_string, retval, max_size);
+ }
+ JSStringRelease (js_string);
+
+ return retval;
+}
+
void
ephy_embed_utils_shutdown (void)
{