Index: include/ephy-string.h
===================================================================
--- include/ephy-string.h	(revisione 0)
+++ include/ephy-string.h	(revisione 0)
@@ -0,0 +1,60 @@
+/*
+ *  Copyright © 2002 Marco Pesenti Gritti
+ *
+ *  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, 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ *  $Id$
+ */
+
+#ifndef EPHY_STRING_H
+#define EPHY_STRING_H
+
+#include <glib.h>
+#include <glib-object.h>
+
+G_BEGIN_DECLS
+
+gboolean  ephy_string_to_int	(const char *string,
+				 gulong *integer);
+
+char	 *ephy_string_blank_chr	(char *source);
+
+char	 *ephy_string_shorten	(char *str,
+				 gsize target_length);
+
+char	 *ephy_string_collate_key_for_domain	(const char *host,
+						 gssize len);
+
+guint	  ephy_string_flags_from_string	(GType type,
+					 const char *flags_string);
+
+char     *ephy_string_flags_to_string	(GType type,
+					 guint flags_value);
+
+guint	  ephy_string_enum_from_string	(GType type,
+					 const char *enum_string);
+
+char     *ephy_string_enum_to_string	(GType type,
+					 guint enum_value);
+
+char     *ephy_string_canonicalize_pathname (const char *cpath);
+
+char     *ephy_string_get_host_name (const char *url);
+
+char     *ephy_string_expand_initial_tilde (const char *path);
+
+G_END_DECLS
+
+#endif
Index: include/ephy-file-helpers.h
===================================================================
--- include/ephy-file-helpers.h	(revisione 1670)
+++ include/ephy-file-helpers.h	(copia locale)
@@ -15,7 +15,7 @@
  *
  *  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 Place - Suite 330, Boston, MA 02111-1307, USA.
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
  *
  *  $Id$
  */
@@ -24,8 +24,8 @@
 #define EPHY_FILE_HELPERS_H
 
 #include <glib.h>
-#include <libgnomevfs/gnome-vfs-mime-handlers.h>
-#include <libgnomevfs/gnome-vfs-ops.h>
+#include <gio/gio.h>
+#include <gtk/gtkwidget.h>
 
 extern GQuark ephy_file_helpers_error_quark;
 #define EPHY_FILE_HELPERS_ERROR_QUARK	(ephy_file_helpers_error_quark)
@@ -39,10 +39,6 @@ typedef enum
 	EPHY_MIME_PERMISSION_UNKNOWN	= 3
 } EphyMimePermission;
 
-typedef struct _EphyFileMonitor EphyFileMonitor;
-typedef void (* EphyFileMonitorFunc) (EphyFileMonitor*, const char*, GnomeVFSMonitorEventType, gpointer);
-typedef gboolean (* EphyFileMonitorDelayFunc) (EphyFileMonitor*, gpointer);
-
 gboolean    ephy_file_helpers_init       (const char *profile_dir,
 					  gboolean private_profile,
 					  gboolean keep_temp_dir,
@@ -72,32 +68,32 @@ GSList     *ephy_file_find              
 				          const char *fname,
 				          gint maxdepth);
 
-gboolean    ephy_file_switch_temp_file   (const char *filename,
-					  const char *filename_temp);
+gboolean    ephy_file_switch_temp_file (GFile *file,
+					GFile *file_temp);
+
+void	    ephy_file_delete_on_exit	 (GFile *file);
 
-void	    ephy_file_delete_on_exit	 (const char *path);
+void	    ephy_file_add_recent_item	 (const char *uri,
+					  const char *mime_type);
 
 EphyMimePermission ephy_file_check_mime	 (const char *mime_type);
 
 gboolean    ephy_file_launch_desktop_file (const char *filename,
-					   guint32 user_time);
-
-gboolean    ephy_file_launch_application (GnomeVFSMimeApplication *application,
-					  const char *parameter,
-					  guint32 user_time);
+					   const char *parameter,
+					   guint32 user_time,
+					   GtkWidget *widget);
+
+gboolean    ephy_file_launch_application (GAppInfo *app,
+					  GList *files,
+					  guint32 user_time,
+					  GtkWidget *parent);
 
 gboolean    ephy_file_launch_handler	 (const char *mime_type,
-					  const char *address,
+					  GFile *file,
 					  guint32 user_time);
 
-EphyFileMonitor *ephy_file_monitor_add	 (const char *uri,
-					  GnomeVFSMonitorType monitor_type,
-					  guint delay,
-					  EphyFileMonitorFunc callback,
-					  EphyFileMonitorDelayFunc delay_func,
-					  gpointer user_data);
-
-void	   ephy_file_monitor_cancel	 (EphyFileMonitor *monitor);
+gboolean    ephy_file_browse_to		 (GFile *file,
+					  guint32 user_time);
 
 void	   ephy_file_delete_directory	 (const char *path);
 
Index: include/Makefile.am
===================================================================
--- include/Makefile.am	(revisione 1670)
+++ include/Makefile.am	(copia locale)
@@ -13,4 +13,5 @@ EXTRA_DIST =				\
 	ephy-gui.h			\
 	ephy-prefs.h			\
 	ephy-file-chooser.h		\
+	ephy-string.h			\
 	ephy-dnd.h
Index: extensions/extensions-manager-ui/extensions-manager-ui.c
===================================================================
--- extensions/extensions-manager-ui/extensions-manager-ui.c	(revisione 1670)
+++ extensions/extensions-manager-ui/extensions-manager-ui.c	(copia locale)
@@ -42,6 +42,9 @@
 #include <glib/gi18n-lib.h>
 #include <gtk/gtkversion.h>
 
+/* Icon for the window */
+#define EXTENSIONS_ICON "universal-addon"
+
 #define IGNORE_SELF /* Don't display *this* extension in the list */
 #define GROUP	"Epiphany Extension"
 
@@ -340,7 +343,7 @@ build_ui (ExtensionsManagerUI *dialog)
 	g_signal_connect (priv->window, "response",
 			  G_CALLBACK (extensions_manager_ui_response_cb), dialog);
 
-	gtk_window_set_icon_name (GTK_WINDOW (priv->window), GTK_STOCK_PREFERENCES);
+	gtk_window_set_icon_name (GTK_WINDOW (priv->window), EXTENSIONS_ICON);
 
 	treeview = GTK_TREE_VIEW (priv->treeview);
 	gtk_tree_view_set_rules_hint (treeview, TRUE);
Index: extensions/greasemonkey/ephy-greasemonkey-extension.c
===================================================================
--- extensions/greasemonkey/ephy-greasemonkey-extension.c	(revisione 1670)
+++ extensions/greasemonkey/ephy-greasemonkey-extension.c	(copia locale)
@@ -38,12 +38,9 @@
 #include <gtk/gtkmessagedialog.h>
 #include <gtk/gtkuimanager.h>
 
-#include <libgnomevfs/gnome-vfs-ops.h>
-#include <libgnomevfs/gnome-vfs-utils.h>
-#include <libgnomevfs/gnome-vfs-xfer.h>
-
 #include <glib/gi18n-lib.h>
 #include <glib/gstdio.h>
+#include <gio/gio.h>
 #include <gmodule.h>
 
 #include <sys/stat.h>
@@ -60,7 +57,7 @@
 struct _EphyGreasemonkeyExtensionPrivate
 {
 	GHashTable *scripts;
-	GnomeVFSMonitorHandle *monitor;
+	GFileMonitor *monitor;
 };
 
 typedef struct
@@ -147,32 +144,34 @@ load_scripts (const char *path)
 }
 
 static void
-dir_changed_cb (GnomeVFSMonitorHandle *handle,
-		const char *monitor_uri,
-		const char *info_uri,
-		GnomeVFSMonitorEventType event_type,
+dir_changed_cb (GFileMonitor *monitor,
+		GFile *file,
+		GFile *other_file,
+		GFileMonitorEvent event,
 		EphyGreasemonkeyExtension *extension)
 {
+	char *uri;
 	char *path;
 	char *basename;
 	GreasemonkeyScript *script;
 
-	LOG ("Activity on %s", info_uri);
+	uri = g_file_get_uri (file);
+	path = g_file_get_path (file);
+	LOG ("Activity on %s", uri);
 
-	if (g_str_has_suffix (info_uri, ".user.js") == FALSE) return;
+	if (g_str_has_suffix (uri, ".user.js") == FALSE) return;
 
-	path = gnome_vfs_get_local_path_from_uri (info_uri);
-	basename = g_path_get_basename (path);
+	basename = g_file_get_basename (file);
 
-	switch (event_type)
+	switch (event)
 	{
-		case GNOME_VFS_MONITOR_EVENT_CREATED:
-		case GNOME_VFS_MONITOR_EVENT_CHANGED:
+		case G_FILE_MONITOR_EVENT_CREATED:
+		case G_FILE_MONITOR_EVENT_CHANGED:
 			script = greasemonkey_script_new (path);
 			g_hash_table_replace (extension->priv->scripts,
 					      g_strdup (basename), script);
 			break;
-		case GNOME_VFS_MONITOR_EVENT_DELETED:
+		case G_FILE_MONITOR_EVENT_DELETED:
 			g_hash_table_remove (extension->priv->scripts,
 					     basename);
 			break;
@@ -181,28 +180,29 @@ dir_changed_cb (GnomeVFSMonitorHandle *h
 	}
 
 	g_free (basename);
+	g_free (uri);
 	g_free (path);
 }
 
-static GnomeVFSMonitorHandle *
+static GFileMonitor *
 monitor_scripts (const char *path,
 		 EphyGreasemonkeyExtension *extension)
 {
-	char *uri;
-	GnomeVFSMonitorHandle *monitor;
-	GnomeVFSResult res;
+	GFileMonitor *monitor;
+	GFile *file;
 
-	uri = gnome_vfs_get_uri_from_local_path (path);
-	res = gnome_vfs_monitor_add (&monitor, path,
-				     GNOME_VFS_MONITOR_DIRECTORY,
-				     (GnomeVFSMonitorCallback) dir_changed_cb,
-				     extension);
-	g_free (uri);
-
-	if (res != GNOME_VFS_OK)
+	file = g_file_new_for_path (path);
+	monitor = g_file_monitor_directory (file,
+					    0, NULL, NULL);
+	if (monitor == NULL)
 	{
 		return NULL;
 	}
+	g_signal_connect (monitor, "changed",
+			  G_CALLBACK (dir_changed_cb),
+			  extension);
+
+	g_object_unref (file);
 
 	LOG ("Monitoring %s for user scripts", path);
 	return monitor;
@@ -243,7 +243,7 @@ ephy_greasemonkey_extension_finalize (GO
 
 	if (extension->priv->monitor != NULL)
 	{
-		gnome_vfs_monitor_cancel (extension->priv->monitor);
+		g_file_monitor_cancel (extension->priv->monitor);
 	}
 
 	G_OBJECT_CLASS (parent_class)->finalize (object);
@@ -277,6 +277,7 @@ save_source_cancelled_cb (EphyEmbedPersi
 {
 	WindowData *data;
 	const char *dest;
+	GFile *file;
 
 	LOG ("Download from %s cancelled",
 	     ephy_embed_persist_get_source (persist));
@@ -287,8 +288,10 @@ save_source_cancelled_cb (EphyEmbedPersi
 						 persist);
 
 	dest = ephy_embed_persist_get_dest (persist);
-	gnome_vfs_unlink (dest);
+	file = g_file_new_for_path (dest);
+	g_file_delete (file, NULL, NULL);
 
+	g_object_unref (file);
 	g_object_unref (G_OBJECT (persist));
 }
 
Index: extensions/adblock/adblock-pattern.c
===================================================================
--- extensions/adblock/adblock-pattern.c	(revisione 1670)
+++ extensions/adblock/adblock-pattern.c	(copia locale)
@@ -25,12 +25,11 @@
 
 #include <pcre.h>
 #include <string.h>
+#include <gio/gio.h>
 
 #include "ephy-file-helpers.h"
 #include "ephy-debug.h"
 
-#include <libgnomevfs/gnome-vfs-utils.h>
-
 #define DEFAULT_BLACKLIST_FILENAME	"adblock-patterns"
 #define BLACKLIST_FILENAME		"blacklist"
 #define WHITELIST_FILENAME		"whitelist"
@@ -227,17 +226,55 @@ adblock_pattern_rewrite_patterns (const 
 static char *
 adblock_pattern_get_filterg_patterns (const char *date)
 {
-	int size;
+	gsize size;
 	char *contents = NULL, *url = NULL;
+	GFile *file;
+	GFileInfo *info;
+	GFileInputStream *input_stream;
+	gboolean res = TRUE;
 
 	url = g_strdup_printf ("http://www.pierceive.com/filtersetg/%s", date);
+	file = g_file_new_for_uri (url);
+	info = g_file_query_info (file,
+				  G_FILE_ATTRIBUTE_STANDARD_SIZE,
+				  0, 0, NULL);
+	if (info == NULL)
+	{
+		g_warning ("Could not get rules file from filterg site");
+		goto out;
+	}
+	else
+	{
+		size = (gsize) g_file_info_get_size (info);
+		g_object_unref (info);
+	}
 
 	/* First, get the changelog so we can build the url pointing to the last rules */
-	if (gnome_vfs_read_entire_file (url, &size, &contents) != GNOME_VFS_OK)
+	input_stream = g_file_read (file, NULL, NULL);
+	if (input_stream != NULL)
+	{
+		gsize bytes_read;
+
+		contents = g_malloc (size);
+		res = g_input_stream_read_all (G_INPUT_STREAM (input_stream),
+					       contents,
+					       size,
+					       &bytes_read,
+					       NULL, NULL);
+		if (!res)
+		{	
+			g_warning ("Could not get rules file from filterg site");
+		}
+		g_object_unref (input_stream);
+	}
+	else
 	{
 		g_warning ("Could not get rules file from filterg site");
 	}
+
+out:
 	g_free (url);
+	g_object_unref (file);
 
 	return contents;
 }
@@ -245,22 +282,62 @@ adblock_pattern_get_filterg_patterns (co
 static char *
 adblock_pattern_get_filterg_date (void)
 {
-	const char *url = "http://www.pierceive.com/filtersetg/latest.txt";
-	int size;
-	char *contents, *date;
+	gsize size;
+	char *contents = NULL;
 	char **lines;
+	char *date = NULL;
+	GFile *file;
+	GFileInfo *info;
+	GFileInputStream *input_stream;
+	gboolean res = TRUE;
+
+	file = g_file_new_for_uri ("http://www.pierceive.com/filtersetg/latest.txt");
+	info = g_file_query_info (file,
+				  G_FILE_ATTRIBUTE_STANDARD_SIZE,
+				  0, 0, NULL);
+	if (info == NULL)
+	{
+		g_warning ("Could not get latest.txt file from filterg site");
+		goto out;
+	}
+	else
+	{
+		size = (gsize) g_file_info_get_size (info);
+		g_object_unref (info);
+	}
 
 	/* First, get the changelog so we can build the url pointing to the last rules */
-	if (gnome_vfs_read_entire_file (url, &size, &contents) != GNOME_VFS_OK)
+	input_stream = g_file_read (file, NULL, NULL);
+	if (input_stream != NULL)
 	{
-		g_warning ("Could not get latest.txt from filterg site");
-		return NULL;
+		gsize bytes_read;
+
+		contents = g_malloc (size);
+		res = g_input_stream_read_all (G_INPUT_STREAM (input_stream),
+					       contents,
+					       size,
+					       &bytes_read,
+					       NULL, NULL);
+		if (!res)
+		{	
+			g_warning ("Could not get latest.txt file from filterg site");
+			goto out;
+		}
+		g_object_unref (input_stream);
+		lines = g_strsplit (contents, "\n", 0);
+		date = g_strdup (lines [0]);
+
+		g_free (contents);
+		g_strfreev (lines);
+	}
+	else
+	{
+		g_warning ("Could not get latest.txt file from filterg site");
+		goto out;
 	}
-	lines = g_strsplit (contents, "\n", 0);
-	date = g_strdup (lines [0]);
 
-	g_free (contents);
-	g_strfreev (lines);
+out:
+	g_object_unref (file);
 
 	return date;
 }
Index: extensions/adblock/adblock-ui.c
===================================================================
--- extensions/adblock/adblock-ui.c	(revisione 1670)
+++ extensions/adblock/adblock-ui.c	(copia locale)
@@ -43,10 +43,6 @@
 #include <gtk/gtktextview.h>
 #include <gtk/gtknotebook.h>
 
-#include <libgnomevfs/gnome-vfs-uri.h>
-#include <libgnomevfs/gnome-vfs-ops.h>
-#include <libgnomevfs/gnome-vfs-utils.h>
-
 #include <string.h>
 
 #define ADBLOCK_UI_GET_PRIVATE(object) (G_TYPE_INSTANCE_GET_PRIVATE((object), TYPE_ADBLOCK_UI, AdblockUIPrivate))
Index: extensions/page-info/page-info-dialog.c
===================================================================
--- extensions/page-info/page-info-dialog.c	(revisione 1670)
+++ extensions/page-info/page-info-dialog.c	(copia locale)
@@ -59,14 +59,11 @@
 #include <gtk/gtkclipboard.h>
 #include <gtk/gtkmain.h>
 
-#include <libgnomevfs/gnome-vfs-uri.h>
-#include <libgnomevfs/gnome-vfs-utils.h>
-#include <libgnomevfs/gnome-vfs-mime-handlers.h>
-
 #include "mozilla/mozilla-helpers.h"
 
 #include <glib/gi18n-lib.h>
 #include <glib/gconvert.h>
+#include <gio/gio.h>
 
 #include <time.h>
 #include <string.h>
@@ -645,35 +642,30 @@ static void
 treeview_page_info_save_one_selection (const char *source,
 	                               const char *dir)
 {
-	GnomeVFSURI *uri;
+	GFile *file;
 	EphyEmbedPersist *persist;
+	char *file_name;
 
-	uri = gnome_vfs_uri_new (source);
-	if (uri != NULL)
-	{
-		char *file_name;
-
-		file_name = gnome_vfs_uri_extract_short_name (uri);
-		if (file_name != NULL)
-		{
-			char *dest;
+	file = g_file_new_for_uri (source);
 
+	file_name = g_file_get_basename (file);
+	if (file_name != NULL)
+	{
+		char *dest;
 			/* Persist needs a full path */
-			dest = g_build_filename (dir, file_name, NULL);
-
-			persist = EPHY_EMBED_PERSIST (
-					ephy_embed_factory_new_object (EPHY_TYPE_EMBED_PERSIST));
-			ephy_embed_persist_set_source (persist, source);
-			ephy_embed_persist_set_dest (persist, dest);
-			ephy_embed_persist_save (persist);
+		dest = g_build_filename (dir, file_name, NULL);
 
-			g_object_unref (persist);
-			g_free(dest);
-		}
+		persist = EPHY_EMBED_PERSIST (ephy_embed_factory_new_object (EPHY_TYPE_EMBED_PERSIST));
+		ephy_embed_persist_set_source (persist, source);
+		ephy_embed_persist_set_dest (persist, dest);
+		ephy_embed_persist_save (persist);
 
-		g_free (file_name);
-		gnome_vfs_uri_unref (uri);
+		g_object_unref (persist);
+		g_free(dest);
 	}
+
+	g_free (file_name);
+	g_object_unref (file);
 }
 
 /* Download at the same time all the selelected links (rows) */
@@ -791,7 +783,7 @@ general_info_page_fill (InfoPage *page)
 
 	page_info_set_text (dialog, properties[PROP_GENERAL_MIME_TYPE].id, props->content_type);
 
-	text = gnome_vfs_mime_get_description (props->content_type);
+	text = g_content_type_get_description (props->content_type);
 	page_info_set_text (dialog, properties[PROP_GENERAL_TYPE].id,
 			    text ? text : _("Unknown type"));
 
@@ -836,7 +828,7 @@ general_info_page_fill (InfoPage *page)
 
 	if (props->size != -1)
 	{
-		val = gnome_vfs_format_file_size_for_display (props->size);
+		val = g_format_size_for_display ((goffset) props->size);
 		page_info_set_text (dialog, properties[PROP_GENERAL_SIZE].id, val);
 		g_free (val);
 	}
@@ -1064,11 +1056,14 @@ media_open_medium_cb (GtkAction *action,
 }
 
 static void
-background_download_completed_cb (EphyEmbedPersist *persist)
+background_download_completed_cb (EphyEmbedPersist *persist,
+				  GtkAction *action)
 {
 	const char *bg;
 	char *type;
 	guint32 user_time;
+	GtkWidget *proxy;
+	GSList *proxies;
 
 	user_time = ephy_embed_persist_get_user_time (persist);
 
@@ -1082,8 +1077,14 @@ background_download_completed_cb (EphyEm
 	}
 	g_free (type);
 
+	proxies = gtk_action_get_proxies (action);
+	proxy = GTK_WIDGET (proxies->data);
+
 	/* open the "Background Properties" capplet */
-	ephy_file_launch_desktop_file ("background.desktop", user_time);
+	ephy_file_launch_desktop_file ("background.desktop",
+				       NULL,
+				       user_time,
+				       proxy);
 }
 
 static void
@@ -1112,7 +1113,7 @@ media_set_image_as_background_cb (GtkAct
 	ephy_embed_persist_set_flags (persist, EPHY_EMBED_PERSIST_NO_VIEW);
 
 	g_signal_connect (persist, "completed",
-			  G_CALLBACK (background_download_completed_cb), NULL);
+			  G_CALLBACK (background_download_completed_cb), action);
 
 	ephy_embed_persist_save (persist);
 
Index: extensions/rss/rss-ui.c
===================================================================
--- extensions/rss/rss-ui.c	(revisione 1670)
+++ extensions/rss/rss-ui.c	(copia locale)
@@ -26,6 +26,7 @@
 #include "ephy-gui.h"
 #include "ephy-dnd.h"
 #include "ephy-debug.h"
+#include "ephy-string.h"
 
 #include <glib/gi18n-lib.h>
 #include <gtk/gtkstock.h>
@@ -43,8 +44,6 @@
 #include <gtk/gtkclipboard.h>
 #include <gtk/gtkmain.h>
 
-#include <libgnomevfs/gnome-vfs-uri.h>
-
 #include <string.h>
 
 #define RSS_UI_GET_PRIVATE(object) (G_TYPE_INSTANCE_GET_PRIVATE((object), TYPE_RSS_UI, RssUIPrivate))
@@ -427,18 +426,10 @@ rss_ui_select_feeds (GtkTreeModel *model
 	    decision->rss_present &&
 	    rss_ui_get_feed_type (feed->type) == FEED_TYPE_ATOM)
 	{
-		GnomeVFSURI *uri;
-
-		uri = gnome_vfs_uri_new (feed->address);
-
 		/* Atom is on the same host, probably a duplicate */
-		if (uri != NULL)
-		{
-			const char *host = gnome_vfs_uri_get_host_name (uri);
+		const char *host = ephy_string_get_host_name (feed->address);
 
-			selected = g_ascii_strcasecmp (decision->hostname, host) != 0;
-			gnome_vfs_uri_unref (uri);
-		}
+		selected = g_ascii_strcasecmp (decision->hostname, host) != 0;
 	}
 
 	gtk_list_store_set (store, iter, COL_TOGGLE, selected, -1);
@@ -490,7 +481,6 @@ rss_ui_populate_store (RssUI *dialog)
 	RssUIPrivate *priv = dialog->priv;
 	FeedSelectionDecision decision = { FALSE, FALSE, NULL };
 	char *location;
-	GnomeVFSURI *uri;
 
 	if (priv->embed == NULL) return;
 
@@ -498,12 +488,7 @@ rss_ui_populate_store (RssUI *dialog)
 	 * avoiding duplicate feeds
 	 */
 	location = ephy_embed_get_location (priv->embed, TRUE);
-	uri = gnome_vfs_uri_new (location);
-	if (uri != NULL)
-	{
-		decision.hostname = g_strdup (gnome_vfs_uri_get_host_name (uri));
-		gnome_vfs_uri_unref (uri);
-	}
+	decision.hostname = g_strdup (ephy_string_get_host_name (location));
 
 	/* Fill the store, and select the appropriate feeds */
 	rss_ui_fill_list_store (dialog, &decision);
Index: configure.ac
===================================================================
--- configure.ac	(revisione 1670)
+++ configure.ac	(copia locale)
@@ -76,7 +76,7 @@ MOZILLA_WARN_CXXFLAGS="-Wno-ctor-dtor-pr
 if test "x$enable_maintainer_mode" = "xyes"; then
 	AC_DEFINE([MAINTAINER_MODE],[1],[Define to enable 'maintainer-only' behaviour])
 	enable_debug=yes
-        DEPRECATION_FLAGS="-DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGCONF_DISABLE_DEPRECATED -DGNOME_VFS_DISABLE_DEPRECATED -DLIBGLADE_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED"
+        DEPRECATION_FLAGS="-DG_DISABLE_DEPRECATED -DGDK_DISABLE_DEPRECATED -DGDK_PIXBUF_DISABLE_DEPRECATED -DGCONF_DISABLE_DEPRECATED -DLIBGLADE_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED -DGTK_DISABLE_DEPRECATED -DGNOME_DISABLE_DEPRECATED"
 	MOZILLA_WARN_CXXFLAGS="-Wall -Wconversion -Wpointer-arith -Wcast-align -Woverloaded-virtual -Wsynth $MOZILLA_WARN_CXXFLAGS"
 fi
 
@@ -101,9 +101,9 @@ GNOME_DOC_INIT
 # pkg config checks
 # ********************************
 
-EPIPHANY_REQUIRED=2.21.0
+EPIPHANY_REQUIRED=2.21.90
 LIBXML_REQUIRED=2.6.0
-LIBGLIB_REQUIRED=2.12.0
+LIBGLIB_REQUIRED=2.15.5
 LIBGTK_REQUIRED=2.11.6
 
 AC_SUBST([EPIPHANY_REQUIRED])
@@ -118,8 +118,10 @@ PKG_CHECK_MODULES([EPIPHANY_DEPENDENCY],
 		  libxml-2.0 >= $LIBXML_REQUIRED \
 		  libglade-2.0 \
 		  glib-2.0 >= $LIBGLIB_REQUIRED \
+		  gio-2.0 >= $LIBGLIB_REQUIRED \
 		  gmodule-2.0 \
 		  gtk+-2.0 >= $LIBGTK_REQUIRED \
+		  gconf-2.0 \
 		  epiphany-$EPIPHANY_API_VERSION >= $EPIPHANY_REQUIRED])
 AC_SUBST([EPIPHANY_DEPENDENCY_CFLAGS])
 AC_SUBST([EPIPHANY_DEPENDENCY_LIBS])
