From 82a5da33bdcd8673cbf48de1159ae4f65fec8f64 Mon Sep 17 00:00:00 2001 From: Xan Lopez Date: Wed, 2 Dec 2009 21:39:47 +0200 Subject: ephy-embed: reimplent EphyEmbedSingle 'handle-content' signal This is used by external download managers like gwget. --- embed/ephy-embed.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'embed') diff --git a/embed/ephy-embed.c b/embed/ephy-embed.c index b49ab0fc6..16f9ded00 100644 --- a/embed/ephy-embed.c +++ b/embed/ephy-embed.c @@ -393,7 +393,19 @@ mime_type_policy_decision_requested_cb (WebKitWebView *web_view, process */ /* FIXME: need to use ephy_file_check_mime if auto-downloading */ if (!webkit_web_view_can_show_mime_type (web_view, mime_type)) { - webkit_web_policy_decision_download (decision); + GObject *single; + const char *uri; + gboolean handled = FALSE; + + single = ephy_embed_shell_get_embed_single (embed_shell); + uri = webkit_network_request_get_uri (request); + g_signal_emit_by_name (single, "handle-content", mime_type, uri, &handled); + + if (handled) + webkit_web_policy_decision_ignore (decision); + else + webkit_web_policy_decision_download (decision); + return TRUE; } -- cgit v1.2.3