[evolution-rss] migrate to gtkbuilder



commit 0f03b0391ecea1bcd0b91ae6455ac141fbc2f52a
Author: Lucian Langa <lucilanga gnome org>
Date:   Fri Nov 13 08:24:17 2009 +0200

    migrate to gtkbuilder

 src/parser.c                 |    4 +-
 src/rss-config-factory.c     |  253 ++++++++-------
 src/rss-config-factory.h     |    2 +-
 src/rss-html-rendering.glade |  138 ++++----
 src/rss-ui.glade             |  721 +++++++++++++++++++++++-------------------
 src/rss.c                    |    7 +-
 src/rss.h                    |    2 +-
 7 files changed, 602 insertions(+), 525 deletions(-)
---
diff --git a/src/parser.c b/src/parser.c
index 8ca89fa..a3f5a1a 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -971,7 +971,7 @@ parse_channel_line(xmlNode *top, gchar *feed_name, char *main_date)
 		id = (gchar *)layer_find (top, (gchar *)"id",				//ATOM
 				layer_find (top, (gchar *)"guid", NULL));		//RSS 2.0
 		feed = g_strdup_printf("%s\n", id ? id : link);
-		g_strstrip(feed);
+		if (feed) g_strstrip(feed);
 		d(g_print("link:%s\n", link));
 		d(g_print("author:%s\n", q));
 		d(g_print("title:%s\n", p));
@@ -1105,7 +1105,7 @@ update_channel(RDF *r)
 				fetch_unblocking(
 					CF->encl,
 					textcb,
-					NULL,
+					1,
 					(gpointer)finish_enclosure,
 					CF,
 					0,
diff --git a/src/rss-config-factory.c b/src/rss-config-factory.c
index d52a9ff..aed9694 100644
--- a/src/rss-config-factory.c
+++ b/src/rss-config-factory.c
@@ -80,7 +80,7 @@ extern SoupCookieJar *rss_soup_jar;
 #define MAX_TTL		10000
 
 typedef struct {
-        GladeXML *xml;
+        GtkBuilder  *xml;
         GConfClient *gconf;
         GtkWidget   *combobox;
         GtkWidget   *check;
@@ -89,7 +89,7 @@ typedef struct {
 } UIData;
 
 typedef struct _setupfeed {
-        GladeXML  *gui;
+        GtkBuilder *gui;
         GtkWidget *treeview;
         GtkWidget *add_feed;
         GtkWidget *check1;
@@ -283,11 +283,11 @@ set_string_cb (GtkWidget *widget, gpointer data)
 static void
 details_cb (GtkWidget *widget, gpointer data)
 {
-        GtkWidget *details = glade_xml_get_widget(data, "http-proxy-details");
-        GtkWidget *close = glade_xml_get_widget(data, "closebutton2");
-        GtkWidget *proxy_auth = glade_xml_get_widget(data, "proxy_auth");
-        GtkWidget *proxy_user = glade_xml_get_widget(data, "proxy_user");
-        GtkWidget *proxy_pass = glade_xml_get_widget(data, "proxy_pass");
+        GtkWidget *details = GTK_WIDGET (gtk_builder_get_object(data, "http-proxy-details"));
+        GtkWidget *close = GTK_WIDGET (gtk_builder_get_object(data, "closebutton2"));
+        GtkWidget *proxy_auth = GTK_WIDGET (gtk_builder_get_object(data, "proxy_auth"));
+        GtkWidget *proxy_user = GTK_WIDGET (gtk_builder_get_object(data, "proxy_user"));
+        GtkWidget *proxy_pass = GTK_WIDGET (gtk_builder_get_object(data, "proxy_pass"));
         g_signal_connect(close, "clicked", G_CALLBACK(close_details_cb), details);
 
         gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (proxy_auth),
@@ -359,11 +359,11 @@ del_messages_cb (GtkWidget *widget, add_feed *data)
 }
 
 void
-disable_widget_cb(GtkWidget *widget, GladeXML *data)
+disable_widget_cb(GtkWidget *widget, GtkBuilder *data)
 {
-	GtkWidget *authuser = (GtkWidget *)glade_xml_get_widget (data, "auth_user");
-	GtkWidget *authpass = (GtkWidget *)glade_xml_get_widget (data, "auth_pass");
-	GtkToggleButton *useauth = (GtkToggleButton *)glade_xml_get_widget (data, "use_auth");
+	GtkWidget *authuser = GTK_WIDGET (gtk_builder_get_object(data, "auth_user"));
+	GtkWidget *authpass = GTK_WIDGET (gtk_builder_get_object(data, "auth_pass"));
+	GtkToggleButton *useauth = (GtkToggleButton*)gtk_builder_get_object(data, "use_auth");
 	gboolean auth_enabled = gtk_toggle_button_get_active(useauth);
 
 	gtk_widget_set_sensitive(authuser, auth_enabled);
@@ -375,7 +375,7 @@ build_dialog_add(gchar *url, gchar *feed_text)
 {
         char *gladefile;
 	add_feed *feed = g_new0(add_feed, 1);
-	GladeXML  *gui;
+	GtkBuilder  *gui;
 	gchar *flabel = NULL;
 	gchar *fname;
 	gboolean fhtml = FALSE;
@@ -397,16 +397,21 @@ build_dialog_add(gchar *url, gchar *feed_text)
 	GtkWidget *spinbutton1, *spinbutton2;
 	GtkWidget *checkbutton4;
         GtkImage *image;
+	GError* error = NULL;
 
 	feed->enabled = TRUE;
         gladefile = g_build_filename (EVOLUTION_GLADEDIR,
                                       "rss-ui.glade",
                                       NULL);
-        gui = glade_xml_new (gladefile, NULL, GETTEXT_PACKAGE);
+	gui = gtk_builder_new ();
+	if (!gtk_builder_add_from_file (gui, gladefile, &error)) {
+		g_warning ("Couldn't load builder file: %s", error->message);
+		g_error_free (error);
+	}
         g_free (gladefile);
 
-	dialog1 = (GtkWidget *)glade_xml_get_widget (gui, "feed_dialog");
-	child = (GtkWidget *)glade_xml_get_widget (gui, "dialog-vbox9");
+	dialog1 = GTK_WIDGET (gtk_builder_get_object(gui, "feed_dialog"));
+	child = GTK_WIDGET (gtk_builder_get_object(gui, "dialog-vbox9"));
 //	gtk_widget_show(dialog1);
 //	gtk_window_set_keep_above(GTK_WINDOW(dialog1), FALSE);
 	if (url != NULL)
@@ -415,8 +420,8 @@ build_dialog_add(gchar *url, gchar *feed_text)
 		gtk_window_set_title (GTK_WINDOW (dialog1), _("Add Feed"));
 //	gtk_window_set_modal (GTK_WINDOW (dialog1), FALSE);
 
-        adv_options = (GtkWidget *)glade_xml_get_widget (gui, "adv_options");
-        entry1 = (GtkWidget *)glade_xml_get_widget (gui, "url_entry");
+        adv_options = GTK_WIDGET (gtk_builder_get_object(gui, "adv_options"));
+        entry1 = GTK_WIDGET (gtk_builder_get_object(gui, "url_entry"));
 	//editing
 	if (url != NULL) {
 		key = lookup_key(feed_text);
@@ -443,8 +448,8 @@ build_dialog_add(gchar *url, gchar *feed_text)
 	}
 	feed->validate = 1;
 
-        entry2 = (GtkWidget *)glade_xml_get_widget (gui, "entry2");
-        feed_name = (GtkWidget *)glade_xml_get_widget (gui, "feed_name");
+        entry2 = GTK_WIDGET (gtk_builder_get_object(gui, "entry2"));
+        feed_name = GTK_WIDGET (gtk_builder_get_object(gui, "feed_name"));
 	if (url != NULL) {
 		flabel = g_build_path("/",
 			lookup_main_folder(),
@@ -455,46 +460,46 @@ build_dialog_add(gchar *url, gchar *feed_text)
 		gtk_entry_set_text(GTK_ENTRY(feed_name), fname);
 		g_free(fname);
 		gtk_widget_show(feed_name);
-		feed_name_label = (GtkWidget *)glade_xml_get_widget (gui, "feed_name_label");
+		feed_name_label = GTK_WIDGET (gtk_builder_get_object(gui, "feed_name_label"));
 		gtk_widget_show(feed_name_label);
-		location_button = (GtkWidget *)glade_xml_get_widget (gui, "location_button");
+		location_button = GTK_WIDGET (gtk_builder_get_object(gui, "location_button"));
 
 		gtk_widget_show(location_button);
-		location_label = (GtkWidget *)glade_xml_get_widget (gui, "location_label");
+		location_label = GTK_WIDGET (gtk_builder_get_object(gui, "location_label"));
 		gtk_widget_show(location_label);
 		gtk_label_set_use_markup(GTK_LABEL(entry2), 1);
 	} else
 		gtk_label_set_text(GTK_LABEL(entry2), flabel);
 
-	combobox1 = (GtkWidget *)glade_xml_get_widget (gui, "combobox1");
+	combobox1 = GTK_WIDGET (gtk_builder_get_object(gui, "combobox1"));
 	gtk_combo_box_set_active(GTK_COMBO_BOX(combobox1), 0);
 
-	checkbutton1 = (GtkWidget *)glade_xml_get_widget (gui, "html_check");
+	checkbutton1 = GTK_WIDGET (gtk_builder_get_object(gui, "html_check"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton1), 1-fhtml);
 
-	checkbutton2 = (GtkWidget *)glade_xml_get_widget (gui, "enabled_check");
+	checkbutton2 = GTK_WIDGET (gtk_builder_get_object(gui, "enabled_check"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton2), feed->enabled);
 
-	checkbutton3 = (GtkWidget *)glade_xml_get_widget (gui, "validate_check");
+	checkbutton3 = GTK_WIDGET (gtk_builder_get_object(gui, "validate_check"));
 	if (url)
 		gtk_widget_set_sensitive(checkbutton3, FALSE);
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton3), feed->validate);
 
-	spinbutton1 = (GtkWidget *)glade_xml_get_widget (gui, "storage_sb1");
-	spinbutton2 = (GtkWidget *)glade_xml_get_widget (gui, "storage_sb2");
+	spinbutton1 = GTK_WIDGET (gtk_builder_get_object(gui, "storage_sb1"));
+	spinbutton2 = GTK_WIDGET (gtk_builder_get_object(gui, "storage_sb2"));
 	if (feed->del_messages)
 		gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton1), feed->del_messages);
 	g_signal_connect(spinbutton1, "changed", G_CALLBACK(del_messages_cb), feed);
 
-	radiobutton1 = (GtkWidget *)glade_xml_get_widget (gui, "storage_rb1");
-	radiobutton2 = (GtkWidget *)glade_xml_get_widget (gui, "storage_rb2");
-	radiobutton3 = (GtkWidget *)glade_xml_get_widget (gui, "storage_rb3");
-	radiobutton7 = (GtkWidget *)glade_xml_get_widget (gui, "storage_rb4");
-	radiobutton4 = (GtkWidget *)glade_xml_get_widget (gui, "ttl_global");
-	radiobutton5 = (GtkWidget *)glade_xml_get_widget (gui, "ttl");
-	radiobutton6 = (GtkWidget *)glade_xml_get_widget (gui, "ttl_disabled");
-	ttl_value = (GtkWidget *)glade_xml_get_widget (gui, "ttl_value");
-        image = (GtkImage *)glade_xml_get_widget (gui, "image1");
+	radiobutton1 = GTK_WIDGET (gtk_builder_get_object(gui, "storage_rb1"));
+	radiobutton2 = GTK_WIDGET (gtk_builder_get_object(gui, "storage_rb2"));
+	radiobutton3 = GTK_WIDGET (gtk_builder_get_object(gui, "storage_rb3"));
+	radiobutton7 = GTK_WIDGET (gtk_builder_get_object(gui, "storage_rb4"));
+	radiobutton4 = GTK_WIDGET (gtk_builder_get_object(gui, "ttl_global"));
+	radiobutton5 = GTK_WIDGET (gtk_builder_get_object(gui, "ttl"));
+	radiobutton6 = GTK_WIDGET (gtk_builder_get_object(gui, "ttl_disabled"));
+	ttl_value = GTK_WIDGET (gtk_builder_get_object(gui, "ttl_value"));
+        image = (GtkImage *)gtk_builder_get_object (gui, "image1");
 	gtk_spin_button_set_range((GtkSpinButton *)ttl_value, 0, (guint)MAX_TTL);
 
 	/*set feed icon*/
@@ -527,7 +532,7 @@ build_dialog_add(gchar *url, gchar *feed_text)
 		gtk_spin_button_set_value(GTK_SPIN_BUTTON(spinbutton2), feed->del_days);
 	g_signal_connect(spinbutton2, "changed", G_CALLBACK(del_days_cb), feed);
 
-	checkbutton4 = (GtkWidget *)glade_xml_get_widget (gui, "storage_unread");
+	checkbutton4 = GTK_WIDGET (gtk_builder_get_object(gui, "storage_unread"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (checkbutton4), del_unread);
 
 	gtk_spin_button_set_value(GTK_SPIN_BUTTON(ttl_value), feed->ttl);
@@ -548,9 +553,9 @@ build_dialog_add(gchar *url, gchar *feed_text)
 		break;
 	}
 
-	authuser = (GtkWidget *)glade_xml_get_widget (gui, "auth_user");
-	authpass = (GtkWidget *)glade_xml_get_widget (gui, "auth_pass");
-	useauth = (GtkToggleButton *)glade_xml_get_widget (gui, "use_auth");
+	authuser = GTK_WIDGET (gtk_builder_get_object(gui, "auth_user"));
+	authpass = GTK_WIDGET (gtk_builder_get_object(gui, "auth_pass"));
+	useauth = (GtkToggleButton*)gtk_builder_get_object(gui, "use_auth");
 
 	if (url && read_up(url)) {
 		gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (useauth), 1);
@@ -562,12 +567,12 @@ build_dialog_add(gchar *url, gchar *feed_text)
 	gtk_widget_set_sensitive(authpass, auth_enabled);
 	g_signal_connect(useauth, "toggled", G_CALLBACK(disable_widget_cb), gui);
 
-	ok = (GtkWidget *)glade_xml_get_widget (gui, "ok_button");
+	ok = GTK_WIDGET (gtk_builder_get_object(gui, "ok_button"));
 	/*Gtk-CRITICAL **: gtk_box_pack: assertion `child->parent == NULL' failed*/
 	gtk_dialog_add_action_widget (GTK_DIALOG (dialog1), ok, GTK_RESPONSE_OK);
 	GTK_WIDGET_SET_FLAGS (ok, GTK_CAN_DEFAULT);
 
-	cancel = (GtkWidget *)glade_xml_get_widget (gui, "cancel_button");
+	cancel = GTK_WIDGET (gtk_builder_get_object(gui, "cancel_button"));
 	gtk_dialog_add_action_widget (GTK_DIALOG (dialog1), cancel, GTK_RESPONSE_CANCEL);
 	GTK_WIDGET_SET_FLAGS (cancel, GTK_CAN_DEFAULT);
 
@@ -591,21 +596,21 @@ build_dialog_add(gchar *url, gchar *feed_text)
 void
 actions_dialog_add(add_feed *feed, gchar *url)
 {
-        GtkWidget *entry1 = (GtkWidget *)glade_xml_get_widget (feed->gui, "url_entry");
-	GtkWidget *checkbutton1 = (GtkWidget *)glade_xml_get_widget (feed->gui, "html_check");
-	GtkWidget *checkbutton2 = (GtkWidget *)glade_xml_get_widget (feed->gui, "enabled_check");
-	GtkWidget *checkbutton3 = (GtkWidget *)glade_xml_get_widget (feed->gui, "validate_check");
-	GtkWidget *checkbutton4 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_unread");
-	GtkWidget *radiobutton1 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_rb1");
-	GtkWidget *radiobutton2 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_rb2");
-	GtkWidget *radiobutton3 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_rb3");
-	GtkWidget *radiobutton7 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_rb4");
-	GtkWidget *radiobutton4 = (GtkWidget *)glade_xml_get_widget (feed->gui, "ttl_global");
-	GtkWidget *radiobutton5 = (GtkWidget *)glade_xml_get_widget (feed->gui, "ttl");
-	GtkWidget *radiobutton6 = (GtkWidget *)glade_xml_get_widget (feed->gui, "ttl_disabled");
-	GtkWidget *spinbutton1 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_sb1");
-	GtkWidget *spinbutton2 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_sb2");
-	GtkWidget *ttl_value = (GtkWidget *)glade_xml_get_widget (feed->gui, "ttl_value");
+        GtkWidget *entry1 = GTK_WIDGET (gtk_builder_get_object(feed->gui, "url_entry"));
+	GtkWidget *checkbutton1 = GTK_WIDGET (gtk_builder_get_object(feed->gui, "html_check"));
+	GtkWidget *checkbutton2 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "enabled_check"));
+	GtkWidget *checkbutton3 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "validate_check"));
+	GtkWidget *checkbutton4 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_unread"));
+	GtkWidget *radiobutton1 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_rb1"));
+	GtkWidget *radiobutton2 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_rb2"));
+	GtkWidget *radiobutton3 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_rb3"));
+	GtkWidget *radiobutton7 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_rb4"));
+	GtkWidget *radiobutton4 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "ttl_global"));
+	GtkWidget *radiobutton5 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "ttl"));
+	GtkWidget *radiobutton6 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "ttl_disabled"));
+	GtkWidget *spinbutton1 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_sb1"));
+	GtkWidget *spinbutton2 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_sb2"));
+	GtkWidget *ttl_value = GTK_WIDGET (gtk_builder_get_object (feed->gui, "ttl_value"));
 	gboolean fhtml = feed->fetch_html;
 	guint i=0;
 
@@ -2163,15 +2168,22 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
         UIData *ui = g_new0 (UIData, 1);
         char *gladefile;
 	gdouble adj;
+	GError* error = NULL;
+	gchar *toplevel[] = {(gchar *)"settingsbox", NULL};
+
+
 
         gladefile = g_build_filename (EVOLUTION_GLADEDIR,
                         "rss-html-rendering.glade",
                         NULL);
-        ui->xml = glade_xml_new (gladefile, "settingsbox", GETTEXT_PACKAGE);
+	ui->xml = gtk_builder_new ();
+	if (!gtk_builder_add_objects_from_file (ui->xml, gladefile, toplevel, &error)) {
+		g_warning ("Couldn't load builder file: %s", error->message);
+		g_error_free (error);
+	}
         g_free (gladefile);
 
-
-	ui->combobox = glade_xml_get_widget(ui->xml, "hbox1");
+	ui->combobox = GTK_WIDGET (gtk_builder_get_object(ui->xml, "hbox1"));
 	renderer = gtk_cell_renderer_text_new ();
         store = gtk_list_store_new(1, G_TYPE_STRING);
 	combo = gtk_combo_box_new_with_model(GTK_TREE_MODEL(store));
@@ -2213,7 +2225,7 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
                                         NULL, NULL);
 
 #if !defined(HAVE_GECKO) && !defined (HAVE_WEBKIT)
-        GtkWidget *label_webkit = glade_xml_get_widget(ui->xml, "label_webkits");
+        GtkWidget *label_webkit = GTK_WIDGET (gtk_builder_get_object(ui->xml, "label_webkits"));
         gtk_label_set_text(GTK_LABEL(label_webkit), _("Note: In order to be able to use Mozilla (Firefox) or Apple Webkit \nas renders you need firefox or webkit devel package \ninstalled and evolution-rss should be recompiled to see those packages."));
         gtk_widget_show(label_webkit);
 #endif
@@ -2221,7 +2233,7 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
         gtk_widget_show(combo);
         gtk_box_pack_start(GTK_BOX(ui->combobox), combo, FALSE, FALSE, 0);
 
-	ui->check = glade_xml_get_widget(ui->xml, "enable_java");
+	ui->check = GTK_WIDGET (gtk_builder_get_object(ui->xml, "enable_java"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ui->check),
 		gconf_client_get_bool(rss_gconf, GCONF_KEY_HTML_JAVA, NULL));
 	g_signal_connect(ui->check,
@@ -2229,7 +2241,7 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
 		G_CALLBACK(start_check_cb),
 		(gpointer)GCONF_KEY_HTML_JAVA);
 
-	ui->check = glade_xml_get_widget(ui->xml, "image_resize");
+	ui->check = GTK_WIDGET (gtk_builder_get_object(ui->xml, "image_resize"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ui->check),
 		gconf_client_get_bool(rss_gconf, GCONF_KEY_IMAGE_RESIZE, NULL));
 	g_signal_connect(ui->check,
@@ -2237,7 +2249,7 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
 		G_CALLBACK(start_check_cb),
 		(gpointer)GCONF_KEY_IMAGE_RESIZE);
 
-	ui->check = glade_xml_get_widget(ui->xml, "enable_js");
+	ui->check = GTK_WIDGET (gtk_builder_get_object(ui->xml, "enable_js"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ui->check),
 		gconf_client_get_bool(rss_gconf, GCONF_KEY_HTML_JS, NULL));
 	g_signal_connect(ui->check,
@@ -2245,14 +2257,14 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
 		G_CALLBACK(start_check_cb),
 		(gpointer)GCONF_KEY_HTML_JS);
 
-	ui->check = glade_xml_get_widget(ui->xml, "accept_cookies");
+	ui->check = GTK_WIDGET (gtk_builder_get_object(ui->xml, "accept_cookies"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ui->check),
 		gconf_client_get_bool(rss_gconf, GCONF_KEY_ACCEPT_COOKIES, NULL));
 	g_signal_connect(ui->check,
 		"clicked",
 		G_CALLBACK(accept_cookies_cb),
 		ui->import);
-	ui->import = glade_xml_get_widget(ui->xml, "import_cookies");
+	ui->import = GTK_WIDGET (gtk_builder_get_object(ui->xml, "import_cookies"));
 	//we have to have ui->import looked up
 
 #if LIBSOUP_VERSION >= 2026000
@@ -2262,7 +2274,7 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
 	gtk_widget_set_sensitive(ui->check, FALSE);
 #endif
 
-	ui->nettimeout = glade_xml_get_widget(ui->xml, "nettimeout");
+	ui->nettimeout = GTK_WIDGET (gtk_builder_get_object(ui->xml, "nettimeout"));
 	adj = gconf_client_get_float(rss_gconf, GCONF_KEY_NETWORK_TIMEOUT, NULL);
 	if (adj < NETWORK_MIN_TIMEOUT) {
 		adj = 60;
@@ -2274,21 +2286,21 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
 	g_signal_connect(ui->nettimeout, "value-changed", G_CALLBACK(network_timeout_cb), ui->nettimeout);
 
 	//feed notification
-	ui->check = glade_xml_get_widget(ui->xml, "status_icon");
+	ui->check = GTK_WIDGET (gtk_builder_get_object(ui->xml, "status_icon"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ui->check),
 		gconf_client_get_bool(rss_gconf, GCONF_KEY_STATUS_ICON, NULL));
 	g_signal_connect(ui->check,
 		"clicked",
 		G_CALLBACK(start_check_cb),
 		(gpointer)GCONF_KEY_STATUS_ICON);
-	ui->check = glade_xml_get_widget(ui->xml, "blink_icon");
+	ui->check = GTK_WIDGET (gtk_builder_get_object(ui->xml, "blink_icon"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ui->check),
 		gconf_client_get_bool(rss_gconf, GCONF_KEY_BLINK_ICON, NULL));
 	g_signal_connect(ui->check,
 		"clicked",
 		G_CALLBACK(start_check_cb),
 		(gpointer)GCONF_KEY_BLINK_ICON);
-	ui->check = glade_xml_get_widget(ui->xml, "feed_icon");
+	ui->check = GTK_WIDGET (gtk_builder_get_object(ui->xml, "feed_icon"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (ui->check),
 		gconf_client_get_bool(rss_gconf, GCONF_KEY_FEED_ICON, NULL));
 	g_signal_connect(ui->check,
@@ -2299,7 +2311,7 @@ e_plugin_lib_get_configure_widget (EPlugin *epl)
         ui->gconf = gconf_client_get_default ();
 	hbox = gtk_vbox_new (FALSE, 0);
 
-        gtk_box_pack_start (GTK_BOX (hbox), glade_xml_get_widget (ui->xml, "settingsbox"), FALSE, FALSE, 0);
+        gtk_box_pack_start (GTK_BOX (hbox), GTK_WIDGET (gtk_builder_get_object(ui->xml, "settingsbox")), FALSE, FALSE, 0);
 
 	g_object_set_data_full (G_OBJECT (hbox), "ui-data", ui, destroy_ui_data);
 
@@ -2351,22 +2363,22 @@ void rss_folder_factory_commit (EPlugin *epl, EConfigTarget *target)
 
 	gtk_widget_set_sensitive(target->config->widget, FALSE);
 
-	entry1 = (GtkWidget *)glade_xml_get_widget (feed->gui, "url_entry");
-	checkbutton1 = (GtkWidget *)glade_xml_get_widget (feed->gui, "html_check");
-	checkbutton2 = (GtkWidget *)glade_xml_get_widget (feed->gui, "enabled_check");
-	checkbutton3 = (GtkWidget *)glade_xml_get_widget (feed->gui, "validate_check");
-	checkbutton4 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_unread");
-	radiobutton1 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_rb1");
-	radiobutton2 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_rb2");
-	radiobutton3 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_rb3");
-        radiobutton4 = (GtkWidget *)glade_xml_get_widget (feed->gui, "ttl_global");
-        radiobutton5 = (GtkWidget *)glade_xml_get_widget (feed->gui, "ttl");
-        radiobutton6 = (GtkWidget *)glade_xml_get_widget (feed->gui, "ttl_disabled");
-	radiobutton7 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_rb4");
-	spinbutton1 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_sb1");
-	spinbutton2 = (GtkWidget *)glade_xml_get_widget (feed->gui, "storage_sb2");
-        ttl_value = (GtkWidget *)glade_xml_get_widget (feed->gui, "ttl_value");
-        feed_name_entry = (GtkWidget *)glade_xml_get_widget (feed->gui, "feed_name");
+	entry1 = GTK_WIDGET (gtk_builder_get_object(feed->gui, "url_entry"));
+	checkbutton1 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "html_check"));
+	checkbutton2 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "enabled_check"));
+	checkbutton3 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "validate_check"));
+	checkbutton4 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_unread"));
+	radiobutton1 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_rb1"));
+	radiobutton2 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_rb2"));
+	radiobutton3 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_rb3"));
+        radiobutton4 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "ttl_global"));
+        radiobutton5 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "ttl"));
+        radiobutton6 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "ttl_disabled"));
+	radiobutton7 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_rb4"));
+	spinbutton1 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_sb1"));
+	spinbutton2 = GTK_WIDGET (gtk_builder_get_object (feed->gui, "storage_sb2"));
+        ttl_value = (GtkWidget *)GTK_WIDGET (gtk_builder_get_object (feed->gui, "ttl_value"));
+        feed_name_entry = (GtkWidget *)GTK_WIDGET (gtk_builder_get_object (feed->gui, "feed_name"));
 	feed_name = g_strdup(gtk_entry_get_text(GTK_ENTRY(feed_name_entry)));
 
 
@@ -2427,9 +2439,9 @@ void rss_folder_factory_commit (EPlugin *epl, EConfigTarget *target)
 
 	process_dialog_edit(feed, url, ofolder);
 
-	authuser = (GtkWidget *)glade_xml_get_widget (feed->gui, "auth_user");
-	authpass = (GtkWidget *)glade_xml_get_widget (feed->gui, "auth_pass");
-	useauth = (GtkWidget *)glade_xml_get_widget (feed->gui, "use_auth");
+	authuser = GTK_WIDGET (gtk_builder_get_object(feed->gui, "auth_user"));
+	authpass = GTK_WIDGET (gtk_builder_get_object(feed->gui, "auth_pass"));
+	useauth = GTK_WIDGET (gtk_builder_get_object(feed->gui, "use_auth"));
 
 	user = gtk_entry_get_text(GTK_ENTRY(authuser));
 	pass = gtk_entry_get_text(GTK_ENTRY(authpass));
@@ -2496,7 +2508,7 @@ rss_folder_factory (EPlugin *epl, EConfigHookItemFactoryData *data)
 		g_object_set_data_full (G_OBJECT (epl), "add-feed", feed, NULL);
 		g_object_set_data_full (G_OBJECT (epl), "url", url, NULL);
 		g_object_set_data_full (G_OBJECT (epl), "ofolder", ofolder, NULL);
-		ok = (GtkWidget *)glade_xml_get_widget (feed->gui, "ok_button");
+		ok = GTK_WIDGET (gtk_builder_get_object(feed->gui, "ok_button"));
 
 		gtk_widget_add_accelerator (ok, "activate", accel_group,
                               GDK_Return, (GdkModifierType) 0,
@@ -2541,6 +2553,7 @@ rss_config_control_new (void)
 	GtkTreeSelection *selection;
 	GtkTreeViewColumn *column;
 	gdouble adj;
+	GError* error = NULL;
 
 	d(g_print("rf->%p\n", rf));
 	sf = g_new0(setupfeed, 1);
@@ -2548,10 +2561,14 @@ rss_config_control_new (void)
         gladefile = g_build_filename (EVOLUTION_GLADEDIR,
                                       "rss-ui.glade",
                                       NULL);
-        sf->gui = glade_xml_new (gladefile, NULL, GETTEXT_PACKAGE);
+	sf->gui = gtk_builder_new ();
+	if (!gtk_builder_add_from_file (sf->gui, gladefile, &error)) {
+		g_warning ("Couldn't load builder file: %s", error->message);
+		g_error_free (error);
+	}
         g_free (gladefile);
 
-	treeview = (GtkTreeView *)glade_xml_get_widget (sf->gui, "feeds-treeview");
+	treeview = (GtkTreeView *)gtk_builder_get_object(sf->gui, "feeds-treeview");
 	rf->treeview = (GtkWidget *)treeview;
 	sf->treeview = (GtkWidget *)treeview;
 
@@ -2622,23 +2639,23 @@ rss_config_control_new (void)
 			G_CALLBACK(treeview_row_activated),
 			treeview);
 
-       button1 = glade_xml_get_widget (sf->gui, "feed-add-button");
+       button1 = GTK_WIDGET (gtk_builder_get_object(sf->gui, "feed-add-button"));
        g_signal_connect(button1, "clicked", G_CALLBACK(feeds_dialog_add), treeview);
 
-       button2 = glade_xml_get_widget (sf->gui, "feed-edit-button");
+       button2 = GTK_WIDGET (gtk_builder_get_object(sf->gui, "feed-edit-button"));
        g_signal_connect(button2, "clicked", G_CALLBACK(feeds_dialog_edit), treeview);
 
-       button3 = glade_xml_get_widget (sf->gui, "feed-delete-button");
+       button3 = GTK_WIDGET (gtk_builder_get_object(sf->gui, "feed-delete-button"));
        g_signal_connect(button3, "clicked", G_CALLBACK(feeds_dialog_delete), treeview);
 
 
-	rf->preferences = glade_xml_get_widget (sf->gui, "rss-config-control");
-	sf->add_feed = glade_xml_get_widget (sf->gui, "add-feed-dialog");
-	sf->check1 = glade_xml_get_widget(sf->gui, "checkbutton1");
-	sf->check2 = glade_xml_get_widget(sf->gui, "checkbutton2");
-	sf->check3 = glade_xml_get_widget(sf->gui, "checkbutton3");
-	sf->check4 = glade_xml_get_widget(sf->gui, "checkbutton4");
-	sf->spin = glade_xml_get_widget(sf->gui, "spinbutton1");
+	rf->preferences = GTK_WIDGET (gtk_builder_get_object(sf->gui, "rss-config-control"));
+	sf->add_feed = GTK_WIDGET (gtk_builder_get_object(sf->gui, "add-feed-dialog"));
+	sf->check1 = GTK_WIDGET (gtk_builder_get_object(sf->gui, "checkbutton1"));
+	sf->check2 = GTK_WIDGET (gtk_builder_get_object(sf->gui, "checkbutton2"));
+	sf->check3 = GTK_WIDGET (gtk_builder_get_object(sf->gui, "checkbutton3"));
+	sf->check4 = GTK_WIDGET (gtk_builder_get_object(sf->gui, "checkbutton4"));
+	sf->spin = GTK_WIDGET (gtk_builder_get_object(sf->gui, "spinbutton1"));
 
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (sf->check1),
 		gconf_client_get_bool(rss_gconf, GCONF_KEY_REP_CHECK, NULL));
@@ -2672,14 +2689,14 @@ rss_config_control_new (void)
 #if (EVOLUTION_VERSION < 21900)		// include devel too
 
 	/*first make the tab visible */
-	g_object_set(glade_xml_get_widget(sf->gui, "label_HTML"),
+	g_object_set(GTK_WIDGET (gtk_builder_get_object(sf->gui, "label_HTML")),
 					"visible", TRUE,
 					NULL);
-	g_object_set(glade_xml_get_widget(sf->gui, "vbox_HTML"),
+	g_object_set(GTK_WIDGET (gtk_builder_get_object(sf->gui, "vbox_HTML")),
 					"visible", TRUE,
 					NULL);
 	/* HTML tab */
-	sf->combo_hbox = glade_xml_get_widget(sf->gui, "hbox17");
+	sf->combo_hbox = GTK_WIDGET (gtk_builder_get_object(sf->gui, "hbox17"));
 	GtkCellRenderer *renderer = gtk_cell_renderer_text_new ();
         store = gtk_list_store_new(1, G_TYPE_STRING);
 	GtkWidget *combo = gtk_combo_box_new_with_model(GTK_TREE_MODEL(store));
@@ -2721,7 +2738,7 @@ rss_config_control_new (void)
 					NULL, NULL);
 
 #if !defined(HAVE_GECKO) && !defined (HAVE_WEBKIT)
-	GtkWidget *label_webkit = glade_xml_get_widget(sf->gui, "label_webkits");
+	GtkWidget *label_webkit = GTK_WIDGET (gtk_builder_get_object(sf->gui, "label_webkits"));
 	gtk_label_set_text(GTK_LABEL(label_webkit), _("Note: In order to be able to use Mozilla (Firefox) or Apple Webkit \nas renders you need firefox or webkit devel package \ninstalled and evolution-rss should be recompiled to see those packages."));
 	gtk_widget_show(label_webkit);
 #endif
@@ -2732,18 +2749,18 @@ rss_config_control_new (void)
 
 #if (EVOLUTION_VERSION < 22200)		// include devel too
 	/*first make the tab visible */
-	g_object_set(glade_xml_get_widget(sf->gui, "label_HTML"),
+	g_object_set(GTK_WIDGET (gtk_builder_get_object(sf->gui, "label_HTML")),
 					"visible", TRUE,
 					NULL);
-	g_object_set(glade_xml_get_widget(sf->gui, "vbox_HTML"),
+	g_object_set(GTK_WIDGET (gtk_builder_get_object(sf->gui, "vbox_HTML")),
 					"visible", TRUE,
 					NULL);
 	/* Network tab */
-	sf->use_proxy = glade_xml_get_widget(sf->gui, "use_proxy");
-	sf->host_proxy = glade_xml_get_widget(sf->gui, "host_proxy");
-	sf->port_proxy = glade_xml_get_widget(sf->gui, "port_proxy");
-	sf->details = glade_xml_get_widget(sf->gui, "details");
-	sf->proxy_details = glade_xml_get_widget(sf->gui, "http-proxy-details");
+	sf->use_proxy = GTK_WIDGET (gtk_builder_get_object(sf->gui, "use_proxy"));
+	sf->host_proxy = GTK_WIDGET (gtk_builder_get_object(sf->gui, "host_proxy"));
+	sf->port_proxy = GTK_WIDGET (gtk_builder_get_object(sf->gui, "port_proxy"));
+	sf->details = GTK_WIDGET (gtk_builder_get_object(sf->gui, "details"));
+	sf->proxy_details = GTK_WIDGET (gtk_builder_get_object(sf->gui, "http-proxy-details"));
 
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (sf->use_proxy),
 		gconf_client_get_bool(rss_gconf, GCONF_KEY_USE_PROXY, NULL));
@@ -2753,12 +2770,12 @@ rss_config_control_new (void)
 
 
 
-	sf->import = glade_xml_get_widget(sf->gui, "import");
-	sf->export = glade_xml_get_widget(sf->gui, "export");
+	sf->import = GTK_WIDGET (gtk_builder_get_object(sf->gui, "import"));
+	sf->export = GTK_WIDGET (gtk_builder_get_object(sf->gui, "export"));
 	g_signal_connect(sf->import, "clicked", G_CALLBACK(import_cb), sf->import);
 	g_signal_connect(sf->export, "clicked", G_CALLBACK(export_cb), sf->export);
 
-        control_widget = glade_xml_get_widget (sf->gui, "feeds-notebook");
+        control_widget = GTK_WIDGET (gtk_builder_get_object(sf->gui, "feeds-notebook"));
 	g_object_ref (control_widget);
 
         gtk_container_remove (GTK_CONTAINER (control_widget->parent), control_widget);
diff --git a/src/rss-config-factory.h b/src/rss-config-factory.h
index d819496..374ff90 100644
--- a/src/rss-config-factory.h
+++ b/src/rss-config-factory.h
@@ -30,7 +30,7 @@ void remove_feed_hash(gpointer name);
 void init_rss_prefs(void);
 void accept_cookies_cb(GtkWidget *widget, GtkWidget *data);
 void del_messages_cb (GtkWidget *widget, add_feed *data);
-void disable_widget_cb(GtkWidget *widget, GladeXML *data);
+void disable_widget_cb(GtkWidget *widget, GtkBuilder *data);
 add_feed *build_dialog_add(gchar *url, gchar *feed_text);
 void actions_dialog_add(add_feed *feed, gchar *url);
 add_feed *create_dialog_add(gchar *url, gchar *feed_text);
diff --git a/src/rss-html-rendering.glade b/src/rss-html-rendering.glade
index 7f2f852..6b0f71f 100644
--- a/src/rss-html-rendering.glade
+++ b/src/rss-html-rendering.glade
@@ -1,34 +1,34 @@
 <?xml version="1.0"?>
-<glade-interface>
-  <!-- interface-requires gtk+ 2.16 -->
+<interface>
+  <requires lib="gtk+" version="2.16"/>
   <!-- interface-naming-policy toplevel-contextual -->
-  <widget class="GtkWindow" id="window1">
+  <object class="GtkWindow" id="window1">
     <child>
-      <widget class="GtkVBox" id="settingsbox">
+      <object class="GtkVBox" id="settingsbox">
         <property name="visible">True</property>
         <child>
-          <widget class="GtkFrame" id="html-rendering">
+          <object class="GtkFrame" id="html-rendering">
             <property name="visible">True</property>
             <property name="label_xalign">0</property>
             <child>
-              <widget class="GtkAlignment" id="alignment1">
+              <object class="GtkAlignment" id="alignment1">
                 <property name="visible">True</property>
                 <property name="top_padding">2</property>
                 <property name="left_padding">12</property>
                 <child>
-                  <widget class="GtkVBox" id="vbox1">
+                  <object class="GtkVBox" id="vbox1">
                     <property name="visible">True</property>
                     <property name="homogeneous">True</property>
                     <child>
-                      <widget class="GtkHBox" id="hbox1">
+                      <object class="GtkHBox" id="hbox1">
                         <property name="visible">True</property>
                         <property name="spacing">10</property>
                         <child>
-                          <widget class="GtkLabel" id="label3">
+                          <object class="GtkLabel" id="label3">
                             <property name="visible">True</property>
                             <property name="label" translatable="yes">&lt;b&gt;Engine: &lt;/b&gt;</property>
                             <property name="use_markup">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -38,7 +38,7 @@
                         <child>
                           <placeholder/>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -46,234 +46,228 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox2">
+                      <object class="GtkVBox" id="vbox2">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkCheckButton" id="checkbutton1">
+                          <object class="GtkCheckButton" id="checkbutton1">
                             <property name="label" translatable="yes">Block pop-up windows</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">0</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" id="enable_java">
+                          <object class="GtkCheckButton" id="enable_java">
                             <property name="label" translatable="yes">Enable Java</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" id="enable_js">
+                          <object class="GtkCheckButton" id="enable_js">
                             <property name="label" translatable="yes">Enable JavaScript</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">2</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkHBox" id="hbox3">
+                          <object class="GtkHBox" id="hbox3">
                             <property name="visible">True</property>
                             <property name="spacing">5</property>
                             <child>
-                              <widget class="GtkCheckButton" id="accept_cookies">
+                              <object class="GtkCheckButton" id="accept_cookies">
                                 <property name="label" translatable="yes">Accept cookies from sites</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkButton" id="import_cookies">
+                              <object class="GtkButton" id="import_cookies">
                                 <property name="label" translatable="yes">Import Cookies</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_underline">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">3</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkCheckButton" id="image_resize">
+                          <object class="GtkCheckButton" id="image_resize">
                             <property name="label" translatable="yes">Automatically resize images</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
                             <property name="position">4</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="position">1</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox2">
+                      <object class="GtkHBox" id="hbox2">
                         <property name="visible">True</property>
                         <property name="spacing">10</property>
                         <child>
-                          <widget class="GtkLabel" id="label2">
+                          <object class="GtkLabel" id="label2">
                             <property name="visible">True</property>
                             <property name="label" translatable="yes">&lt;b&gt;Network timeout:&lt;/b&gt;</property>
                             <property name="use_markup">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="position">0</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkSpinButton" id="nettimeout">
+                          <object class="GtkSpinButton" id="nettimeout">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="adjustment">60 60 3600 1 10 10</property>
+                            <property name="adjustment">adjustment1</property>
                             <property name="climb_rate">1</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkLabel" id="label4">
+                          <object class="GtkLabel" id="label4">
                             <property name="visible">True</property>
                             <property name="label" translatable="yes">seconds</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="position">2</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="fill">False</property>
                         <property name="padding">2</property>
                         <property name="position">2</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                 </child>
-              </widget>
+              </object>
             </child>
-            <child>
-              <widget class="GtkLabel" id="label1">
+            <child type="label">
+              <object class="GtkLabel" id="label1">
                 <property name="visible">True</property>
                 <property name="label" translatable="yes">&lt;b&gt;HTML Rendering&lt;/b&gt;</property>
                 <property name="use_markup">True</property>
-              </widget>
-              <packing>
-                <property name="type">label_item</property>
-              </packing>
+              </object>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">0</property>
           </packing>
         </child>
         <child>
-          <widget class="GtkFrame" id="frame1">
+          <object class="GtkFrame" id="frame1">
             <property name="visible">True</property>
             <property name="label_xalign">0</property>
             <child>
-              <widget class="GtkAlignment" id="alignment2">
+              <object class="GtkAlignment" id="alignment2">
                 <property name="visible">True</property>
                 <property name="left_padding">12</property>
                 <child>
-                  <widget class="GtkVBox" id="vbox3">
+                  <object class="GtkVBox" id="vbox3">
                     <property name="visible">True</property>
                     <child>
-                      <widget class="GtkCheckButton" id="status_icon">
+                      <object class="GtkCheckButton" id="status_icon">
                         <property name="label" translatable="yes">Show icon in notification area</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
                         <property name="draw_indicator">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="position">0</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkAlignment" id="alignment3">
+                      <object class="GtkAlignment" id="alignment3">
                         <property name="visible">True</property>
                         <property name="xscale">0.80000001192092896</property>
                         <child>
-                          <widget class="GtkCheckButton" id="blink_icon">
+                          <object class="GtkCheckButton" id="blink_icon">
                             <property name="label" translatable="yes">Blink icon in notification area</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="position">1</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="feed_icon">
+                      <object class="GtkCheckButton" id="feed_icon">
                         <property name="label" translatable="yes">Show feed icon</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
                         <property name="draw_indicator">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="position">2</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                 </child>
-              </widget>
+              </object>
             </child>
-            <child>
-              <widget class="GtkLabel" id="label5">
+            <child type="label">
+              <object class="GtkLabel" id="label5">
                 <property name="visible">True</property>
                 <property name="label" translatable="yes">&lt;b&gt;Article Notification&lt;/b&gt;</property>
                 <property name="use_markup">True</property>
-              </widget>
-              <packing>
-                <property name="type">label_item</property>
-              </packing>
+              </object>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">1</property>
           </packing>
@@ -281,7 +275,15 @@
         <child>
           <placeholder/>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-</glade-interface>
+  </object>
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="value">60</property>
+    <property name="lower">60</property>
+    <property name="upper">3600</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+    <property name="page_size">10</property>
+  </object>
+</interface>
diff --git a/src/rss-ui.glade b/src/rss-ui.glade
index 74c4f3e..f29f470 100644
--- a/src/rss-ui.glade
+++ b/src/rss-ui.glade
@@ -1,68 +1,87 @@
 <?xml version="1.0"?>
-<glade-interface>
-  <!-- interface-requires gtk+ 2.16 -->
+<interface>
+  <requires lib="gtk+" version="2.16"/>
   <!-- interface-naming-policy toplevel-contextual -->
-  <widget class="GtkWindow" id="rss-config-control">
+  <object class="GtkListStore" id="liststore1">
+    <columns>
+      <!-- column-name item -->
+      <column type="gchararray"/>
+    </columns>
+    <data>
+      <row>
+        <col id="0" translatable="yes">minutes</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">hours</col>
+      </row>
+      <row>
+        <col id="0" translatable="yes">days</col>
+      </row>
+    </data>
+  </object>
+  <object class="GtkWindow" id="rss-config-control">
     <property name="title" translatable="yes">window1</property>
     <child>
-      <widget class="GtkNotebook" id="feeds-notebook">
+      <object class="GtkNotebook" id="feeds-notebook">
         <property name="visible">True</property>
         <property name="can_focus">True</property>
         <child>
-          <widget class="GtkVBox" id="vbox4">
+          <object class="GtkVBox" id="vbox4">
             <property name="visible">True</property>
             <property name="border_width">6</property>
             <property name="spacing">6</property>
             <child>
-              <widget class="GtkHBox" id="hbox6">
+              <object class="GtkHBox" id="hbox6">
                 <property name="visible">True</property>
                 <property name="spacing">6</property>
                 <child>
-                  <widget class="GtkScrolledWindow" id="scrolledwindow4">
+                  <object class="GtkScrolledWindow" id="scrolledwindow4">
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="hscrollbar_policy">automatic</property>
                     <property name="vscrollbar_policy">automatic</property>
                     <property name="shadow_type">in</property>
                     <child>
-                      <widget class="GtkTreeView" id="feeds-treeview">
+                      <object class="GtkTreeView" id="feeds-treeview">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <accessibility>
-                          <atkproperty name="AtkObject::accessible-name" translatable="yes">Certificates Table</atkproperty>
-                        </accessibility>
-                      </widget>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" id="feeds-treeview-atkobject">
+                            <property name="AtkObject::accessible-name" translatable="yes">Certificates Table</property>
+                          </object>
+                        </child>
+                      </object>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="position">0</property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVButtonBox" id="vbuttonbox1">
+                  <object class="GtkVButtonBox" id="vbuttonbox1">
                     <property name="visible">True</property>
                     <property name="spacing">6</property>
                     <property name="layout_style">start</property>
                     <child>
-                      <widget class="GtkButton" id="feed-add-button">
+                      <object class="GtkButton" id="feed-add-button">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="can_default">True</property>
                         <property name="receives_default">False</property>
                         <child>
-                          <widget class="GtkAlignment" id="alignment5">
+                          <object class="GtkAlignment" id="alignment5">
                             <property name="visible">True</property>
                             <property name="xscale">0</property>
                             <property name="yscale">0</property>
                             <child>
-                              <widget class="GtkHBox" id="hbox9">
+                              <object class="GtkHBox" id="hbox9">
                                 <property name="visible">True</property>
                                 <property name="spacing">2</property>
                                 <child>
-                                  <widget class="GtkImage" id="image5">
+                                  <object class="GtkImage" id="image5">
                                     <property name="visible">True</property>
                                     <property name="stock">gtk-add</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -70,22 +89,22 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label69">
+                                  <object class="GtkLabel" id="label69">
                                     <property name="visible">True</property>
                                     <property name="label" translatable="yes">Add</property>
                                     <property name="use_underline">True</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                             </child>
-                          </widget>
+                          </object>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -93,25 +112,25 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkButton" id="feed-edit-button">
+                      <object class="GtkButton" id="feed-edit-button">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="can_default">True</property>
                         <property name="receives_default">False</property>
                         <child>
-                          <widget class="GtkAlignment" id="alignment6">
+                          <object class="GtkAlignment" id="alignment6">
                             <property name="visible">True</property>
                             <property name="xscale">0</property>
                             <property name="yscale">0</property>
                             <child>
-                              <widget class="GtkHBox" id="hbox10">
+                              <object class="GtkHBox" id="hbox10">
                                 <property name="visible">True</property>
                                 <property name="spacing">2</property>
                                 <child>
-                                  <widget class="GtkImage" id="image6">
+                                  <object class="GtkImage" id="image6">
                                     <property name="visible">True</property>
                                     <property name="stock">gtk-properties</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -119,22 +138,22 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label70">
+                                  <object class="GtkLabel" id="label70">
                                     <property name="visible">True</property>
                                     <property name="label" translatable="yes">Edit</property>
                                     <property name="use_underline">True</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                             </child>
-                          </widget>
+                          </object>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -142,14 +161,14 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkButton" id="feed-delete-button">
+                      <object class="GtkButton" id="feed-delete-button">
                         <property name="label">gtk-delete</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="can_default">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_stock">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -157,25 +176,25 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkButton" id="import">
+                      <object class="GtkButton" id="import">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="can_default">True</property>
                         <property name="receives_default">False</property>
                         <child>
-                          <widget class="GtkAlignment" id="alignment7">
+                          <object class="GtkAlignment" id="alignment7">
                             <property name="visible">True</property>
                             <property name="xscale">0</property>
                             <property name="yscale">0</property>
                             <child>
-                              <widget class="GtkHBox" id="hbox16">
+                              <object class="GtkHBox" id="hbox16">
                                 <property name="visible">True</property>
                                 <property name="spacing">2</property>
                                 <child>
-                                  <widget class="GtkImage" id="image7">
+                                  <object class="GtkImage" id="image7">
                                     <property name="visible">True</property>
                                     <property name="stock">gtk-convert</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -183,22 +202,22 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="importlabel">
+                                  <object class="GtkLabel" id="importlabel">
                                     <property name="visible">True</property>
                                     <property name="label" translatable="yes">Import</property>
                                     <property name="use_underline">True</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                             </child>
-                          </widget>
+                          </object>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -206,56 +225,55 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkButton" id="export">
+                      <object class="GtkButton" id="export">
                         <property name="label" translatable="yes">Export</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="can_default">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
                         <property name="position">4</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="position">1</property>
                   </packing>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="position">0</property>
               </packing>
             </child>
-          </widget>
+          </object>
         </child>
-        <child>
-          <widget class="GtkLabel" id="label_FEEDS">
+        <child type="tab">
+          <object class="GtkLabel" id="label_FEEDS">
             <property name="visible">True</property>
             <property name="label" translatable="yes">Feeds</property>
-          </widget>
+          </object>
           <packing>
             <property name="tab_fill">False</property>
-            <property name="type">tab</property>
           </packing>
         </child>
         <child>
-          <widget class="GtkVBox" id="vbox_HTML">
+          <object class="GtkVBox" id="vbox_HTML">
             <property name="border_width">12</property>
             <property name="spacing">12</property>
             <child>
-              <widget class="GtkVBox" id="vbox24">
+              <object class="GtkVBox" id="vbox24">
                 <property name="visible">True</property>
                 <child>
-                  <widget class="GtkLabel" id="label94">
+                  <object class="GtkLabel" id="label94">
                     <property name="visible">True</property>
                     <property name="label" translatable="yes">&lt;b&gt;HTML Rendering&lt;/b&gt;</property>
                     <property name="use_markup">True</property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">False</property>
@@ -263,17 +281,17 @@
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox25">
+                  <object class="GtkVBox" id="vbox25">
                     <property name="visible">True</property>
                     <property name="spacing">5</property>
                     <child>
-                      <widget class="GtkHBox" id="hbox17">
+                      <object class="GtkHBox" id="hbox17">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkLabel" id="label95">
+                          <object class="GtkLabel" id="label95">
                             <property name="visible">True</property>
                             <property name="label" translatable="yes">Engine: </property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -283,43 +301,43 @@
                         <child>
                           <placeholder/>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="position">0</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox18">
+                      <object class="GtkHBox" id="hbox18">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkCheckButton" id="checkbutton7">
+                          <object class="GtkCheckButton" id="checkbutton7">
                             <property name="label" translatable="yes">Enable JavaScript</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
                             <property name="position">0</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="position">1</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="checkbutton8">
+                      <object class="GtkCheckButton" id="checkbutton8">
                         <property name="label" translatable="yes">Enable Plugins</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
                         <property name="draw_indicator">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -327,55 +345,54 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label_webkits">
+                      <object class="GtkLabel" id="label_webkits">
                         <property name="label" translatable="yes">label</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
                         <property name="position">3</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="position">1</property>
                   </packing>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="position">0</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">1</property>
           </packing>
         </child>
-        <child>
-          <widget class="GtkLabel" id="label_HTML">
+        <child type="tab">
+          <object class="GtkLabel" id="label_HTML">
             <property name="label" translatable="yes">HTML</property>
-          </widget>
+          </object>
           <packing>
             <property name="position">1</property>
             <property name="tab_fill">False</property>
-            <property name="type">tab</property>
           </packing>
         </child>
         <child>
-          <widget class="GtkVBox" id="vbox12">
+          <object class="GtkVBox" id="vbox12">
             <property name="visible">True</property>
             <property name="border_width">12</property>
             <property name="spacing">12</property>
             <child>
-              <widget class="GtkVBox" id="vbox13">
+              <object class="GtkVBox" id="vbox13">
                 <property name="visible">True</property>
                 <property name="spacing">6</property>
                 <child>
-                  <widget class="GtkLabel" id="label80">
+                  <object class="GtkLabel" id="label80">
                     <property name="visible">True</property>
                     <property name="label" translatable="yes">&lt;span weight="bold"&gt;Settings&lt;/span&gt;</property>
                     <property name="use_markup">True</property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">False</property>
@@ -383,20 +400,20 @@
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkVBox" id="vbox14">
+                  <object class="GtkVBox" id="vbox14">
                     <property name="visible">True</property>
                     <child>
-                      <widget class="GtkHBox" id="hbox15">
+                      <object class="GtkHBox" id="hbox15">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkCheckButton" id="checkbutton1">
+                          <object class="GtkCheckButton" id="checkbutton1">
                             <property name="label" translatable="yes">Check for new articles every</property>
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
                             <property name="receives_default">False</property>
                             <property name="use_underline">True</property>
                             <property name="draw_indicator">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
@@ -404,30 +421,30 @@
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkSpinButton" id="spinbutton1">
+                          <object class="GtkSpinButton" id="spinbutton1">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="adjustment">1 1 100 1 10 0</property>
+                            <property name="adjustment">adjustment5</property>
                             <property name="climb_rate">1</property>
                             <property name="numeric">True</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="position">1</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkLabel" id="label78">
+                          <object class="GtkLabel" id="label78">
                             <property name="visible">True</property>
                             <property name="label" translatable="yes" comments="to translators: label part of Check for new articles every X minutes&quot; message">minutes</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="expand">False</property>
                             <property name="fill">False</property>
                             <property name="position">2</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -435,14 +452,14 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="checkbutton2">
+                      <object class="GtkCheckButton" id="checkbutton2">
                         <property name="label" translatable="yes">Check for new articles at startup</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
                         <property name="draw_indicator">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -450,14 +467,14 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="checkbutton3">
+                      <object class="GtkCheckButton" id="checkbutton3">
                         <property name="label" translatable="yes">By default show article summary instead of webpage</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
                         <property name="draw_indicator">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
@@ -465,63 +482,62 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkCheckButton" id="checkbutton4">
+                      <object class="GtkCheckButton" id="checkbutton4">
                         <property name="label" translatable="yes">Show article comments</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="draw_indicator">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">False</property>
                         <property name="position">3</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="position">1</property>
                   </packing>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="position">0</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">2</property>
           </packing>
         </child>
-        <child>
-          <widget class="GtkLabel" id="label_SETUP">
+        <child type="tab">
+          <object class="GtkLabel" id="label_SETUP">
             <property name="visible">True</property>
             <property name="label" translatable="yes">Setup</property>
-          </widget>
+          </object>
           <packing>
             <property name="position">2</property>
             <property name="tab_fill">False</property>
-            <property name="type">tab</property>
           </packing>
         </child>
         <child>
-          <widget class="GtkVBox" id="vbox_NETWORK">
+          <object class="GtkVBox" id="vbox_NETWORK">
             <property name="border_width">12</property>
             <property name="spacing">12</property>
             <child>
-              <widget class="GtkVBox" id="vbox18">
+              <object class="GtkVBox" id="vbox18">
                 <property name="visible">True</property>
                 <property name="spacing">15</property>
                 <property name="homogeneous">True</property>
                 <child>
-                  <widget class="GtkCheckButton" id="use_proxy">
+                  <object class="GtkCheckButton" id="use_proxy">
                     <property name="label" translatable="yes">Use Proxy</property>
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="receives_default">False</property>
                     <property name="use_underline">True</property>
                     <property name="draw_indicator">True</property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">False</property>
@@ -529,27 +545,27 @@
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkTable" id="table5">
+                  <object class="GtkTable" id="table5">
                     <property name="visible">True</property>
                     <property name="n_rows">2</property>
                     <property name="n_columns">5</property>
                     <property name="column_spacing">5</property>
                     <property name="row_spacing">5</property>
                     <child>
-                      <widget class="GtkLabel" id="label84">
+                      <object class="GtkLabel" id="label84">
                         <property name="visible">True</property>
                         <property name="label" translatable="yes">HTTP proxy:</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="x_options"></property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkEntry" id="host_proxy">
+                      <object class="GtkEntry" id="host_proxy">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
@@ -557,10 +573,10 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label85">
+                      <object class="GtkLabel" id="label85">
                         <property name="visible">True</property>
                         <property name="label" translatable="yes">Port:</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="left_attach">2</property>
                         <property name="right_attach">3</property>
@@ -569,12 +585,12 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkSpinButton" id="port_proxy">
+                      <object class="GtkSpinButton" id="port_proxy">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                        <property name="adjustment">0 0 65535 1 10 0</property>
+                        <property name="adjustment">adjustment4</property>
                         <property name="climb_rate">1</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="left_attach">3</property>
                         <property name="right_attach">4</property>
@@ -582,13 +598,13 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkButton" id="details">
+                      <object class="GtkButton" id="details">
                         <property name="label" translatable="yes">Details</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">False</property>
                         <property name="use_underline">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="left_attach">4</property>
                         <property name="right_attach">5</property>
@@ -597,11 +613,11 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label91">
+                      <object class="GtkLabel" id="label91">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
                         <property name="label" translatable="yes">No proxy for:</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="top_attach">1</property>
                         <property name="bottom_attach">2</property>
@@ -610,10 +626,10 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkEntry" id="entry8">
+                      <object class="GtkEntry" id="entry8">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
@@ -631,55 +647,54 @@
                     <child>
                       <placeholder/>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="position">1</property>
                   </packing>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="position">0</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">3</property>
           </packing>
         </child>
-        <child>
-          <widget class="GtkLabel" id="label_NETWORK">
+        <child type="tab">
+          <object class="GtkLabel" id="label_NETWORK">
             <property name="label" translatable="yes">Network</property>
-          </widget>
+          </object>
           <packing>
             <property name="position">3</property>
             <property name="tab_fill">False</property>
-            <property name="type">tab</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-  <widget class="GtkDialog" id="http-proxy-details">
+  </object>
+  <object class="GtkDialog" id="http-proxy-details">
     <property name="title" translatable="yes">HTTP Proxy Details</property>
     <property name="modal">True</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox4">
+      <object class="GtkVBox" id="dialog-vbox4">
         <property name="visible">True</property>
         <child>
-          <widget class="GtkVBox" id="vbox21">
+          <object class="GtkVBox" id="vbox21">
             <property name="visible">True</property>
             <property name="border_width">15</property>
             <child>
-              <widget class="GtkCheckButton" id="proxy_auth">
+              <object class="GtkCheckButton" id="proxy_auth">
                 <property name="label" translatable="yes">Use authentication</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_underline">True</property>
                 <property name="draw_indicator">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
@@ -687,28 +702,28 @@
               </packing>
             </child>
             <child>
-              <widget class="GtkTable" id="table4">
+              <object class="GtkTable" id="input_table">
                 <property name="visible">True</property>
                 <property name="border_width">2</property>
                 <property name="n_rows">2</property>
                 <property name="n_columns">2</property>
                 <child>
-                  <widget class="GtkLabel" id="label89">
+                  <object class="GtkLabel" id="label89">
                     <property name="visible">True</property>
                     <property name="xalign">0</property>
                     <property name="label" translatable="yes">Username:</property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="x_options"></property>
                     <property name="y_options"></property>
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkLabel" id="label90">
+                  <object class="GtkLabel" id="label90">
                     <property name="visible">True</property>
                     <property name="xalign">0</property>
                     <property name="label" translatable="yes">Password: </property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="top_attach">1</property>
                     <property name="bottom_attach">2</property>
@@ -717,10 +732,10 @@
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkEntry" id="proxy_user">
+                  <object class="GtkEntry" id="proxy_user">
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="right_attach">2</property>
@@ -728,11 +743,11 @@
                   </packing>
                 </child>
                 <child>
-                  <widget class="GtkEntry" id="proxy_pass">
+                  <object class="GtkEntry" id="proxy_pass">
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <property name="visibility">False</property>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="left_attach">1</property>
                     <property name="right_attach">2</property>
@@ -741,30 +756,29 @@
                     <property name="y_options"></property>
                   </packing>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">2</property>
           </packing>
         </child>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area4">
+          <object class="GtkHButtonBox" id="dialog-action_area4">
             <property name="visible">True</property>
             <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="helpbutton1">
+              <object class="GtkButton" id="helpbutton1">
                 <property name="label">gtk-help</property>
-                <property name="response_id">-11</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
@@ -772,32 +786,35 @@
               </packing>
             </child>
             <child>
-              <widget class="GtkButton" id="closebutton2">
+              <object class="GtkButton" id="closebutton2">
                 <property name="label">gtk-close</property>
-                <property name="response_id">-7</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="pack_type">end</property>
             <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-  <widget class="GtkFileChooserDialog" id="import_file_select">
+    <action-widgets>
+      <action-widget response="-11">helpbutton1</action-widget>
+      <action-widget response="-7">closebutton2</action-widget>
+    </action-widgets>
+  </object>
+  <object class="GtkFileChooserDialog" id="import_file_select">
     <property name="border_width">5</property>
     <property name="title" translatable="yes">Select import file</property>
     <property name="modal">True</property>
@@ -805,23 +822,22 @@
     <property name="type_hint">dialog</property>
     <property name="show_hidden">True</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox5">
+      <object class="GtkVBox" id="dialog-vbox5">
         <property name="visible">True</property>
         <property name="spacing">24</property>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area5">
+          <object class="GtkHButtonBox" id="dialog-action_area5">
             <property name="visible">True</property>
             <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="button1">
+              <object class="GtkButton" id="button1">
                 <property name="label">gtk-cancel</property>
-                <property name="response_id">-6</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
@@ -829,85 +845,87 @@
               </packing>
             </child>
             <child>
-              <widget class="GtkButton" id="button2">
+              <object class="GtkButton" id="button2">
                 <property name="label">gtk-open</property>
-                <property name="response_id">-5</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="has_default">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="pack_type">end</property>
             <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-  <widget class="GtkDialog" id="delete_feed_confirm">
+    <action-widgets>
+      <action-widget response="-6">button1</action-widget>
+      <action-widget response="-5">button2</action-widget>
+    </action-widgets>
+  </object>
+  <object class="GtkDialog" id="delete_feed_confirm">
     <property name="title" translatable="yes">Delete feed?</property>
     <property name="type_hint">dialog</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox6">
+      <object class="GtkVBox" id="dialog-vbox6">
         <property name="visible">True</property>
         <child>
-          <widget class="GtkVBox" id="vbox22">
+          <object class="GtkVBox" id="vbox22">
             <property name="visible">True</property>
             <child>
-              <widget class="GtkLabel" id="label92">
+              <object class="GtkLabel" id="label92">
                 <property name="visible">True</property>
                 <property name="label" translatable="yes">label92</property>
-              </widget>
+              </object>
               <packing>
                 <property name="fill">False</property>
                 <property name="position">0</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkCheckButton" id="checkbutton6">
+              <object class="GtkCheckButton" id="checkbutton6">
                 <property name="label" translatable="yes">Remove folder contents</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_underline">True</property>
                 <property name="draw_indicator">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="position">2</property>
           </packing>
         </child>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area6">
+          <object class="GtkHButtonBox" id="dialog-action_area6">
             <property name="visible">True</property>
             <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="okbutton2">
+              <object class="GtkButton" id="okbutton2">
                 <property name="label">gtk-delete</property>
-                <property name="response_id">-8</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
@@ -915,59 +933,61 @@
               </packing>
             </child>
             <child>
-              <widget class="GtkButton" id="cancelbutton2">
+              <object class="GtkButton" id="cancelbutton2">
                 <property name="label">Do not delete</property>
-                <property name="response_id">-9</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_underline">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="pack_type">end</property>
             <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-  <widget class="GtkFileChooserDialog" id="export_file_select">
+    <action-widgets>
+      <action-widget response="-8">okbutton2</action-widget>
+      <action-widget response="-9">cancelbutton2</action-widget>
+    </action-widgets>
+  </object>
+  <object class="GtkFileChooserDialog" id="export_file_select">
     <property name="border_width">5</property>
     <property name="title" translatable="yes">Select file to export</property>
     <property name="resizable">False</property>
     <property name="modal">True</property>
     <property name="destroy_with_parent">True</property>
     <property name="type_hint">dialog</property>
-    <property name="local_only">False</property>
     <property name="action">save</property>
     <property name="show_hidden">True</property>
+    <property name="local_only">False</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="vbox26">
+      <object class="GtkVBox" id="vbox26">
         <property name="visible">True</property>
         <property name="spacing">24</property>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="hbuttonbox1">
+          <object class="GtkHButtonBox" id="hbuttonbox1">
             <property name="visible">True</property>
             <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="button3">
+              <object class="GtkButton" id="button3">
                 <property name="label">gtk-cancel</property>
-                <property name="response_id">-6</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
@@ -975,33 +995,36 @@
               </packing>
             </child>
             <child>
-              <widget class="GtkButton" id="button4">
+              <object class="GtkButton" id="button4">
                 <property name="label">gtk-save</property>
-                <property name="response_id">-5</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="can_default">True</property>
                 <property name="has_default">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="pack_type">end</property>
             <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-  <widget class="GtkDialog" id="feed_dialog">
+    <action-widgets>
+      <action-widget response="-6">button3</action-widget>
+      <action-widget response="-5">button4</action-widget>
+    </action-widgets>
+  </object>
+  <object class="GtkDialog" id="feed_dialog">
     <property name="border_width">5</property>
     <property name="resizable">False</property>
     <property name="window_position">center-on-parent</property>
@@ -1009,29 +1032,29 @@
     <property name="type_hint">dialog</property>
     <property name="has_separator">False</property>
     <child internal-child="vbox">
-      <widget class="GtkVBox" id="dialog-vbox9">
+      <object class="GtkVBox" id="dialog-vbox9">
         <property name="visible">True</property>
         <property name="spacing">2</property>
         <child>
-          <widget class="GtkVBox" id="vbox6">
+          <object class="GtkVBox" id="vbox6">
             <property name="visible">True</property>
             <property name="spacing">20</property>
             <child>
-              <widget class="GtkVBox" id="vbox2">
+              <object class="GtkVBox" id="vbox2">
                 <property name="visible">True</property>
                 <property name="orientation">vertical</property>
                 <child>
-                  <widget class="GtkTable" id="table1">
+                  <object class="GtkTable" id="table1">
                     <property name="visible">True</property>
                     <property name="n_rows">4</property>
                     <property name="n_columns">2</property>
                     <property name="column_spacing">1</property>
                     <property name="row_spacing">2</property>
                     <child>
-                      <widget class="GtkLabel" id="feed_name_label">
+                      <object class="GtkLabel" id="feed_name_label">
                         <property name="label" translatable="yes">&lt;b&gt;Feed Name: &lt;/b&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="top_attach">2</property>
                         <property name="bottom_attach">3</property>
@@ -1040,10 +1063,10 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkEntry" id="feed_name">
+                      <object class="GtkEntry" id="feed_name">
                         <property name="can_focus">True</property>
                         <property name="invisible_char">&#x25CF;</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
@@ -1052,11 +1075,11 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkEntry" id="url_entry">
+                      <object class="GtkEntry" id="url_entry">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="invisible_char">&#x25CF;</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
@@ -1064,12 +1087,12 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label18">
+                      <object class="GtkLabel" id="label18">
                         <property name="visible">True</property>
                         <property name="label" translatable="yes">&lt;b&gt;Feed URL:&lt;/b&gt;</property>
                         <property name="use_markup">True</property>
                         <property name="justify">right</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="bottom_attach">2</property>
                         <property name="x_options">GTK_FILL</property>
@@ -1077,36 +1100,36 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkButton" id="location_button">
+                      <object class="GtkButton" id="location_button">
                         <property name="can_focus">True</property>
                         <property name="receives_default">True</property>
                         <child>
-                          <widget class="GtkHBox" id="hbox1">
+                          <object class="GtkHBox" id="hbox1">
                             <property name="visible">True</property>
                             <property name="spacing">5</property>
                             <child>
-                              <widget class="GtkImage" id="image1">
+                              <object class="GtkImage" id="image1">
                                 <property name="stock">gtk-missing-image</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkLabel" id="entry2">
+                              <object class="GtkLabel" id="entry2">
                                 <property name="visible">True</property>
                                 <property name="label" translatable="yes">label</property>
                                 <property name="wrap">True</property>
                                 <property name="single_line_mode">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                         </child>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
@@ -1115,24 +1138,24 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="location_label">
+                      <object class="GtkLabel" id="location_label">
                         <property name="label" translatable="yes">&lt;b&gt;Location:&lt;/b&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
+                      </object>
                       <packing>
                         <property name="top_attach">3</property>
                         <property name="bottom_attach">4</property>
                         <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
-                  </widget>
+                  </object>
                   <packing>
                     <property name="expand">False</property>
                     <property name="fill">False</property>
                     <property name="position">0</property>
                   </packing>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
@@ -1140,82 +1163,81 @@
               </packing>
             </child>
             <child>
-              <widget class="GtkEventBox" id="eventbox1">
+              <object class="GtkEventBox" id="eventbox1">
                 <property name="visible">True</property>
                 <child>
-                  <widget class="GtkExpander" id="adv_options">
+                  <object class="GtkExpander" id="adv_options">
                     <property name="visible">True</property>
                     <property name="can_focus">True</property>
                     <child>
-                      <widget class="GtkNotebook" id="notebook1">
+                      <object class="GtkNotebook" id="notebook1">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <child>
-                          <widget class="GtkVBox" id="vbox7">
+                          <object class="GtkVBox" id="vbox7">
                             <property name="visible">True</property>
                             <property name="border_width">10</property>
                             <property name="orientation">vertical</property>
                             <child>
-                              <widget class="GtkCheckButton" id="enabled_check">
+                              <object class="GtkCheckButton" id="enabled_check">
                                 <property name="label" translatable="yes">Enabled</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkCheckButton" id="validate_check">
+                              <object class="GtkCheckButton" id="validate_check">
                                 <property name="label" translatable="yes">Validate</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="position">1</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkCheckButton" id="html_check">
+                              <object class="GtkCheckButton" id="html_check">
                                 <property name="label" translatable="yes">Display only feed summary</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="position">2</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                         </child>
-                        <child>
-                          <widget class="GtkLabel" id="label10">
+                        <child type="tab">
+                          <object class="GtkLabel" id="label10">
                             <property name="visible">True</property>
                             <property name="label" translatable="yes">General</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="tab_fill">False</property>
-                            <property name="type">tab</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox8">
+                          <object class="GtkVBox" id="vbox8">
                             <property name="visible">True</property>
                             <property name="border_width">10</property>
                             <property name="orientation">vertical</property>
                             <child>
-                              <widget class="GtkRadioButton" id="ttl_global">
+                              <object class="GtkRadioButton" id="ttl_global">
                                 <property name="label" translatable="yes">Use global update interval</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
@@ -1223,17 +1245,17 @@
                                 <property name="use_underline">True</property>
                                 <property name="active">True</property>
                                 <property name="draw_indicator">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox7">
+                              <object class="GtkHBox" id="hbox7">
                                 <property name="visible">True</property>
                                 <child>
-                                  <widget class="GtkRadioButton" id="ttl">
+                                  <object class="GtkRadioButton" id="ttl">
                                     <property name="label" translatable="yes">Update in</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
@@ -1241,46 +1263,50 @@
                                     <property name="use_underline">True</property>
                                     <property name="draw_indicator">True</property>
                                     <property name="group">ttl_global</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="position">0</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkSpinButton" id="ttl_value">
+                                  <object class="GtkSpinButton" id="ttl_value">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="invisible_char">&#x25CF;</property>
-                                    <property name="adjustment">0 0 100 1 10 0</property>
+                                    <property name="adjustment">adjustment3</property>
                                     <property name="climb_rate">1</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkComboBox" id="combobox1">
+                                  <object class="GtkComboBox" id="combobox1">
                                     <property name="visible">True</property>
+                                    <property name="model">liststore1</property>
                                     <property name="active">1</property>
-                                    <property name="items" translatable="yes" comments="to translators: message is part of &quot;Update in X minutes&quot;">minutes
-hours
-days</property>
-                                  </widget>
+                                    <child>
+                                      <object class="GtkCellRendererText" id="cellrenderertext1"/>
+                                      <attributes>
+                                        <attribute name="text">0</attribute>
+                                      </attributes>
+                                    </child>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="position">2</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="position">1</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkRadioButton" id="ttl_disabled">
+                              <object class="GtkRadioButton" id="ttl_disabled">
                                 <property name="label" translatable="yes">Do no update feed</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
@@ -1288,35 +1314,34 @@ days</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
                                 <property name="group">ttl_global</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="position">2</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                           </packing>
                         </child>
-                        <child>
-                          <widget class="GtkLabel" id="label11">
+                        <child type="tab">
+                          <object class="GtkLabel" id="label11">
                             <property name="visible">True</property>
                             <property name="label" translatable="yes">Update</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">1</property>
                             <property name="tab_fill">False</property>
-                            <property name="type">tab</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox1">
+                          <object class="GtkVBox" id="vbox1">
                             <property name="visible">True</property>
                             <property name="orientation">vertical</property>
                             <property name="homogeneous">True</property>
                             <child>
-                              <widget class="GtkRadioButton" id="storage_rb1">
+                              <object class="GtkRadioButton" id="storage_rb1">
                                 <property name="label" translatable="yes">Do not delete feeds</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
@@ -1324,17 +1349,17 @@ days</property>
                                 <property name="use_underline">True</property>
                                 <property name="active">True</property>
                                 <property name="draw_indicator">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">0</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox8">
+                              <object class="GtkHBox" id="hbox8">
                                 <property name="visible">True</property>
                                 <property name="spacing">5</property>
                                 <child>
-                                  <widget class="GtkRadioButton" id="storage_rb2">
+                                  <object class="GtkRadioButton" id="storage_rb2">
                                     <property name="label" translatable="yes">Delete all but the last</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
@@ -1342,37 +1367,37 @@ days</property>
                                     <property name="use_underline">True</property>
                                     <property name="draw_indicator">True</property>
                                     <property name="group">storage_rb1</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="position">0</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkSpinButton" id="storage_sb1">
+                                  <object class="GtkSpinButton" id="storage_sb1">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="invisible_char">&#x25CF;</property>
-                                    <property name="adjustment">10 1 10000 1 10 0</property>
+                                    <property name="adjustment">adjustment2</property>
                                     <property name="climb_rate">1</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="position">1</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label12">
+                                  <object class="GtkLabel" id="label12">
                                     <property name="visible">True</property>
                                     <property name="label" translatable="yes" comments="To translators: this label is part of the following message: &quot;Delete all but the last X messages.">messages</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">2</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
@@ -1380,11 +1405,11 @@ days</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkHBox" id="hbox11">
+                              <object class="GtkHBox" id="hbox11">
                                 <property name="visible">True</property>
                                 <property name="spacing">5</property>
                                 <child>
-                                  <widget class="GtkRadioButton" id="storage_rb3">
+                                  <object class="GtkRadioButton" id="storage_rb3">
                                     <property name="label" translatable="yes">Delete articles older than</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
@@ -1392,7 +1417,7 @@ days</property>
                                     <property name="use_underline">True</property>
                                     <property name="draw_indicator">True</property>
                                     <property name="group">storage_rb1</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -1400,13 +1425,13 @@ days</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkSpinButton" id="storage_sb2">
+                                  <object class="GtkSpinButton" id="storage_sb2">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="invisible_char">&#x25CF;</property>
-                                    <property name="adjustment">10 1 9999 1 10 0</property>
+                                    <property name="adjustment">adjustment1</property>
                                     <property name="climb_rate">1</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
@@ -1414,17 +1439,17 @@ days</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label13">
+                                  <object class="GtkLabel" id="label13">
                                     <property name="visible">True</property>
                                     <property name="label" translatable="yes" comments="for translators: this label is part of the &quot;Delete articles older than X days&quot; message.">days</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="expand">False</property>
                                     <property name="fill">False</property>
                                     <property name="position">2</property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="fill">False</property>
@@ -1432,61 +1457,60 @@ days</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkRadioButton" id="storage_rb4">
+                              <object class="GtkRadioButton" id="storage_rb4">
                                 <property name="label" translatable="yes">Delete articles that are no longer in the feed</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="draw_indicator">True</property>
                                 <property name="group">storage_rb1</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="expand">False</property>
                                 <property name="position">3</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkCheckButton" id="storage_unread">
+                              <object class="GtkCheckButton" id="storage_unread">
                                 <property name="label" translatable="yes">Always delete unread articles</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">4</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">2</property>
                           </packing>
                         </child>
-                        <child>
-                          <widget class="GtkLabel" id="label14">
+                        <child type="tab">
+                          <object class="GtkLabel" id="label14">
                             <property name="visible">True</property>
                             <property name="label" translatable="yes">Storage</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">2</property>
                             <property name="tab_fill">False</property>
-                            <property name="type">tab</property>
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkVBox" id="vbox3">
+                          <object class="GtkVBox" id="vbox3">
                             <property name="visible">True</property>
                             <property name="orientation">vertical</property>
                             <child>
-                              <widget class="GtkCheckButton" id="use_auth">
+                              <object class="GtkCheckButton" id="use_auth">
                                 <property name="label" translatable="yes">Use authentication</property>
                                 <property name="visible">True</property>
                                 <property name="can_focus">True</property>
                                 <property name="receives_default">False</property>
                                 <property name="use_underline">True</property>
                                 <property name="draw_indicator">True</property>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="fill">False</property>
                                 <property name="padding">2</property>
@@ -1494,28 +1518,28 @@ days</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkTable" id="table4">
+                              <object class="GtkTable" id="table4">
                                 <property name="visible">True</property>
                                 <property name="border_width">15</property>
                                 <property name="n_rows">2</property>
                                 <property name="n_columns">2</property>
                                 <child>
-                                  <widget class="GtkLabel" id="label189">
+                                  <object class="GtkLabel" id="label189">
                                     <property name="visible">True</property>
                                     <property name="xalign">0</property>
                                     <property name="label" translatable="yes">Username:</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="x_options"></property>
                                     <property name="y_options"></property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkEntry" id="auth_user">
+                                  <object class="GtkEntry" id="auth_user">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="invisible_char">&#x25CF;</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="left_attach">1</property>
                                     <property name="right_attach">2</property>
@@ -1523,12 +1547,12 @@ days</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkEntry" id="auth_pass">
+                                  <object class="GtkEntry" id="auth_pass">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="visibility">False</property>
                                     <property name="invisible_char">&#x25CF;</property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="left_attach">1</property>
                                     <property name="right_attach">2</property>
@@ -1538,11 +1562,11 @@ days</property>
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkLabel" id="label190">
+                                  <object class="GtkLabel" id="label190">
                                     <property name="visible">True</property>
                                     <property name="xalign">0</property>
                                     <property name="label" translatable="yes">Password: </property>
-                                  </widget>
+                                  </object>
                                   <packing>
                                     <property name="top_attach">1</property>
                                     <property name="bottom_attach">2</property>
@@ -1550,47 +1574,43 @@ days</property>
                                     <property name="y_options"></property>
                                   </packing>
                                 </child>
-                              </widget>
+                              </object>
                               <packing>
                                 <property name="position">1</property>
                               </packing>
                             </child>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">3</property>
                           </packing>
                         </child>
-                        <child>
-                          <widget class="GtkLabel" id="label2">
+                        <child type="tab">
+                          <object class="GtkLabel" id="label2">
                             <property name="visible">True</property>
                             <property name="label" translatable="yes">Authentication</property>
-                          </widget>
+                          </object>
                           <packing>
                             <property name="position">3</property>
                             <property name="tab_fill">False</property>
-                            <property name="type">tab</property>
                           </packing>
                         </child>
-                      </widget>
+                      </object>
                     </child>
-                    <child>
-                      <widget class="GtkLabel" id="label9">
+                    <child type="label">
+                      <object class="GtkLabel" id="label9">
                         <property name="visible">True</property>
                         <property name="label" translatable="yes">&lt;b&gt;Advanced options&lt;/b&gt;</property>
                         <property name="use_markup">True</property>
-                      </widget>
-                      <packing>
-                        <property name="type">label_item</property>
-                      </packing>
+                      </object>
                     </child>
-                  </widget>
+                  </object>
                 </child>
-              </widget>
+              </object>
               <packing>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="fill">False</property>
@@ -1598,17 +1618,17 @@ days</property>
           </packing>
         </child>
         <child internal-child="action_area">
-          <widget class="GtkHButtonBox" id="dialog-action_area9">
+          <object class="GtkHButtonBox" id="dialog-action_area9">
             <property name="visible">True</property>
             <property name="layout_style">end</property>
             <child>
-              <widget class="GtkButton" id="cancel_button">
+              <object class="GtkButton" id="cancel_button">
                 <property name="label">gtk-cancel</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
@@ -1616,27 +1636,62 @@ days</property>
               </packing>
             </child>
             <child>
-              <widget class="GtkButton" id="ok_button">
+              <object class="GtkButton" id="ok_button">
                 <property name="label">gtk-ok</property>
                 <property name="visible">True</property>
                 <property name="can_focus">True</property>
                 <property name="receives_default">False</property>
                 <property name="use_stock">True</property>
-              </widget>
+              </object>
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">False</property>
                 <property name="position">1</property>
               </packing>
             </child>
-          </widget>
+          </object>
           <packing>
             <property name="expand">False</property>
             <property name="pack_type">end</property>
             <property name="position">0</property>
           </packing>
         </child>
-      </widget>
+      </object>
     </child>
-  </widget>
-</glade-interface>
+    <action-widgets>
+      <action-widget response="0">cancel_button</action-widget>
+      <action-widget response="0">ok_button</action-widget>
+    </action-widgets>
+  </object>
+  <object class="GtkAdjustment" id="adjustment1">
+    <property name="value">10</property>
+    <property name="lower">1</property>
+    <property name="upper">9999</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment2">
+    <property name="value">10</property>
+    <property name="lower">1</property>
+    <property name="upper">10000</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment3">
+    <property name="upper">100</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment4">
+    <property name="upper">65535</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+  <object class="GtkAdjustment" id="adjustment5">
+    <property name="value">1</property>
+    <property name="lower">1</property>
+    <property name="upper">100</property>
+    <property name="step_increment">1</property>
+    <property name="page_increment">10</property>
+  </object>
+</interface>
diff --git a/src/rss.c b/src/rss.c
index 9827ee8..a1b8d49 100644
--- a/src/rss.c
+++ b/src/rss.c
@@ -264,7 +264,7 @@ gboolean display_folder_icon(GtkTreeStore *store, gchar *key);
 typedef struct _FEED_IMAGE {
 	gchar *img_file;
 	CamelStream *feed_fs;
-	gchar *http_cache;
+	CamelDataCache *http_cache;
 	gchar *url;
 	gchar *key;
 	gpointer data;
@@ -741,7 +741,7 @@ textcb(NetStatusType status, gpointer statusdata, gpointer data)
         progress = (NetStatusProgress*)statusdata;
         if (progress->current > 0 && progress->total > 0) {
 	fraction = (float)progress->current / progress->total;
-	d(g_print("%f.", fraction*100));
+	g_print("%f%%\n", fraction*100);
 	}
 	while (gtk_events_pending())
 		gtk_main_iteration ();
@@ -5265,6 +5265,7 @@ finish_enclosure (SoupSession *soup_sess, SoupMessage *msg, create_feed *user_da
 #else
 		fwrite(msg->response_body->data, msg->response_body->length, 1, f);
 #endif
+g_print("siz:%d\n", sizeof(msg));
 		fclose(f);
 		//replace encl with filename generated
 		g_free(user_data->encl);
@@ -5278,6 +5279,8 @@ finish_enclosure (SoupSession *soup_sess, SoupMessage *msg, create_feed *user_da
 		write_feed_status_line(user_data->feed_fname, user_data->feed_uri);
 	}
 	free_cf(user_data);
+	g_object_unref(msg);
+	g_object_unref(session);
 }
 
 static void
diff --git a/src/rss.h b/src/rss.h
index 4554f06..355881a 100644
--- a/src/rss.h
+++ b/src/rss.h
@@ -203,7 +203,7 @@ typedef struct ADD_FEED {
 	GtkWidget	*dialog;
 	GtkWidget	*progress;
 	GtkWidget	*child;		//the dialog child
-	GladeXML	*gui;
+	GtkBuilder	*gui;
         gchar           *feed_url;
 	gchar		*feed_name;
 	gchar		*prefix;



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