diff --git a/bnc-188523-evo-fix-authenticated-proxy-support.diff b/bnc-188523-evo-fix-authenticated-proxy-support.diff
new file mode 100644
index 0000000..89cfbfa
--- /dev/null
+++ b/bnc-188523-evo-fix-authenticated-proxy-support.diff
@@ -0,0 +1,1773 @@
+Index: shell/apps_evolution_shell.schemas.in
+===================================================================
+--- shell/apps_evolution_shell.schemas.in (revision 35239)
++++ shell/apps_evolution_shell.schemas.in (revision 35240)
+@@ -241,5 +241,152 @@
+ A string description of the current printer settings.
+
+
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/proxy_type
++ /apps/evolution/shell/network_config/proxy_type
++ evolution
++ int
++
++ Proxy configuration mode
++ Select the proxy configuration mode. Supported values are 0, 1, 2, and 3 representing "use system settings", "no proxy", "use manual proxy configuration" and "use proxy configuration provided in the autoconfig url" respectively.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/http_port
++ /apps/evolution/shell/network_config/http_port
++ evolution
++ int
++
++ HTTP proxy port
++ The port on the machine defined by "/apps/evolution/shell/network_config/http_host" that you proxy through.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/http_host
++ /apps/evolution/shell/network_config/http_host
++ evolution
++ string
++
++ HTTP proxy host name
++ The machine name to proxy HTTP through.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/secure_port
++ /apps/evolution/shell/network_config/secure_port
++ evolution
++ int
++
++ Secure HTTP proxy port
++ The port on the machine defined by "/apps/evolution/shell/network_config/secure_host" that you proxy through.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/secure_host
++ /apps/evolution/shell/network_config/secure_host
++ evolution
++ string
++
++ Secure HTTP proxy host name
++ The machine name to proxy secure HTTP through.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/socks_port
++ /apps/evolution/shell/network_config/socks_port
++ evolution
++ int
++
++ SOCKS proxy port
++ The port on the machine defined by "/apps/evolution/shell/network_config/socks_host" that you proxy through.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/socks_host
++ /apps/evolution/shell/network_config/socks_host
++ evolution
++ string
++
++ SOCKS proxy host name
++ The machine name to proxy socks through.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/use_http_proxy
++ /apps/evolution/shell/network_config/use_http_proxy
++ evolution
++ bool
++
++ Use HTTP proxy
++ Enables the proxy settings when accessing HTTP/Secure HTTP over the Internet.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/use_authentication
++ /apps/evolution/shell/network_config/use_authentication
++ evolution
++ bool
++
++ Authenticate proxy server connections
++ If true, then connections to the proxy server require authentication. The username/password combo is defined by "/apps/evolution/shell/network_config/authentication_user" and locally stored password in .gnome2_private/.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/authentication_user
++ /apps/evolution/shell/network_config/authentication_user
++ evolution
++ string
++
++ HTTP proxy username
++ User name to pass as authentication when doing HTTP proxying.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/authentication_password
++ /apps/evolution/shell/network_config/authentication_password
++ evolution
++ string
++
++ HTTP proxy password
++ Password to pass as authentication when doing HTTP proxying.
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/ignore_hosts
++ /apps/evolution/shell/network_config/ignore_hosts
++ evolution
++ list
++ string
++
++ Non-proxy hosts
++ This key contains a list of hosts which are connected to directly, rather than via the proxy (if it is active). The values can be hostnames, domains (using an initial wildcard like *.foo.com), IP host addresses (both IPv4 and IPv6) and network addresses with a netmask (something like 192.168.0.0/24).
++
++
++
++
++ /schemas/apps/evolution/shell/network_config/autoconfig_url
++ /apps/evolution/shell/network_config/autoconfig_url
++ evolution
++ string
++
++ Automatic proxy configuration URL
++ URL that provides proxy configuration values.
++
++
++
+
+
+Index: mail/em-network-prefs.c
+===================================================================
+--- mail/em-network-prefs.c (revision 0)
++++ mail/em-network-prefs.c (revision 35240)
+@@ -0,0 +1,588 @@
++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
++/*
++ * Authors: Veerapuram Varadhan
++ *
++ * Copyright 2007 Novell, Inc. (www.novell.com)
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA.
++ *
++ */
++
++#ifdef HAVE_CONFIG_H
++#include
++#endif
++
++#include
++#include
++#include
++#include
++#include
++
++#include "em-network-prefs.h"
++
++#include
++
++#include
++#include
++#include
++
++#include
++#include
++#include
++#include
++#include
++
++#include
++#include
++
++#include "e-util/e-error.h"
++#include "e-util/e-util-private.h"
++#include "e-util/e-icon-factory.h"
++
++#include "mail-config.h"
++#include "em-config.h"
++
++#define d(x)
++
++#define GCONF_E_SHELL_NETWORK_CONFIG_PATH "/apps/evolution/shell/network_config/"
++#define GCONF_E_HTTP_HOST_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "http_host"
++#define GCONF_E_HTTP_PORT_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "http_port"
++#define GCONF_E_HTTPS_HOST_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "secure_host"
++#define GCONF_E_HTTPS_PORT_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "secure_port"
++#define GCONF_E_SOCKS_HOST_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "socks_host"
++#define GCONF_E_SOCKS_PORT_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "socks_port"
++#define GCONF_E_IGNORE_HOSTS_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "ignore_hosts"
++#define GCONF_E_USE_AUTH_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "use_authentication"
++#define GCONF_E_PROXY_TYPE_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "proxy_type"
++#define GCONF_E_AUTH_USER_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "authentication_user"
++#define GCONF_E_AUTH_PWD_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "authentication_password"
++#define GCONF_E_USE_PROXY_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "use_http_proxy"
++#define GCONF_E_AUTOCONFIG_URL_KEY GCONF_E_SHELL_NETWORK_CONFIG_PATH "autoconfig_url"
++
++#define GCONF_SYS_PROXY_PATH "/system/proxy/"
++#define GCONF_SYS_HTTP_PROXY_PATH "/system/http_proxy"
++#define GCONF_SYS_HTTP_HOST_KEY GCONF_SYS_HTTP_PROXY_PATH "host"
++#define GCONF_SYS_HTTP_PORT_KEY GCONF_SYS_HTTP_PROXY_PATH "port"
++#define GCONF_SYS_HTTPS_HOST_KEY GCONF_SYS_PROXY_PATH "secure_host"
++#define GCONF_SYS_HTTPS_PORT_KEY GCONF_SYS_PROXY_PATH "secure_port"
++#define GCONF_SYS_SOCKS_HOST_KEY GCONF_SYS_PROXY_PATH "socks_host"
++#define GCONF_SYS_SOCKS_PORT_KEY GCONF_SYS_PROXY_PATH "socks_port"
++#define GCONF_SYS_AUTOCONFIG_URL_KEY GCONF_SYS_PROXY_PATH "autoconfig_url"
++#define GCONF_SYS_IGNORE_HOSTS_KEY GCONF_SYS_HTTP_PROXY_PATH "ignore_hosts"
++#define GCONF_SYS_USE_PROXY_KEY GCONF_SYS_HTTP_PROXY_PATH "use_http_proxy"
++#define GCONF_SYS_USE_AUTH_KEY GCONF_SYS_HTTP_PROXY_PATH "use_authentication"
++#define GCONF_SYS_AUTH_USER_KEY GCONF_SYS_HTTP_PROXY_PATH "authentication_user"
++#define GCONF_SYS_AUTH_PWD_KEY GCONF_SYS_HTTP_PROXY_PATH "authentication_password"
++
++static void em_network_prefs_class_init (EMNetworkPrefsClass *class);
++static void em_network_prefs_init (EMNetworkPrefs *dialog);
++static void em_network_prefs_destroy (GtkObject *obj);
++static void em_network_prefs_finalise (GObject *obj);
++
++
++static GtkVBoxClass *parent_class = NULL;
++
++
++GType
++em_network_prefs_get_type (void)
++{
++ static GType type = 0;
++
++ if (!type) {
++ static const GTypeInfo info = {
++ sizeof (EMNetworkPrefsClass),
++ NULL, NULL,
++ (GClassInitFunc) em_network_prefs_class_init,
++ NULL, NULL,
++ sizeof (EMNetworkPrefs),
++ 0,
++ (GInstanceInitFunc) em_network_prefs_init,
++ };
++
++ type = g_type_register_static (gtk_vbox_get_type (), "EMNetworkPrefs", &info, 0);
++ }
++
++ return type;
++}
++
++static void
++em_network_prefs_class_init (EMNetworkPrefsClass *klass)
++{
++ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
++ GtkObjectClass *object_class = GTK_OBJECT_CLASS (klass);
++
++ parent_class = g_type_class_ref (gtk_vbox_get_type ());
++
++ object_class->destroy = em_network_prefs_destroy;
++ gobject_class->finalize = em_network_prefs_finalise;
++}
++
++static void
++em_network_prefs_init (EMNetworkPrefs *prefs)
++{
++ /* do something here */
++}
++
++static void
++em_network_prefs_finalise (GObject *obj)
++{
++ EMNetworkPrefs *prefs = (EMNetworkPrefs *) obj;
++
++ d(g_print ("Network preferences finalize is called\n"));
++
++ /* do something here */
++ G_OBJECT_CLASS (parent_class)->finalize (obj);
++}
++
++static void
++em_network_prefs_destroy (GtkObject *obj)
++{
++ EMNetworkPrefs *prefs = (EMNetworkPrefs *) obj;
++ d(g_print ("Network preferences destroy is called\n"));
++
++ GTK_OBJECT_CLASS (parent_class)->destroy (obj);
++}
++
++static void
++toggle_button_toggled (GtkToggleButton *toggle, EMNetworkPrefs *prefs)
++{
++ const char *key;
++
++ key = g_object_get_data ((GObject *) toggle, "key");
++ gconf_client_set_bool (prefs->gconf, key, gtk_toggle_button_get_active (toggle), NULL);
++ if (toggle == prefs->use_auth) {
++ gboolean sensitivity = gtk_toggle_button_get_active (prefs->use_auth);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_auth_user, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_auth_pwd, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->auth_user, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->auth_pwd, sensitivity);
++ }
++}
++
++static void
++toggle_button_init (EMNetworkPrefs *prefs, GtkToggleButton *toggle, const char *key)
++{
++ gboolean bool;
++
++ bool = gconf_client_get_bool (prefs->gconf, key, NULL);
++ gtk_toggle_button_set_active (toggle, bool);
++
++ g_object_set_data ((GObject *) toggle, "key", (void *) key);
++ g_signal_connect (toggle, "toggled", G_CALLBACK (toggle_button_toggled), prefs);
++
++ if (!gconf_client_key_is_writable (prefs->gconf, key, NULL))
++ gtk_widget_set_sensitive ((GtkWidget *) toggle, FALSE);
++}
++
++static GtkWidget *
++emnp_widget_glade(EConfig *ec, EConfigItem *item, struct _GtkWidget *parent, struct _GtkWidget *old, void *data)
++{
++ EMNetworkPrefs *prefs = data;
++
++ return glade_xml_get_widget(prefs->gui, item->label);
++}
++
++static void
++emnp_set_sensitiveness (EMNetworkPrefs *prefs, NetworkConfigProxyType type, gboolean sensitivity)
++{
++ if (type == NETWORK_PROXY_AUTOCONFIG) {
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->auto_proxy_url, sensitivity);
++ d(g_print ("Setting sensitivity of autoconfig to: %d\n", sensitivity));
++ } else if (type == NETWORK_PROXY_MANUAL) {
++ gboolean state;
++
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->http_host, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->https_host, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->socks_host, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->ignore_hosts, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->use_auth, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->http_port, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->https_port, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->socks_port, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_ignore_hosts, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_http_host, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_http_port, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_https_host, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_https_port, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_socks_host, sensitivity);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_socks_port, sensitivity);
++
++ state = sensitivity && gtk_toggle_button_get_active (prefs->use_auth);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_auth_user, state);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->lbl_auth_pwd, state);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->auth_user, state);
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->auth_pwd, state);
++
++ d(g_print ("Setting sensitivity of manual proxy to: %d\n", sensitivity));
++ }
++}
++
++static void
++emnp_parse_ignore_hosts (gpointer data, gpointer user_data)
++{
++ char *input = (char *)data;
++ GString *str = (GString *)user_data;
++
++ if (!str)
++ return;
++
++ /* FIXME: Remove trailing , */
++ if (data) {
++ str = g_string_append (str, data);
++ str = g_string_append_c (str, ',');
++ }
++}
++
++static void
++emnp_load_sys_settings (GConfClient *gconf)
++{
++ char *buf;
++ int port;
++ GSList *ignore_hosts;
++ gboolean toggle;
++ GString *str = NULL;
++
++ if (!gconf)
++ return;
++
++ toggle = gconf_client_get_bool (gconf, GCONF_SYS_USE_PROXY_KEY, NULL);
++ if (!toggle) {
++ gconf_client_set_bool (gconf, GCONF_E_USE_PROXY_KEY, toggle, NULL);
++ return;
++ }
++
++ toggle = gconf_client_get_bool (gconf, GCONF_SYS_USE_AUTH_KEY, NULL);
++ gconf_client_set_bool (gconf, GCONF_E_USE_AUTH_KEY, toggle, NULL);
++
++ buf = gconf_client_get_string (gconf, GCONF_SYS_HTTP_HOST_KEY, NULL);
++ gconf_client_set_string (gconf, GCONF_E_HTTP_HOST_KEY, buf, NULL);
++ g_free (buf);
++
++ buf = gconf_client_get_string (gconf, GCONF_SYS_HTTPS_HOST_KEY, NULL);
++ gconf_client_set_string (gconf, GCONF_E_HTTPS_HOST_KEY, buf, NULL);
++ g_free (buf);
++
++ buf = gconf_client_get_string (gconf, GCONF_SYS_SOCKS_HOST_KEY, NULL);
++ gconf_client_set_string (gconf, GCONF_E_SOCKS_HOST_KEY, buf, NULL);
++ g_free (buf);
++
++ buf = gconf_client_get_string (gconf, GCONF_SYS_AUTOCONFIG_URL_KEY, NULL);
++ gconf_client_set_string (gconf, GCONF_E_AUTOCONFIG_URL_KEY, buf, NULL);
++ g_free (buf);
++
++ buf = gconf_client_get_string (gconf, GCONF_SYS_AUTH_USER_KEY, NULL);
++ gconf_client_set_string (gconf, GCONF_E_AUTH_USER_KEY, buf, NULL);
++ g_free (buf);
++
++ buf = gconf_client_get_string (gconf, GCONF_SYS_AUTH_PWD_KEY, NULL);
++ gconf_client_set_string (gconf, GCONF_E_AUTH_PWD_KEY, buf, NULL);
++ g_free (buf);
++
++ port = gconf_client_get_int (gconf, GCONF_SYS_HTTP_PORT_KEY, NULL);
++ gconf_client_set_int (gconf, GCONF_E_HTTP_PORT_KEY, port, NULL);
++
++ port = gconf_client_get_int (gconf, GCONF_SYS_HTTPS_PORT_KEY, NULL);
++ gconf_client_set_int (gconf, GCONF_E_HTTPS_PORT_KEY, port, NULL);
++
++ port = gconf_client_get_int (gconf, GCONF_SYS_SOCKS_PORT_KEY, NULL);
++ gconf_client_set_int (gconf, GCONF_E_SOCKS_PORT_KEY, port, NULL);
++
++ ignore_hosts = gconf_client_get_list (gconf, GCONF_SYS_IGNORE_HOSTS_KEY,
++ GCONF_VALUE_STRING, NULL);
++ if (ignore_hosts) {
++ str = g_string_sized_new (32);
++ g_slist_foreach (ignore_hosts, (GFunc) emnp_parse_ignore_hosts, str);
++ g_slist_foreach (ignore_hosts, (GFunc) g_free, NULL);
++ g_slist_free (ignore_hosts);
++
++ gconf_client_set_string (gconf, GCONF_E_IGNORE_HOSTS_KEY,
++ str->str, NULL);
++ g_string_free (str, TRUE);
++ }
++}
++
++static void
++notify_proxy_type_changed (GtkWidget *widget, EMNetworkPrefs *prefs)
++{
++ int type;
++
++ if (gtk_toggle_button_get_active (prefs->sys_proxy))
++ type = NETWORK_PROXY_SYS_SETTINGS;
++ else if (gtk_toggle_button_get_active (prefs->no_proxy))
++ type = NETWORK_PROXY_DIRECT_CONNECTION;
++ else if (gtk_toggle_button_get_active (prefs->manual_proxy))
++ type = NETWORK_PROXY_MANUAL;
++ else
++ type = NETWORK_PROXY_AUTOCONFIG;
++
++ gconf_client_set_int (prefs->gconf, "/apps/evolution/shell/network_config/proxy_type", type, NULL);
++
++ if (type == NETWORK_PROXY_DIRECT_CONNECTION ||
++ type == NETWORK_PROXY_SYS_SETTINGS) {
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_MANUAL, FALSE);
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_AUTOCONFIG, FALSE);
++ if (type == NETWORK_PROXY_SYS_SETTINGS) {
++ d(g_print ("%s:%s:%d: Loading sys settings... \n",
++ __FILE__, __PRETTY_FUNCTION__, __LINE__));
++ emnp_load_sys_settings (prefs->gconf);
++ }
++
++ } else if (type == NETWORK_PROXY_AUTOCONFIG) {
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_MANUAL, FALSE);
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_AUTOCONFIG, TRUE);
++ } else if (type == NETWORK_PROXY_MANUAL) {
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_AUTOCONFIG, FALSE);
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_MANUAL, TRUE);
++ }
++
++ if (type != NETWORK_PROXY_DIRECT_CONNECTION)
++ gconf_client_set_bool (prefs->gconf, GCONF_E_USE_PROXY_KEY, TRUE, NULL);
++ else if (type != NETWORK_PROXY_SYS_SETTINGS)
++ gconf_client_set_bool (prefs->gconf, GCONF_E_USE_PROXY_KEY, FALSE, NULL);
++
++}
++
++static void
++widget_entry_changed_cb (GtkWidget *widget, gpointer data)
++{
++ const char *value;
++ int port = -1;
++ GConfClient *gconf = mail_config_get_gconf_client ();
++
++ /*
++ Do not change the order of comparison -
++ GtkSpinButton is an extended form of GtkEntry
++ */
++ if (GTK_IS_SPIN_BUTTON (widget)) {
++ port = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON (widget));
++ gconf_client_set_int (gconf, (const char *)data, port, NULL);
++ d(g_print ("%s:%s:%d: %s is SpinButton: value = [%d]\n", __FILE__, __PRETTY_FUNCTION__, __LINE__, (const char *)data, port));
++ } else if (GTK_IS_ENTRY (widget)) {
++ value = gtk_entry_get_text (GTK_ENTRY (widget));
++ gconf_client_set_string (gconf, (const char *)data, value, NULL);
++ d(g_print ("%s:%s:%d: %s is Entry: value = [%s]\n", __FILE__, __PRETTY_FUNCTION__, __LINE__, (const char *)data, value));
++ }
++
++}
++
++/* plugin meta-data */
++static EMConfigItem emnp_items[] = {
++ { E_CONFIG_BOOK, "", "network_preferences_toplevel", emnp_widget_glade },
++ { E_CONFIG_PAGE, "00.general", "vboxGeneral", emnp_widget_glade },
++ { E_CONFIG_SECTION, "00.general/00.proxy", "frameProxy", emnp_widget_glade },
++};
++
++static void
++emnp_free(EConfig *ec, GSList *items, void *data)
++{
++ /* the prefs data is freed automagically */
++
++ g_slist_free(items);
++}
++
++static void
++emnp_set_markups (EMNetworkPrefs *prefs)
++{
++ gtk_label_set_use_markup (GTK_LABEL (GTK_BIN(prefs->sys_proxy)->child), TRUE);
++ gtk_label_set_use_markup (GTK_LABEL (GTK_BIN(prefs->no_proxy)->child), TRUE);
++ gtk_label_set_use_markup (GTK_LABEL (GTK_BIN(prefs->manual_proxy)->child), TRUE);
++ gtk_label_set_use_markup (GTK_LABEL (GTK_BIN(prefs->auto_proxy)->child), TRUE);
++}
++
++static void
++em_network_prefs_construct (EMNetworkPrefs *prefs)
++{
++ GtkWidget *toplevel;
++ GladeXML *gui;
++ GSList* l;
++ char *buf;
++ EMConfig *ec;
++ EMConfigTargetPrefs *target;
++ gboolean locked;
++ int i, val, port;
++ char *gladefile;
++
++ prefs->gconf = mail_config_get_gconf_client ();
++
++ gladefile = g_build_filename (EVOLUTION_GLADEDIR,
++ "mail-config.glade",
++ NULL);
++ gui = glade_xml_new (gladefile, "network_preferences_toplevel", NULL);
++ prefs->gui = gui;
++ g_free (gladefile);
++
++ /** @HookPoint-EMConfig: Network Preferences
++ * @Id: org.gnome.evolution.mail.networkPrefs
++ * @Type: E_CONFIG_BOOK
++ * @Class: org.gnome.evolution.mail.config:1.0
++ * @Target: EMConfigTargetPrefs
++ *
++ * The network preferences settings page.
++ */
++ ec = em_config_new(E_CONFIG_BOOK, "org.gnome.evolution.mail.networkPrefs");
++ l = NULL;
++ for (i=0;igconf, GCONF_E_PROXY_TYPE_KEY, NULL);
++
++ val = gconf_client_get_int (prefs->gconf, GCONF_E_PROXY_TYPE_KEY, NULL);
++ prefs->sys_proxy = GTK_TOGGLE_BUTTON (glade_xml_get_widget (gui, "rdoSysSettings"));
++ gtk_toggle_button_set_active (prefs->sys_proxy, val == NETWORK_PROXY_SYS_SETTINGS);
++ g_signal_connect (prefs->sys_proxy, "toggled", G_CALLBACK (notify_proxy_type_changed), prefs);
++ if (locked)
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->sys_proxy, FALSE);
++
++ d(g_print ("Sys settings ----!!! \n"));
++
++ prefs->no_proxy = GTK_TOGGLE_BUTTON (glade_xml_get_widget (gui, "rdoNoProxy"));
++ gtk_toggle_button_set_active (prefs->no_proxy, val == NETWORK_PROXY_DIRECT_CONNECTION);
++ g_signal_connect (prefs->no_proxy, "toggled", G_CALLBACK (notify_proxy_type_changed), prefs);
++ if (locked)
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->no_proxy, FALSE);
++
++ d(g_print ("No proxy settings ----!!! \n"));
++
++ prefs->auto_proxy = GTK_TOGGLE_BUTTON (glade_xml_get_widget (gui, "rdoAutoConfig"));
++ prefs->auto_proxy_url = GTK_ENTRY (glade_xml_get_widget (gui, "txtAutoConfigUrl"));
++ gtk_toggle_button_set_active (prefs->auto_proxy, val == NETWORK_PROXY_AUTOCONFIG);
++
++ g_signal_connect (prefs->auto_proxy, "toggled", G_CALLBACK (notify_proxy_type_changed), prefs);
++ g_signal_connect(prefs->auto_proxy_url, "changed", G_CALLBACK(widget_entry_changed_cb), GCONF_E_AUTOCONFIG_URL_KEY);
++
++ if (locked)
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->auto_proxy, FALSE);
++
++ d(g_print ("Auto config settings ----!!! \n"));
++
++ prefs->manual_proxy = GTK_TOGGLE_BUTTON (glade_xml_get_widget (gui, "rdoManualProxy"));
++ prefs->http_host = GTK_ENTRY (glade_xml_get_widget (gui, "txtHttpHost"));
++ prefs->https_host = GTK_ENTRY (glade_xml_get_widget (gui, "txtHttpsHost"));
++ prefs->socks_host = GTK_ENTRY (glade_xml_get_widget (gui, "txtSocksHost"));
++ prefs->ignore_hosts = GTK_ENTRY (glade_xml_get_widget (gui, "txtIgnoreHosts"));
++ prefs->http_port = GTK_SPIN_BUTTON (glade_xml_get_widget (gui, "spnHttpPort"));
++ prefs->https_port = GTK_SPIN_BUTTON (glade_xml_get_widget (gui, "spnHttpsPort"));
++ prefs->socks_port = GTK_SPIN_BUTTON (glade_xml_get_widget (gui, "spnSocksPort"));
++ prefs->lbl_http_host = GTK_LABEL (glade_xml_get_widget (gui, "lblHttpHost"));
++ prefs->lbl_http_port = GTK_LABEL (glade_xml_get_widget (gui, "lblHttpPort"));
++ prefs->lbl_https_host = GTK_LABEL (glade_xml_get_widget (gui, "lblHttpsHost"));
++ prefs->lbl_https_port = GTK_LABEL (glade_xml_get_widget (gui, "lblHttpsPort"));
++ prefs->lbl_socks_host = GTK_LABEL (glade_xml_get_widget (gui, "lblSocksHost"));
++ prefs->lbl_socks_port = GTK_LABEL (glade_xml_get_widget (gui, "lblSocksPort"));
++ prefs->lbl_ignore_hosts = GTK_LABEL (glade_xml_get_widget (gui, "lblIgnoreHosts"));
++ prefs->use_auth = GTK_TOGGLE_BUTTON (glade_xml_get_widget (gui, "chkUseAuth"));
++ toggle_button_init (prefs, prefs->use_auth, GCONF_E_USE_AUTH_KEY);
++ prefs->lbl_auth_user = GTK_LABEL (glade_xml_get_widget (gui, "lblAuthUser"));
++ prefs->lbl_auth_pwd = GTK_LABEL (glade_xml_get_widget (gui, "lblAuthPwd"));
++ prefs->auth_user = GTK_ENTRY (glade_xml_get_widget (gui, "txtAuthUser"));
++ prefs->auth_pwd = GTK_ENTRY (glade_xml_get_widget (gui, "txtAuthPwd"));
++
++ /* Manual proxy options */
++ g_signal_connect (prefs->http_host, "changed",
++ G_CALLBACK(widget_entry_changed_cb), GCONF_E_HTTP_HOST_KEY);
++ g_signal_connect (prefs->https_host, "changed",
++ G_CALLBACK(widget_entry_changed_cb), GCONF_E_HTTPS_HOST_KEY);
++ g_signal_connect (prefs->socks_host, "changed",
++ G_CALLBACK(widget_entry_changed_cb), GCONF_E_SOCKS_HOST_KEY);
++ g_signal_connect (prefs->ignore_hosts, "changed",
++ G_CALLBACK(widget_entry_changed_cb), GCONF_E_IGNORE_HOSTS_KEY);
++ g_signal_connect (prefs->http_port, "value_changed",
++ G_CALLBACK(widget_entry_changed_cb), GCONF_E_HTTP_PORT_KEY);
++ g_signal_connect (prefs->https_port, "value_changed",
++ G_CALLBACK(widget_entry_changed_cb), GCONF_E_HTTPS_PORT_KEY);
++ g_signal_connect (prefs->socks_port, "value_changed",
++ G_CALLBACK(widget_entry_changed_cb), GCONF_E_SOCKS_PORT_KEY);
++ g_signal_connect (prefs->auth_user, "changed",
++ G_CALLBACK(widget_entry_changed_cb), GCONF_E_AUTH_USER_KEY);
++ g_signal_connect (prefs->auth_pwd, "changed",
++ G_CALLBACK(widget_entry_changed_cb), GCONF_E_AUTH_PWD_KEY);
++
++ gtk_toggle_button_set_active (prefs->manual_proxy, val == NETWORK_PROXY_MANUAL);
++ g_signal_connect (prefs->manual_proxy, "toggled", G_CALLBACK (notify_proxy_type_changed), prefs);
++
++ if (locked)
++ gtk_widget_set_sensitive ((GtkWidget *) prefs->manual_proxy, FALSE);
++ d(g_print ("Manual settings ----!!! \n"));
++
++ buf = gconf_client_get_string (prefs->gconf, GCONF_E_HTTP_HOST_KEY, NULL);
++ gtk_entry_set_text (prefs->http_host, buf ? buf : "");
++ g_free (buf);
++
++ buf = gconf_client_get_string (prefs->gconf, GCONF_E_HTTPS_HOST_KEY, NULL);
++ gtk_entry_set_text (prefs->https_host, buf ? buf : "");
++ g_free (buf);
++
++ buf = gconf_client_get_string (prefs->gconf, GCONF_E_SOCKS_HOST_KEY, NULL);
++ gtk_entry_set_text (prefs->socks_host, buf ? buf : "");
++ g_free (buf);
++
++ buf = gconf_client_get_string (prefs->gconf, GCONF_E_IGNORE_HOSTS_KEY, NULL);
++ gtk_entry_set_text (prefs->ignore_hosts, buf ? buf : "");
++ g_free (buf);
++
++ buf = gconf_client_get_string (prefs->gconf, GCONF_E_AUTH_USER_KEY, NULL);
++ gtk_entry_set_text (prefs->auth_user, buf ? buf : "");
++ g_free (buf);
++
++ buf = gconf_client_get_string (prefs->gconf, GCONF_E_AUTH_PWD_KEY, NULL);
++ gtk_entry_set_text (prefs->auth_pwd, buf ? buf : "");
++ g_free (buf);
++
++ port = gconf_client_get_int (prefs->gconf, GCONF_E_HTTP_PORT_KEY, NULL);
++ gtk_spin_button_set_value (prefs->http_port, (gdouble)port);
++
++ port = gconf_client_get_int (prefs->gconf, GCONF_E_HTTPS_PORT_KEY, NULL);
++ gtk_spin_button_set_value (prefs->https_port, (gdouble)port);
++
++ port = gconf_client_get_int (prefs->gconf, GCONF_E_SOCKS_PORT_KEY, NULL);
++ gtk_spin_button_set_value (prefs->socks_port, (gdouble)port);
++
++ emnp_set_markups (prefs);
++
++ if (val == NETWORK_PROXY_DIRECT_CONNECTION ||
++ val == NETWORK_PROXY_SYS_SETTINGS) {
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_MANUAL, FALSE);
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_AUTOCONFIG, FALSE);
++ if (val == NETWORK_PROXY_SYS_SETTINGS)
++ emnp_load_sys_settings (prefs->gconf);
++ } else if (val == NETWORK_PROXY_AUTOCONFIG) {
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_MANUAL, FALSE);
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_AUTOCONFIG, TRUE);
++ } else if (val == NETWORK_PROXY_MANUAL) {
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_AUTOCONFIG, FALSE);
++ emnp_set_sensitiveness (prefs, NETWORK_PROXY_MANUAL, TRUE);
++ }
++
++ /* get our toplevel widget */
++ target = em_config_target_new_prefs(ec, prefs->gconf);
++ e_config_set_target((EConfig *)ec, (EConfigTarget *)target);
++ toplevel = e_config_create_widget((EConfig *)ec);
++ gtk_container_add (GTK_CONTAINER (prefs), toplevel);
++}
++
++GtkWidget *
++em_network_prefs_new (void)
++{
++ EMNetworkPrefs *new;
++
++ new = (EMNetworkPrefs *) g_object_new (em_network_prefs_get_type (), NULL);
++ em_network_prefs_construct (new);
++
++ return (GtkWidget *) new;
++}
+Index: mail/GNOME_Evolution_Mail.server.in.in
+===================================================================
+--- mail/GNOME_Evolution_Mail.server.in.in (revision 35239)
++++ mail/GNOME_Evolution_Mail.server.in.in (revision 35240)
+@@ -161,6 +161,30 @@
+
+
+
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
++
+
+
+
+Index: mail/em-network-prefs.h
+===================================================================
+--- mail/em-network-prefs.h (revision 0)
++++ mail/em-network-prefs.h (revision 35240)
+@@ -0,0 +1,112 @@
++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*- */
++/*
++ * Authors: Veerapuram Varadhan
++ *
++ * Copyright 2007 Novell, Inc. (www.novell.com)
++ *
++ * This program is free software; you can redistribute it and/or modify
++ * it under the terms of the GNU General Public License as published by
++ * the Free Software Foundation; either version 2 of the License, or
++ * (at your option) any later version.
++ *
++ * This program is distributed in the hope that it will be useful,
++ * but WITHOUT ANY WARRANTY; without even the implied warranty of
++ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ * GNU General Public License for more details.
++ *
++ * You should have received a copy of the GNU General Public License
++ * along with this program; if not, write to the Free Software
++ * Foundation, Inc., 59 Temple Street #330, Boston, MA 02111-1307, USA.
++ *
++ */
++
++
++#ifndef __EM_NETWORK_PREFS_H__
++#define __EM_NETWORK_PREFS_H__
++
++#ifdef __cplusplus
++extern "C" {
++#pragma }
++#endif /* __cplusplus */
++
++#include
++#include
++
++#define EM_NETWORK_PREFS_TYPE (em_network_prefs_get_type ())
++#define EM_NETWORK_PREFS(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), EM_NETWORK_PREFS_TYPE, EMNetworkPrefs))
++#define EM_NETWORK_PREFS_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), EM_NETWORK_PREFS_TYPE, EMNetworkPrefsClass))
++#define EM_IS_NETWORK_PREFS(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), EM_NETWORK_PREFS_TYPE))
++#define EM_IS_NETWORK_PREFS_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), EM_NETWORK_PREFS_TYPE))
++
++typedef struct _EMNetworkPrefs EMNetworkPrefs;
++typedef struct _EMNetworkPrefsClass EMNetworkPrefsClass;
++
++struct _GtkToggleButton;
++struct _GtkEntry;
++struct _GladeXML;
++struct _GConfClient;
++
++typedef enum {
++ NETWORK_PROXY_SYS_SETTINGS,
++ NETWORK_PROXY_DIRECT_CONNECTION,
++ NETWORK_PROXY_MANUAL,
++ NETWORK_PROXY_AUTOCONFIG
++} NetworkConfigProxyType;
++
++
++struct _EMNetworkPrefs {
++ GtkVBox parent_object;
++
++ struct _GConfClient *gconf;
++
++ struct _GladeXML *gui;
++
++ /* Default Behavior */
++ struct _GtkToggleButton *sys_proxy;
++ struct _GtkToggleButton *no_proxy;
++ struct _GtkToggleButton *manual_proxy;
++ struct _GtkToggleButton *auto_proxy;
++ struct _GtkToggleButton *use_auth;
++
++ struct _GtkEntry *http_host;
++ struct _GtkEntry *https_host;
++ struct _GtkEntry *socks_host;
++ struct _GtkEntry *ignore_hosts;
++ struct _GtkEntry *auto_proxy_url;
++ struct _GtkEntry *auth_user;
++ struct _GtkEntry *auth_pwd;
++
++ struct _GtkLabel *lbl_http_host;
++ struct _GtkLabel *lbl_http_port;
++ struct _GtkLabel *lbl_https_host;
++ struct _GtkLabel *lbl_https_port;
++ struct _GtkLabel *lbl_socks_host;
++ struct _GtkLabel *lbl_socks_port;
++ struct _GtkLabel *lbl_ignore_hosts;
++ struct _GtkLabel *lbl_auth_user;
++ struct _GtkLabel *lbl_auth_pwd;
++
++ struct _GtkSpinButton *http_port;
++ struct _GtkSpinButton *https_port;
++ struct _GtkSpinButton *socks_port;
++};
++
++struct _EMNetworkPrefsClass {
++ GtkVBoxClass parent_class;
++
++ /* signals */
++
++};
++
++GType em_network_prefs_get_type (void);
++
++struct _GtkWidget *em_network_prefs_new (void);
++
++/* needed by global config */
++#define EM_NETWORK_PREFS_CONTROL_ID "OAFIID:GNOME_Evolution_Mail_NetworkPrefs_ConfigControl:" BASE_VERSION
++
++#ifdef __cplusplus
++}
++#endif /* __cplusplus */
++
++#endif /* __EM_NETWORK_PREFS_H__ */
+Index: mail/mail-config.glade
+===================================================================
+--- mail/mail-config.glade (revision 35239)
++++ mail/mail-config.glade (revision 35240)
+@@ -550,8 +550,8 @@
+ *
+ False
+
++
+
+-
+
+
+
+@@ -633,8 +633,8 @@
+ *
+ False
+
++
+
+-
+
+
+
+@@ -836,8 +836,8 @@
+ *
+ False
+
++
+
+-
+
+
+
+@@ -890,8 +890,8 @@
+ *
+ False
+
++
+
+-
+
+
+
+@@ -9053,4 +9053,770 @@
+
+
+
++
++ True
++ window1
++ GTK_WINDOW_TOPLEVEL
++ GTK_WIN_POS_NONE
++ False
++ True
++ False
++ True
++ False
++ False
++ GDK_WINDOW_TYPE_HINT_NORMAL
++ GDK_GRAVITY_NORTH_WEST
++ True
++ False
++
++
++
++ True
++ True
++ True
++ True
++ GTK_POS_TOP
++ False
++ False
++
++
++
++ 12
++ True
++ False
++ 18
++
++
++
++ True
++ False
++ 6
++
++
++
++ True
++ <span weight="bold">Proxy Settings</span>
++ False
++ True
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0
++ 0.5
++ 0
++ 0
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ 0
++ True
++ True
++
++
++
++
++
++ 12
++ True
++ False
++ 8
++
++
++
++ True
++ True
++ _Use system defaults
++ True
++ GTK_RELIEF_NORMAL
++ True
++ False
++ False
++ True
++
++
++ 0
++ True
++ True
++
++
++
++
++
++ True
++ True
++ _Direct connection to the Internet
++ True
++ GTK_RELIEF_NORMAL
++ True
++ False
++ False
++ True
++ rdoSysSettings
++
++
++ 0
++ True
++ True
++
++
++
++
++
++ True
++ True
++ _Manual proxy configuration:
++ True
++ GTK_RELIEF_NORMAL
++ True
++ False
++ False
++ True
++ rdoSysSettings
++
++
++ 0
++ True
++ True
++
++
++
++
++
++ True
++ 0.5
++ 0.5
++ 1
++ 1
++ 0
++ 0
++ 24
++ 0
++
++
++
++ True
++ False
++ 6
++
++
++
++ True
++ 4
++ 4
++ False
++ 6
++ 6
++
++
++
++ True
++ H_TTP Proxy:
++ True
++ False
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0
++ 0.5
++ 0
++ 0
++ txtHttpHost
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ 0
++ 1
++ 0
++ 1
++ fill
++
++
++
++
++
++
++ True
++ _Secure HTTP Proxy:
++ True
++ False
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0
++ 0.5
++ 0
++ 0
++ txtHttpsHost
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ 0
++ 1
++ 1
++ 2
++ fill
++
++
++
++
++
++
++ True
++ S_OCKS Host:
++ True
++ False
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0
++ 0.5
++ 0
++ 0
++ txtSocksHost
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ 0
++ 1
++ 2
++ 3
++ fill
++
++
++
++
++
++
++ True
++ No _Proxy for:
++ True
++ False
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0
++ 0.5
++ 0
++ 0
++ txtIgnoreHosts
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ 0
++ 1
++ 3
++ 4
++ fill
++
++
++
++
++
++
++ True
++ True
++ True
++ True
++ 0
++
++ True
++ *
++ False
++
++
++ 1
++ 2
++ 0
++ 1
++
++
++
++
++
++
++ True
++ True
++ True
++ True
++ 0
++
++ True
++ *
++ False
++
++
++ 1
++ 2
++ 1
++ 2
++
++
++
++
++
++
++ True
++ True
++ True
++ True
++ 0
++
++ True
++ *
++ False
++
++
++ 1
++ 2
++ 2
++ 3
++
++
++
++
++
++
++ True
++ Port:
++ False
++ False
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0
++ 0.5
++ 0
++ 0
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ 2
++ 3
++ 0
++ 1
++ fill
++
++
++
++
++
++
++ True
++ Port:
++ False
++ False
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0
++ 0.5
++ 0
++ 0
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ 2
++ 3
++ 1
++ 2
++ fill
++
++
++
++
++
++
++ True
++ Port:
++ False
++ False
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0
++ 0.5
++ 0
++ 0
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ 2
++ 3
++ 2
++ 3
++ fill
++
++
++
++
++
++
++ True
++ True
++ 1
++ 0
++ False
++ GTK_UPDATE_ALWAYS
++ False
++ False
++ 0 0 65535 1 10 10
++
++
++ 3
++ 4
++ 0
++ 1
++
++
++
++
++
++
++ True
++ True
++ 1
++ 0
++ False
++ GTK_UPDATE_ALWAYS
++ False
++ False
++ 0 0 65535 1 10 10
++
++
++ 3
++ 4
++ 1
++ 2
++
++
++
++
++
++
++ True
++ True
++ 1
++ 0
++ False
++ GTK_UPDATE_ALWAYS
++ False
++ False
++ 0 0 65535 1 10 10
++
++
++ 3
++ 4
++ 2
++ 3
++
++
++
++
++
++
++ True
++ True
++ True
++ True
++ 0
++
++ True
++ *
++ False
++
++
++ 1
++ 4
++ 3
++ 4
++
++
++
++
++
++ 0
++ False
++ True
++
++
++
++
++
++ True
++ True
++ Use Authe_ntication
++ True
++ GTK_RELIEF_NORMAL
++ True
++ False
++ False
++ True
++
++
++ 0
++ False
++ True
++
++
++
++
++
++ True
++ 0.5
++ 0.5
++ 1
++ 1
++ 0
++ 0
++ 24
++ 0
++
++
++
++ True
++ 2
++ 2
++ False
++ 3
++ 6
++
++
++
++ True
++ Us_ername:
++ True
++ False
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0
++ 0.5
++ 0
++ 0
++ txtAuthUser
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ 0
++ 1
++ 0
++ 1
++ fill
++
++
++
++
++
++
++ True
++ Pass_word:
++ True
++ False
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0
++ 0.5
++ 0
++ 0
++ txtAuthPwd
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ 0
++ 1
++ 1
++ 2
++ fill
++
++
++
++
++
++
++ True
++ True
++ True
++ True
++ 0
++
++ True
++ *
++ False
++
++
++ 1
++ 2
++ 0
++ 1
++
++
++
++
++
++ True
++ True
++ True
++ False
++ 0
++
++ True
++ *
++ False
++
++
++ 1
++ 2
++ 1
++ 2
++
++
++
++
++
++
++ 0
++ False
++ True
++
++
++
++
++
++
++ 0
++ False
++ True
++
++
++
++
++
++ True
++ True
++ _Automatic proxy configuration URL:
++ True
++ GTK_RELIEF_NORMAL
++ True
++ False
++ False
++ True
++ rdoSysSettings
++
++
++ 0
++ True
++ True
++
++
++
++
++
++ True
++ 0.5
++ 0.5
++ 1
++ 1
++ 0
++ 0
++ 24
++ 0
++
++
++
++ True
++ True
++ True
++ True
++ 0
++
++ True
++ *
++ False
++
++
++
++
++ 0
++ False
++ True
++
++
++
++
++ 0
++ False
++ True
++
++
++
++
++ 0
++ False
++ True
++
++
++
++
++ False
++ True
++
++
++
++
++
++ True
++ General
++ False
++ False
++ GTK_JUSTIFY_LEFT
++ False
++ False
++ 0.5
++ 0.5
++ 0
++ 0
++ PANGO_ELLIPSIZE_NONE
++ -1
++ False
++ 0
++
++
++ tab
++
++
++
++
++
++
+
+Index: mail/Makefile.am
+===================================================================
+--- mail/Makefile.am (revision 35239)
++++ mail/Makefile.am (revision 35240)
+@@ -164,6 +164,8 @@
+ em-message-browser.c \
+ em-migrate.c \
+ em-migrate.h \
++ em-network-prefs.c \
++ em-network-prefs.h \
+ em-popup.c \
+ em-search-context.c \
+ em-search-context.h \
+Index: mail/mail-component-factory.c
+===================================================================
+--- mail/mail-component-factory.c (revision 35239)
++++ mail/mail-component-factory.c (revision 35240)
+@@ -30,6 +30,7 @@
+ #include "em-account-prefs.h"
+ #include "em-mailer-prefs.h"
+ #include "em-composer-prefs.h"
++#include "em-network-prefs.h"
+
+ #include "mail-config-factory.h"
+ #include "mail-config.h"
+@@ -70,7 +71,8 @@
+ return BONOBO_OBJECT (component);
+ } else if (strcmp (component_id, EM_ACCOUNT_PREFS_CONTROL_ID) == 0
+ || strcmp (component_id, EM_MAILER_PREFS_CONTROL_ID) == 0
+- || strcmp (component_id, EM_COMPOSER_PREFS_CONTROL_ID) == 0) {
++ || strcmp (component_id, EM_COMPOSER_PREFS_CONTROL_ID) == 0
++ || strcmp (component_id, EM_NETWORK_PREFS_CONTROL_ID) == 0) {
+ return mail_config_control_factory_cb (factory, component_id, CORBA_OBJECT_NIL);
+ } else if (strcmp(component_id, COMPOSER_ID) == 0) {
+ /* FIXME: how to remove need for callbacks, probably make the composer more tightly integrated with mail */
+Index: mail/mail-config-factory.c
+===================================================================
+--- mail/mail-config-factory.c (revision 35239)
++++ mail/mail-config-factory.c (revision 35240)
+@@ -30,6 +30,7 @@
+ #include "em-account-prefs.h"
+ #include "em-composer-prefs.h"
+ #include "em-mailer-prefs.h"
++#include "em-network-prefs.h"
+
+ #include "mail-config-factory.h"
+
+@@ -48,6 +49,8 @@
+ prefs = em_mailer_prefs_new ();
+ } else if (!strcmp (component_id, EM_COMPOSER_PREFS_CONTROL_ID)) {
+ prefs = em_composer_prefs_new ();
++ } else if (!strcmp (component_id, EM_NETWORK_PREFS_CONTROL_ID)) {
++ prefs = em_network_prefs_new ();
+ } else {
+ g_return_val_if_reached(NULL);
+ }
diff --git a/evolution.changes b/evolution.changes
index c9aa0f8..92b3fb5 100644
--- a/evolution.changes
+++ b/evolution.changes
@@ -1,3 +1,9 @@
+-------------------------------------------------------------------
+Wed Apr 9 11:34:40 CEST 2008 - msuman@suse.de
+
+- Configurable proxy settings for Evolution (Varadhan)
+ + Added patch: bnc-188523-evo-fix-authenticated-proxy-support.diff (bnc#188523)
+
-------------------------------------------------------------------
Fri Mar 14 04:43:36 CET 2008 - maw@suse.de
diff --git a/evolution.spec b/evolution.spec
index 3775b02..9e5810e 100644
--- a/evolution.spec
+++ b/evolution.spec
@@ -22,7 +22,7 @@ AutoReqProv: on
# BASE_VERSION (as defined in configure.in).
%define evolution_base_version 2.22
Version: 2.22.0
-Release: 1
+Release: 15
Summary: The Integrated GNOME Mail, Calendar, and Address Book Suite
#Source: ftp://ftp.gnome.org/pub/gnome/sources/evolution/2.10/%{name}-%{version}.tar.bz2
Source0: %{name}-%{version}.tar.bz2
@@ -59,7 +59,8 @@ Patch90: fix-security-gtkhtml-moreui.diff
# PATCH-FIX-UPSTREAM evo-2.8.2-regression-fix.patch -- Fix in 2.21.91
Patch92: evo-2.8.2-regression-fix.patch
# #PATCH-FIX-UPSTREAM build-fixes.diff - Fixed for 2.21.91
-Patch999: build-fixes.diff
+Patch93: build-fixes.diff
+Patch94: bnc-188523-evo-fix-authenticated-proxy-support.diff
Url: http://gnome.org/projects/evolution/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Requires: yelp
@@ -164,6 +165,7 @@ Authors:
Chris Toshok
%package devel
+License: GPL v2 or later
Summary: Include Files and Libraries mandatory for Development.
Group: Development/Libraries/C and C++
Requires: evolution = %{?epoch:}%{version}-%{release}
@@ -178,6 +180,7 @@ to develop applications that require these.
%package pilot
+License: GNU Free Documentation License, Version 1.1 (GFDL 1.1); GPL v2 or later; LGPL v2.1 or later; X11/MIT
Summary: The Integrated GNOME Mail, Calendar, and Addressbook Suite
Group: Productivity/Networking/Email/Clients
Requires: evolution = %{?epoch:}%{version}-%{release}
@@ -291,7 +294,8 @@ Authors:
%patch45
%patch65
%patch66
-%patch999
+%patch93
+%patch94
%build
autoreconf -f -i
@@ -403,6 +407,9 @@ fi
%{_libdir}/evolution/*/conduits/*.so
%changelog
+* Wed Apr 09 2008 msuman@suse.de
+- Configurable proxy settings for Evolution (Varadhan)
+ + Added patch: bnc-188523-evo-fix-authenticated-proxy-support.diff (bnc#188523)
* Fri Mar 14 2008 maw@suse.de
- Update to version 2.22.0:
+ Bigs fixed: bnc#282466, bgo#351672m and bgo#520745
@@ -582,7 +589,7 @@ fi
* Tue Aug 21 2007 sbrabec@suse.cz
- Fixed crash on appointments with no no SENTBY parameter (#301835,
patch from Suman Manjunath).
-* Fri Aug 17 2007 jberkman@novell.com
+* Sat Aug 18 2007 jberkman@novell.com
- fix infinite recursion when used with smartcard auth patches
* Mon Aug 06 2007 maw@suse.de
- Split off a -lang subpackage.
@@ -1010,14 +1017,14 @@ fi
168697 - Fixes a alarm crash (Srini)
171592 - Fixes a alarm crash (Srini)
170076 - Fixes a wrong mime lookup for a attachment (Srini)
-* Tue May 02 2006 fejj@suse.de
+* Wed May 03 2006 fejj@suse.de
- Added bnc-167638.patch: Fixes the long Evolution quit times when
the user tries to close Evolution when it is in the middle of
syncing stuff to an IMAP/GW server.
* Tue May 02 2006 pchenthill@novell.com
- Update the patch bnc-158107-no-notification-canceled-mtgs.patch
Fixes https://bugzilla.novell.com/show_bug.cgi?id=171531
-* Wed Apr 26 2006 dobey@suse.de
+* Thu Apr 27 2006 dobey@suse.de
- Update trach icon patch to deal with more instances
Fixes https://bugzilla.novell.com/show_bug.cgi?id=160837
* Mon Apr 24 2006 sragavan@novell.com
@@ -1439,15 +1446,15 @@ fi
- Updated to version 1.5.92.1
- Add patch for more 64bit cleanliness issues
- Add dependencies for spamassassin and other evo packages
-* Wed Jul 28 2004 dobey@suse.de
+* Thu Jul 29 2004 dobey@suse.de
- Updated to version 1.5.91
* Fri Jul 16 2004 clahey@suse.de
- Updated about box.
-* Tue Jul 13 2004 clahey@suse.de
+* Wed Jul 14 2004 clahey@suse.de
- Updated to version 1.5.90.
* Mon Jun 21 2004 clahey@suse.de
- Updated to version 1.5.9.2. Added spamassassin.
-* Fri Jun 11 2004 clahey@suse.de
+* Sat Jun 12 2004 clahey@suse.de
- Added rpath stuff for mozilla.
* Thu Jun 10 2004 clahey@suse.de
- Fixed a non-void warning.
@@ -1459,7 +1466,7 @@ fi
- Enabled default binary at configure time, this means
evolution binary will be named 'evolution' instead of
'evolution-1.5'.
-* Tue May 25 2004 mibarra@suse.de
+* Wed May 26 2004 mibarra@suse.de
- Fixed some 64bits compiler warnings.
* Sat May 22 2004 mibarra@suse.de
- Updated to 1.5.8.
@@ -1499,7 +1506,7 @@ fi
- Fix use of build root.
* Mon Sep 22 2003 sbrabec@suse.cz
- Obsolete bonobo-conf.
-* Sun Sep 14 2003 adrian@suse.de
+* Mon Sep 15 2003 adrian@suse.de
- Add Email Category
* Tue Sep 09 2003 sbrabec@suse.cz
- Fixed default charset bug (bug #29851, Ximian bug #47638).
@@ -1663,7 +1670,7 @@ fi
* Fri Sep 22 2000 egger@suse.de
- Use BuildRoot.
- Buildproofed on i386.
-* Tue Sep 19 2000 egger@suse.de
+* Wed Sep 20 2000 egger@suse.de
- First compilable version of it using version 0.5.1
- Buildproofed on i386.
* Fri Sep 01 2000 egger@suse.de