[evolution-rss] use feature SOUP_TYPE_PROXY_RESOLVER_GNOME if



commit fd35fe8a24c7c4b573ef96de1a128b9092853e38
Author: Lucian Langa <lucilanga gnome org>
Date:   Fri May 8 12:00:56 2009 +0300

    use feature SOUP_TYPE_PROXY_RESOLVER_GNOME if
    using system proxy
---
 ChangeLog          |    6 ++++++
 configure.ac       |    1 +
 src/network-soup.c |   21 +++++++++++++++------
 3 files changed, 22 insertions(+), 6 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index ea1ced1..66619dd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2009-05-08  Lucian Langa  <lucilanga gnome org>
+
+	* configure.ac: add libsoup-gnome as a dependency
+	* src/network-soup.c: use feature SOUP_TYPE_PROXY_RESOLVER_GNOME if
+	using system proxy
+
 2009-05-07  Lucian Langa  <lucilanga gnome org>
 
 	* src/dbus.c (filter_function):
diff --git a/configure.ac b/configure.ac
index a5a401b..675a2e9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -61,6 +61,7 @@ PKG_CHECK_MODULES(EVOLUTION_RSS_EPLUGIN,
    libgnomeui-2.0 >= $LIBGNOMEUI_REQUIRED dnl
    gtk+-2.0 >= $LIBGTK_REQUIRED dnl
    libsoup$SOUP >= $LIBSOUP_REQUIRED dnl
+   libsoup-gnome$SOUP >= $LIBSOUP_REQUIRED dnl
    evolution-plugin$EVOLUTION_BASE_VERSION_S >= $EVOLUTION_REQUIRED dnl
    evolution-shell$EVOLUTION_BASE_VERSION_S >= $EVOLUTION_REQUIRED dnl
    libglade-2.0 dnl
diff --git a/src/network-soup.c b/src/network-soup.c
index 74bdcf7..ceee1c3 100644
--- a/src/network-soup.c
+++ b/src/network-soup.c
@@ -24,6 +24,7 @@
 
 #include <string.h>
 #include <gconf/gconf-client.h>
+#include <libsoup/soup-gnome.h>
 #include <libedataserver/e-proxy.h>
 
 #include "network.h"
@@ -206,15 +207,23 @@ proxify_webkit_session(EProxy *proxy, gchar *uri)
 void
 proxify_session(EProxy *proxy, SoupSession *session, gchar *uri)
 {
+	gint ptype = gconf_client_get_int (rss_gconf, KEY_GCONF_EVO_PROXY_TYPE, NULL);
+
 	SoupURI *proxy_uri = NULL;
 
-	if (e_proxy_require_proxy_for_uri (proxy, uri)) {
-		proxy_uri = e_proxy_peek_uri_for (proxy, uri);
-		g_print("proxified %s with %s:%d\n", uri, proxy_uri->host, proxy_uri->port);
-	} else 
-		g_print("no PROXY-%s\n", uri);
+	if (ptype == 2) {
+		if (e_proxy_require_proxy_for_uri (proxy, uri)) {
+			proxy_uri = e_proxy_peek_uri_for (proxy, uri);
+			g_print("proxified %s with %s:%d\n", uri, proxy_uri->host, proxy_uri->port);
+		} else 
+			g_print("no PROXY-%s\n", uri);
+		g_object_set (G_OBJECT (session), SOUP_SESSION_PROXY_URI, proxy_uri, NULL);
+	}
+
+	/*avail only for > 2.26*/
+	if (ptype == 1)
+		soup_session_add_feature_by_type (session, SOUP_TYPE_PROXY_RESOLVER_GNOME);
 
-	g_object_set (G_OBJECT (session), SOUP_SESSION_PROXY_URI, proxy_uri, NULL);
 }
 
 guint



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]