[goobox] gtk3: first batch of changes



commit c9b922bcdc5bd1f625444d378b8567623fb9a076
Author: Paolo Bacchilega <paobac src gnome org>
Date:   Sun May 8 20:59:47 2011 +0200

    gtk3: first batch of changes

 configure.ac                   |   17 +-
 src/Makefile.am                |    2 -
 src/actions.c                  |  115 +++---
 src/dlg-extract.c              |   15 +-
 src/dlg-preferences.c          |   55 ++--
 src/dlg-ripper.c               |  115 +++---
 src/gconf-utils.c              |  999 ----------------------------------------
 src/gconf-utils.h              |  125 -----
 src/gnome-desktop-thumbnail.c  |    2 -
 src/goo-player-info.c          |  190 ++++----
 src/goo-player.h               |    4 +-
 src/goo-volume-tool-button.c   |  245 +++++-----
 src/goo-window.c               |  393 ++++++++--------
 src/goo-window.h               |    4 +-
 src/gtk-file-chooser-preview.c |   49 +--
 src/gtk-utils.c                |   26 +-
 src/main.c                     |   29 +-
 src/main.h                     |    2 +-
 src/preferences.c              |   26 +-
 src/typedefs.h                 |    2 +
 20 files changed, 631 insertions(+), 1784 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 008af08..2515c97 100644
--- a/configure.ac
+++ b/configure.ac
@@ -15,27 +15,26 @@ GNOME_DOC_INIT
 GNOME_COMPILE_WARNINGS([maximum])
 GNOME_MAINTAINER_MODE_DEFINES
 
-GLIB_REQUIRED=2.22
-GTK_REQUIRED=2.18
+GLIB_REQUIRED=2.28
+GTK_REQUIRED=3.0.0
 GSTREAMER_REQUIRED=0.10.12
 LIBNOTIFY_REQUIRED=0.4.3
 LIBMUSICBRAINZ_REQUIRED=2.1.0
 
 dnl ===========================================================================
 
-PKG_CHECK_MODULES(GTK, [gtk+-2.0 >= $GTK_REQUIRED])
+PKG_CHECK_MODULES(GTK, [gtk+-3.0 >= $GTK_REQUIRED])
 AC_SUBST([GTK_CFLAGS])
 AC_SUBST([GTK_LIBS])
 
 PKG_CHECK_MODULES(GOO, [
 	glib-2.0 >= $GLIB_REQUIRED
-	gthread-2.0				
-	gtk+-2.0 >= $GTK_REQUIRED
+	gthread-2.0
+	gtk+-3.0 >= $GTK_REQUIRED
 	gstreamer-0.10 >= $GSTREAMER_REQUIRED
-	libbrasero-media	
-	libmusicbrainz >= $LIBMUSICBRAINZ_REQUIRED 
-	gconf-2.0
-	unique-1.0
+	libbrasero-media3
+	libmusicbrainz >= $LIBMUSICBRAINZ_REQUIRED
+	unique-3.0
 ])
 AC_SUBST(GOO_CFLAGS)
 AC_SUBST(GOO_LIBS)
diff --git a/src/Makefile.am b/src/Makefile.am
index 956b3ab..cb3130e 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -42,8 +42,6 @@ goobox_SOURCES = 				\
 	dlg-properties.h			\
 	dlg-ripper.c				\
 	dlg-ripper.h				\
-	gconf-utils.c				\
-	gconf-utils.h				\
 	gio-utils.c				\
 	gio-utils.h				\
 	glib-utils.c				\
diff --git a/src/actions.c b/src/actions.c
index a71e2d4..2cf58a2 100644
--- a/src/actions.c
+++ b/src/actions.c
@@ -31,13 +31,12 @@
 #include "dlg-properties.h"
 #include "gtk-utils.h"
 #include "goo-window.h"
-#include "gconf-utils.h"
 #include "main.h"
 #include "preferences.h"
 
 
 void
-activate_action_play (GtkAction *action, 
+activate_action_play (GtkAction *action,
 		      gpointer   data)
 {
 	goo_window_play (GOO_WINDOW (data));
@@ -45,7 +44,7 @@ activate_action_play (GtkAction *action,
 
 
 void
-activate_action_play_selected (GtkAction *action, 
+activate_action_play_selected (GtkAction *action,
 			       gpointer   data)
 {
 	goo_window_play_selected (GOO_WINDOW (data));
@@ -61,7 +60,7 @@ activate_action_pause (GtkAction *action,
 
 
 void
-activate_action_toggle_play (GtkAction *action, 
+activate_action_toggle_play (GtkAction *action,
 			     gpointer   data)
 {
 	goo_window_toggle_play (GOO_WINDOW (data));
@@ -69,7 +68,7 @@ activate_action_toggle_play (GtkAction *action,
 
 
 void
-activate_action_stop (GtkAction *action, 
+activate_action_stop (GtkAction *action,
 		      gpointer   data)
 {
 	goo_window_stop (GOO_WINDOW (data));
@@ -77,7 +76,7 @@ activate_action_stop (GtkAction *action,
 
 
 void
-activate_action_next (GtkAction *action, 
+activate_action_next (GtkAction *action,
 		      gpointer   data)
 {
 	goo_window_next (GOO_WINDOW (data));
@@ -85,15 +84,15 @@ activate_action_next (GtkAction *action,
 
 
 void
-activate_action_prev (GtkAction *action, 
+activate_action_prev (GtkAction *action,
 		      gpointer   data)
 {
 	goo_window_prev (GOO_WINDOW (data));
 }
 
 
-void 
-activate_action_eject (GtkAction *action, 
+void
+activate_action_eject (GtkAction *action,
 		       gpointer   data)
 {
 	goo_window_eject (GOO_WINDOW (data));
@@ -101,7 +100,7 @@ activate_action_eject (GtkAction *action,
 
 
 void
-activate_action_reload (GtkAction *action, 
+activate_action_reload (GtkAction *action,
 			gpointer   data)
 {
 	goo_window_update (GOO_WINDOW (data));
@@ -109,7 +108,7 @@ activate_action_reload (GtkAction *action,
 
 
 void
-activate_action_manual (GtkAction *action, 
+activate_action_manual (GtkAction *action,
 			gpointer   data)
 {
 	show_help_dialog (GTK_WINDOW (data), NULL);
@@ -117,7 +116,7 @@ activate_action_manual (GtkAction *action,
 
 
 void
-activate_action_shortcuts (GtkAction *action, 
+activate_action_shortcuts (GtkAction *action,
 			   gpointer   data)
 {
 	show_help_dialog (GTK_WINDOW (data), "goobox-shortcuts");
@@ -125,7 +124,7 @@ activate_action_shortcuts (GtkAction *action,
 
 
 void
-activate_action_about (GtkAction *action, 
+activate_action_about (GtkAction *action,
 		       gpointer   data)
 {
 	GooWindow  *window = data;
@@ -168,13 +167,13 @@ activate_action_about (GtkAction *action,
                                "license", license_text,
                                "wrap-license", TRUE,
                                NULL);
-                               
+
 	g_free (license_text);
 }
 
 
 void
-activate_action_quit (GtkAction *action, 
+activate_action_quit (GtkAction *action,
 		      gpointer   data)
 {
 	goo_window_close (GOO_WINDOW (data));
@@ -182,7 +181,7 @@ activate_action_quit (GtkAction *action,
 
 
 void
-activate_action_view_toolbar (GtkAction *action, 
+activate_action_view_toolbar (GtkAction *action,
 			      gpointer   data)
 {
 	eel_gconf_set_boolean (PREF_UI_TOOLBAR, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action)));
@@ -190,33 +189,33 @@ activate_action_view_toolbar (GtkAction *action,
 
 
 void
-activate_action_view_statusbar (GtkAction *action, 
+activate_action_view_statusbar (GtkAction *action,
 				gpointer   data)
-{	
+{
 	eel_gconf_set_boolean (PREF_UI_STATUSBAR, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action)));
 }
 
 
 void
-activate_action_play_all (GtkAction *action, 
+activate_action_play_all (GtkAction *action,
 			  gpointer   data)
-{	
+{
 	eel_gconf_set_boolean (PREF_PLAYLIST_PLAYALL, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action)));
 }
 
 
 void
-activate_action_repeat (GtkAction *action, 
+activate_action_repeat (GtkAction *action,
 			gpointer   data)
-{	
+{
 	eel_gconf_set_boolean (PREF_PLAYLIST_REPEAT, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action)));
 }
 
 
 void
-activate_action_shuffle (GtkAction *action, 
+activate_action_shuffle (GtkAction *action,
 			 gpointer   data)
-{	
+{
 	eel_gconf_set_boolean (PREF_PLAYLIST_SHUFFLE, gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (action)));
 }
 
@@ -242,7 +241,7 @@ exec_external_app (GdkScreen   *screen,
 	GPid       child_pid;
 
 	g_return_val_if_fail (command_line != NULL, FALSE);
-	
+
 	if (! g_shell_parse_argv (command_line, NULL, &argv, error))
 		return FALSE;
 
@@ -263,7 +262,7 @@ exec_external_app (GdkScreen   *screen,
 
 
 void
-activate_action_copy_disc (GtkAction *action, 
+activate_action_copy_disc (GtkAction *action,
 			   gpointer   data)
 {
 	GooWindow *window = data;
@@ -271,17 +270,17 @@ activate_action_copy_disc (GtkAction *action,
 	GError    *error = NULL;
 
 	command = g_strconcat ("brasero --copy=",
-			       goo_player_get_device (goo_window_get_player (window)), 
+			       goo_player_get_device (goo_window_get_player (window)),
 			       NULL);
 
 	goo_window_set_hibernate (window, TRUE);
-	if (! exec_external_app (gtk_widget_get_screen (GTK_WIDGET (window)), 
-				 command, 
-				 &error, 
-				 data)) 
+	if (! exec_external_app (gtk_widget_get_screen (GTK_WIDGET (window)),
+				 command,
+				 &error,
+				 data))
 	{
-		_gtk_error_dialog_from_gerror_run (GTK_WINDOW (window), 
-						   _("Could not execute command"), 
+		_gtk_error_dialog_from_gerror_run (GTK_WINDOW (window),
+						   _("Could not execute command"),
 						   &error);
 		goo_window_set_hibernate (window, FALSE);
 	}
@@ -291,26 +290,26 @@ activate_action_copy_disc (GtkAction *action,
 
 
 void
-activate_action_extract (GtkAction *action, 
+activate_action_extract (GtkAction *action,
 			 gpointer   data)
 {
 	GooWindow *window = data;
 	GError    *error = NULL;
-	
+
 	if (! preferences_get_use_sound_juicer ()) {
 		dlg_extract (window);
 		return;
 	}
 
-	goo_window_set_hibernate (window, TRUE);		
+	goo_window_set_hibernate (window, TRUE);
 
-	if (! exec_external_app (gtk_widget_get_screen (GTK_WIDGET (window)), 
-				 "sound-juicer", 
-				 &error, 
-				 data)) 
+	if (! exec_external_app (gtk_widget_get_screen (GTK_WIDGET (window)),
+				 "sound-juicer",
+				 &error,
+				 data))
 	{
-		_gtk_error_dialog_from_gerror_run (GTK_WINDOW (window), 
-						   _("Could not execute command"), 
+		_gtk_error_dialog_from_gerror_run (GTK_WINDOW (window),
+						   _("Could not execute command"),
 						   &error);
 		goo_window_set_hibernate (window, FALSE);
 	}
@@ -318,26 +317,26 @@ activate_action_extract (GtkAction *action,
 
 
 void
-activate_action_extract_selected (GtkAction *action, 
+activate_action_extract_selected (GtkAction *action,
 			 	  gpointer   data)
 {
 	GooWindow *window = data;
 	GError    *error = NULL;
-	
+
 	if (! preferences_get_use_sound_juicer ()) {
-		dlg_extract_selected (window);	
+		dlg_extract_selected (window);
 		return;
 	}
-		
-	goo_window_set_hibernate (window, TRUE);		
+
+	goo_window_set_hibernate (window, TRUE);
 
 	if (! exec_external_app (gtk_widget_get_screen (GTK_WIDGET (window)),
-				 "sound-juicer", 
-				 &error, 
-				 data)) 
+				 "sound-juicer",
+				 &error,
+				 data))
 	{
-		_gtk_error_dialog_from_gerror_run (GTK_WINDOW (window), 
-						   _("Could not execute command"), 
+		_gtk_error_dialog_from_gerror_run (GTK_WINDOW (window),
+						   _("Could not execute command"),
 						   &error);
 		goo_window_set_hibernate (window, FALSE);
 	}
@@ -345,7 +344,7 @@ activate_action_extract_selected (GtkAction *action,
 
 
 void
-activate_action_preferences (GtkAction *action, 
+activate_action_preferences (GtkAction *action,
 			     gpointer   data)
 {
 	dlg_preferences (GOO_WINDOW (data));
@@ -353,7 +352,7 @@ activate_action_preferences (GtkAction *action,
 
 
 void
-activate_action_pick_cover_from_disk (GtkAction *action, 
+activate_action_pick_cover_from_disk (GtkAction *action,
 				      gpointer   data)
 {
 	goo_window_pick_cover_from_disk (GOO_WINDOW (data));
@@ -361,7 +360,7 @@ activate_action_pick_cover_from_disk (GtkAction *action,
 
 
 void
-activate_action_remove_cover (GtkAction *action, 
+activate_action_remove_cover (GtkAction *action,
 			      gpointer   data)
 {
 	goo_window_remove_cover (GOO_WINDOW (data));
@@ -369,7 +368,7 @@ activate_action_remove_cover (GtkAction *action,
 
 
 void
-activate_action_search_cover_on_internet (GtkAction *action, 
+activate_action_search_cover_on_internet (GtkAction *action,
 					  gpointer   data)
 {
 	goo_window_search_cover_on_internet (GOO_WINDOW (data));
@@ -377,7 +376,7 @@ activate_action_search_cover_on_internet (GtkAction *action,
 
 
 void
-activate_action_toggle_visibility (GtkAction *action, 
+activate_action_toggle_visibility (GtkAction *action,
 				   gpointer   data)
 {
 	goo_window_toggle_visibility (GOO_WINDOW (data));
@@ -385,7 +384,7 @@ activate_action_toggle_visibility (GtkAction *action,
 
 
 void
-activate_action_properties (GtkAction *action, 
+activate_action_properties (GtkAction *action,
 		            gpointer   data)
 {
 	dlg_properties (GOO_WINDOW (data));
diff --git a/src/dlg-extract.c b/src/dlg-extract.c
index 1ea4f15..29d061e 100644
--- a/src/dlg-extract.c
+++ b/src/dlg-extract.c
@@ -25,7 +25,6 @@
 #include <gst/gst.h>
 #include "dlg-extract.h"
 #include "dlg-ripper.h"
-#include "gconf-utils.h"
 #include "goo-player.h"
 #include "goo-stock.h"
 #include "gtk-utils.h"
@@ -73,7 +72,7 @@ ok_button_clicked_cb (GtkWidget  *widget,
 		tracks_to_rip = track_list_dup (goo_player_get_album (data->player)->tracks);
 
 	dlg_ripper (data->window, tracks_to_rip);
-	
+
 	track_list_free (tracks_to_rip);
 	gtk_widget_destroy (data->dialog);
 }
@@ -99,23 +98,23 @@ dlg_extract_ask (GooWindow *window)
 
 	encoder = gst_element_factory_make (OGG_ENCODER, "encoder");
 	ogg_encoder = encoder != NULL;
-	if (encoder != NULL) 
+	if (encoder != NULL)
 		gst_object_unref (GST_OBJECT (encoder));
 
 	encoder = gst_element_factory_make (FLAC_ENCODER, "encoder");
 	flac_encoder = encoder != NULL;
-	if (encoder != NULL) 
+	if (encoder != NULL)
 		gst_object_unref (GST_OBJECT (encoder));
 
 	encoder = gst_element_factory_make (WAVE_ENCODER, "encoder");
 	wave_encoder = encoder != NULL;
-	if (encoder != NULL) 
+	if (encoder != NULL)
 		gst_object_unref (GST_OBJECT (encoder));
 
 	if (! ogg_encoder && ! flac_encoder && ! wave_encoder) {
 		GtkWidget *d;
 		char      *msg;
-		
+
 		msg = g_strdup_printf (_("You need at least one of the following GStreamer plugins in order to extract CD tracks:\n\n"
 					 "\342\200\242 %s \342\206\222 Ogg Vorbis\n"
 					 "\342\200\242 %s \342\206\222 FLAC\n"
@@ -198,7 +197,7 @@ void
 dlg_extract_selected (GooWindow *window)
 {
 	GList *tracks_to_rip;
-	
+
 	tracks_to_rip = goo_window_get_tracks (window, TRUE);
 	dlg_ripper (window, tracks_to_rip);
 
@@ -210,7 +209,7 @@ void
 dlg_extract (GooWindow *window)
 {
 	GList *selected_tracks;
-	
+
 	selected_tracks = goo_window_get_tracks (window, TRUE);
 	if (g_list_length (selected_tracks) < 1)
 		dlg_ripper (window, NULL);
diff --git a/src/dlg-preferences.c b/src/dlg-preferences.c
index 3863f3a..69736ec 100644
--- a/src/dlg-preferences.c
+++ b/src/dlg-preferences.c
@@ -21,10 +21,9 @@
  */
 
 #include <config.h>
-#include <brasero/brasero-drive-selection.h>
+#include <brasero3/brasero-drive-selection.h>
 #include <gtk/gtk.h>
 #include <gst/gst.h>
-#include "gconf-utils.h"
 #include "goo-window.h"
 #include "gtk-utils.h"
 #include "preferences.h"
@@ -72,7 +71,7 @@ apply_button_clicked_cb (GtkWidget  *widget,
 	pref_set_file_format (gtk_combo_box_get_active (GTK_COMBO_BOX (data->filetype_combobox)));
 	eel_gconf_set_boolean (PREF_EXTRACT_SAVE_PLAYLIST, gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (GET_WIDGET ("save_playlist_checkbutton"))));
 	eel_gconf_set_boolean (PREF_GENERAL_AUTOPLAY, gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (GET_WIDGET ("autoplay_checkbutton"))));
-	
+
 	/**/
 
 	drive = brasero_drive_selection_get_active (BRASERO_DRIVE_SELECTION (data->drive_selector));
@@ -140,7 +139,7 @@ filetype_combobox_changed_cb (GtkComboBox *widget,
                               DialogData  *data)
 {
 	int format;
-	
+
 	format = gtk_combo_box_get_active (GTK_COMBO_BOX (data->filetype_combobox));
 	gtk_notebook_set_current_page (GTK_NOTEBOOK (GET_WIDGET ("encoding_notebook")), format);
 	gtk_widget_set_sensitive (GET_WIDGET ("filetype_properties_button"), format != GOO_FILE_FORMAT_WAVE);
@@ -148,12 +147,12 @@ filetype_combobox_changed_cb (GtkComboBox *widget,
 
 
 static void
-set_description_label (DialogData *data, 
-		       const char *widget_name, 
+set_description_label (DialogData *data,
+		       const char *widget_name,
 		       const char *label_text)
 {
 	char *text;
-	
+
 	text = g_markup_printf_escaped ("<small><i>%s</i></small>", label_text);
 	gtk_label_set_markup (GTK_LABEL (GET_WIDGET (widget_name)), text);
 
@@ -172,12 +171,12 @@ dlg_preferences (GooWindow *window)
 	gboolean         find_first_available;
 	GtkTreeIter      iter;
         GtkCellRenderer *renderer;
-        
+
         if (window->preferences_dialog != NULL) {
         	gtk_window_present (GTK_WINDOW (window->preferences_dialog));
         	return;
         }
-        
+
 	data = g_new0 (DialogData, 1);
 	data->window = window;
 	data->builder = _gtk_builder_new_from_file ("preferences.ui", "");
@@ -206,13 +205,13 @@ dlg_preferences (GooWindow *window)
 	}
 
 	/* Extraction */
-	
+
 	data->filetype_model = GTK_TREE_MODEL (gtk_list_store_new (N_COLUMNS,
                                                                    G_TYPE_STRING,
                                                                    G_TYPE_INT,
                                                                    G_TYPE_BOOLEAN));
 	data->filetype_combobox = gtk_combo_box_new_with_model (data->filetype_model);
-	
+
 	renderer = gtk_cell_renderer_text_new ();
         gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (data->filetype_combobox),
                                     renderer,
@@ -226,7 +225,7 @@ dlg_preferences (GooWindow *window)
 	gtk_box_pack_start (GTK_BOX (GET_WIDGET ("filetype_combobox_box")), data->filetype_combobox, TRUE, TRUE, 0);
 
 	/**/
-	
+
 	destination = eel_gconf_get_uri (PREF_EXTRACT_DESTINATION, "");
 	if ((destination == NULL) || (strcmp (destination, "") == 0))
 		destination = g_filename_to_uri (g_get_user_special_dir (G_USER_DIRECTORY_MUSIC), NULL, NULL);
@@ -244,7 +243,7 @@ dlg_preferences (GooWindow *window)
                             DATA_COLUMN, GOO_FILE_FORMAT_OGG,
                             PRESENT_COLUMN, ogg_encoder,
                            -1);
-	if (encoder != NULL) 
+	if (encoder != NULL)
 		gst_object_unref (GST_OBJECT (encoder));
 
 	encoder = gst_element_factory_make (FLAC_ENCODER, "encoder");
@@ -256,7 +255,7 @@ dlg_preferences (GooWindow *window)
                             DATA_COLUMN, GOO_FILE_FORMAT_FLAC,
                             PRESENT_COLUMN, flac_encoder,
                            -1);
-	if (encoder != NULL) 
+	if (encoder != NULL)
 		gst_object_unref (GST_OBJECT (encoder));
 
 	encoder = gst_element_factory_make (WAVE_ENCODER, "encoder");
@@ -268,7 +267,7 @@ dlg_preferences (GooWindow *window)
                             DATA_COLUMN, GOO_FILE_FORMAT_WAVE,
                             PRESENT_COLUMN, wave_encoder,
                            -1);
-	if (encoder != NULL) 
+	if (encoder != NULL)
 		gst_object_unref (GST_OBJECT (encoder));
 
 	file_format = pref_get_file_format ();
@@ -285,19 +284,19 @@ dlg_preferences (GooWindow *window)
 		else if (wave_encoder)
 			file_format = GOO_FILE_FORMAT_WAVE;
 	}
-	
+
 	gtk_combo_box_set_active (GTK_COMBO_BOX (data->filetype_combobox), file_format);
 	filetype_combobox_changed_cb (NULL, data);
 
 	/**/
-	
+
 	set_description_label (data, "ogg_description_label", _("Vorbis is an open source, lossy audio codec with high quality output at a lower file size than MP3."));
 	set_description_label (data, "flac_description_label", _("Free Lossless Audio Codec (FLAC) is an open source codec that compresses but does not degrade audio quality."));
 	set_description_label (data, "wave_description_label", _("WAV+PCM is a lossless format that holds uncompressed, raw pulse-code modulated (PCM) audio."));
-		
+
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GET_WIDGET ("save_playlist_checkbutton")), eel_gconf_get_boolean (PREF_EXTRACT_SAVE_PLAYLIST, TRUE));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (GET_WIDGET ("autoplay_checkbutton")), eel_gconf_get_boolean (PREF_GENERAL_AUTOPLAY, TRUE));
-	
+
 	/**/
 
 	data->drive_selector = brasero_drive_selection_new ();
@@ -322,7 +321,7 @@ dlg_preferences (GooWindow *window)
 			  "clicked",
 			  G_CALLBACK (filetype_properties_clicked_cb),
 			  data);
-	g_signal_connect (G_OBJECT (data->drive_selector), 
+	g_signal_connect (G_OBJECT (data->drive_selector),
 			  "changed",
 			  G_CALLBACK (drive_selector_device_changed_cb),
 			  data);
@@ -345,7 +344,7 @@ dlg_preferences (GooWindow *window)
 typedef struct {
 	GooFileFormat  format;
 	int            value;
-	
+
 	GtkBuilder    *builder;
 	GtkWidget     *dialog;
 	GtkWidget     *f_quality_label;
@@ -354,7 +353,7 @@ typedef struct {
 
 
 static void
-format_dialog_destroy_cb (GtkWidget        *widget, 
+format_dialog_destroy_cb (GtkWidget        *widget,
 	    		  FormatDialogData *data)
 {
 	g_object_unref (data->builder);
@@ -363,7 +362,7 @@ format_dialog_destroy_cb (GtkWidget        *widget,
 
 
 static void
-format_dialog_ok_button_clicked_cb (GtkWidget        *widget, 
+format_dialog_ok_button_clicked_cb (GtkWidget        *widget,
 	 			    FormatDialogData *data)
 {
 	switch (data->format) {
@@ -376,7 +375,7 @@ format_dialog_ok_button_clicked_cb (GtkWidget        *widget,
 	default:
 		break;
 	}
-	
+
 	gtk_widget_destroy (data->dialog);
 }
 
@@ -389,7 +388,7 @@ format_dialog_scale_value_changed_cb (GtkRange         *range,
 }
 
 
-static int 
+static int
 find_index (int a[], int v)
 {
 	int i;
@@ -435,13 +434,13 @@ dlg_format (DialogData    *preferences_data,
 {
 	FormatDialogData *data;
         char             *text;
-        
+
 	data = g_new0 (FormatDialogData, 1);
 	data->format = format;
 	data->builder = _gtk_builder_new_from_file ("format-options.ui", "");
 	data->dialog = GET_WIDGET ("format_dialog");
-	
-	/* Set widgets data. */		
+
+	/* Set widgets data. */
 
 	if (format == GOO_FILE_FORMAT_FLAC) {
 		gtk_adjustment_set_upper (GTK_ADJUSTMENT (GET_WIDGET ("quality_adjustment")), 9.0);
diff --git a/src/dlg-ripper.c b/src/dlg-ripper.c
index ad40d75..5777e56 100644
--- a/src/dlg-ripper.c
+++ b/src/dlg-ripper.c
@@ -22,10 +22,9 @@
 
 #include <config.h>
 #include <math.h>
-#include <brasero/brasero-drive.h>
+#include <brasero3/brasero-drive.h>
 #include <gtk/gtk.h>
 #include <gst/gst.h>
-#include "gconf-utils.h"
 #include "glib-utils.h"
 #include "gtk-utils.h"
 #include "main.h"
@@ -161,27 +160,27 @@ update_ui (gpointer callback_data)
 	if ((fraction < 10e-3) || (ripped_tracks < 250)) {
 		time_left = NULL;
 		data->prev_remaining_time = -1.0;
-	} 
-	else {  
+	}
+	else {
 		double elapsed, remaining_time;
 		int    minutes, seconds;
-		
+
 		elapsed = g_timer_elapsed (data->timer, NULL);
-		remaining_time = (elapsed / fraction) - elapsed;	
+		remaining_time = (elapsed / fraction) - elapsed;
 		minutes = (int) (floor (remaining_time + 0.5)) / 60;
 		seconds = (int) (floor (remaining_time + 0.5)) % 60;
-		
-		if ((data->prev_remaining_time > 0.0) 
+
+		if ((data->prev_remaining_time > 0.0)
 		    && ( fabs (data->prev_remaining_time - remaining_time) > 20.0))
 			time_left = NULL;
-		else if (minutes > 59) 
+		else if (minutes > 59)
 			time_left = g_strdup_printf (_("(%d:%02d:%02d Remaining)"), minutes / 60, minutes % 60, seconds);
-		else 
+		else
 			time_left = g_strdup_printf (_("(%d:%02d Remaining)"), minutes, seconds);
-			
+
 		data->prev_remaining_time = remaining_time;
 	}
-	
+
 	msg = g_strdup_printf (_("Extracting track: %d of %d %s"), data->current_track_n, data->n_tracks, (time_left != NULL ? time_left : ""));
 	gtk_progress_bar_set_text  (GTK_PROGRESS_BAR (GET_WIDGET ("progress_progressbar")), msg);
 
@@ -193,23 +192,23 @@ update_ui (gpointer callback_data)
 
 
 static void
-pipeline_eos_cb (GstBus     *bus, 
-		 GstMessage *message, 
+pipeline_eos_cb (GstBus     *bus,
+		 GstMessage *message,
 		 gpointer    callback_data)
 {
 	DialogData *data = callback_data;
-	
+
 	if (data->update_handle != 0) {
 		g_source_remove (data->update_handle);
 		data->update_handle = 0;
 	}
-	g_idle_add (rip_next_track, data);	
+	g_idle_add (rip_next_track, data);
 }
 
 
 static void
-pipeline_error_cb (GstBus     *bus, 
-		   GstMessage *message, 
+pipeline_error_cb (GstBus     *bus,
+		   GstMessage *message,
 		   gpointer    callback_data)
 {
 	DialogData *data = callback_data;
@@ -219,9 +218,9 @@ pipeline_error_cb (GstBus     *bus,
 	gtk_widget_hide (data->dialog);
 
 	gst_message_parse_error (message, &error, NULL);
-	_gtk_error_dialog_from_gerror_run (GTK_WINDOW (data->window), _("Could not extract the tracks"), &error);	
+	_gtk_error_dialog_from_gerror_run (GTK_WINDOW (data->window), _("Could not extract the tracks"), &error);
 
-	gtk_widget_destroy (data->dialog);	
+	gtk_widget_destroy (data->dialog);
 }
 
 
@@ -235,10 +234,10 @@ update_progress_cb (gpointer callback_data)
 		g_source_remove (data->update_handle);
 		data->update_handle = 0;
 	}
-	
+
 	if (! gst_pad_query_position (data->source_pad, &data->sector_format, &sector))
 		return FALSE;
-	
+
 	data->current_track_sectors = sector;
 	g_idle_add (update_ui, data);
 
@@ -253,27 +252,27 @@ create_pipeline (DialogData *data)
 {
 	GstBus     *bus;
 	GstElement *audioconvert;
-	GstElement *audioresample;	
+	GstElement *audioresample;
 	GstElement *queue;
 	float       ogg_quality;
 	int         flac_compression;
-	
+
 	data->pipeline = gst_pipeline_new ("pipeline");
-	
+
 	data->source = gst_element_factory_make ("cdparanoiasrc", "source");
-	g_object_set (G_OBJECT (data->source), 
+	g_object_set (G_OBJECT (data->source),
 		      "device", brasero_drive_get_device (data->drive),
 		      "read-speed", G_MAXINT,
 		      NULL);
 
 	audioconvert = gst_element_factory_make ("audioconvert", "convert");
     	audioresample = gst_element_factory_make ("audioresample", "resample");
-    	
+
 	queue = gst_element_factory_make ("queue", "queue");
 	g_object_set (queue, "max-size-time", 120 * GST_SECOND, NULL);
 
 	switch (data->format) {
-	case GOO_FILE_FORMAT_OGG:	
+	case GOO_FILE_FORMAT_OGG:
 		data->ext = "ogg";
 		data->encoder = gst_element_factory_make (OGG_ENCODER, "encoder");
 		ogg_quality = eel_gconf_get_float (PREF_ENCODER_OGG_QUALITY, DEFAULT_OGG_QUALITY);
@@ -301,19 +300,19 @@ create_pipeline (DialogData *data)
 	data->sink = gst_element_factory_make ("giosink", "sink");
 
 	if (data->encoder == data->container) {
-		gst_bin_add_many (GST_BIN (data->pipeline), data->source, queue, 
-				  audioconvert, audioresample, data->encoder, 
+		gst_bin_add_many (GST_BIN (data->pipeline), data->source, queue,
+				  audioconvert, audioresample, data->encoder,
 				  data->sink, NULL);
-		gst_element_link_many (data->source, queue, audioconvert, 
-				       audioresample, data->encoder, 
+		gst_element_link_many (data->source, queue, audioconvert,
+				       audioresample, data->encoder,
 				       data->sink, NULL);
 	}
 	else {
-		gst_bin_add_many (GST_BIN (data->pipeline), data->source, queue, 
+		gst_bin_add_many (GST_BIN (data->pipeline), data->source, queue,
 				  audioconvert, audioresample, data->encoder,
 				  data->container, data->sink, NULL);
-		gst_element_link_many (data->source, queue, audioconvert, 
-				       audioresample, data->encoder, 
+		gst_element_link_many (data->source, queue, audioconvert,
+				       audioresample, data->encoder,
 				       data->container, data->sink, NULL);
 	}
 
@@ -323,13 +322,13 @@ create_pipeline (DialogData *data)
 
 	bus =  gst_element_get_bus (data->pipeline);
 	gst_bus_add_signal_watch (bus);
-	g_signal_connect (G_OBJECT (bus), 
-			  "message::error", 
-			  G_CALLBACK (pipeline_error_cb), 
+	g_signal_connect (G_OBJECT (bus),
+			  "message::error",
+			  G_CALLBACK (pipeline_error_cb),
 			  data);
-	g_signal_connect (G_OBJECT (bus), 
-			  "message::eos", 
-			  G_CALLBACK (pipeline_eos_cb), 
+	g_signal_connect (G_OBJECT (bus),
+			  "message::eos",
+			  G_CALLBACK (pipeline_eos_cb),
 			  data);
 }
 
@@ -446,11 +445,11 @@ done_dialog_response_cb (GtkDialog  *dialog,
 	DialogData *data = (DialogData*) userdata;
 
 	gtk_widget_destroy (GTK_WIDGET (dialog));
-	
+
 	if ((button_number == GTK_RESPONSE_OK) && eel_gconf_get_boolean (PREF_RIPPER_VIEW_DISTINATION, FALSE)) {
 		GFile  *folder;
 		GError *error = NULL;
-		
+
 		folder = get_destination_folder (data, &error);
 		if (folder != NULL) {
 			char *uri;
@@ -532,7 +531,7 @@ save_playlist (DialogData *data)
 
 		strcpy (buffer, "Version=2\n");
 		g_output_stream_write (stream, buffer, strlen (buffer), NULL, NULL);
-		
+
 		for (scan = data->tracks; scan; scan = scan->next) {
 			TrackInfo *track = scan->data;
 			char      *track_filename;
@@ -542,11 +541,11 @@ save_playlist (DialogData *data)
 
 			track_filename = get_track_filename (track, data->ext);
 			unescaped = g_uri_unescape_string (track_filename, "");
-			
+
 			sprintf (buffer, "File%d=%s\n", n, unescaped);
 			g_output_stream_write (stream, buffer, strlen (buffer), NULL, NULL);
-			
-			g_free (unescaped);		 
+
+			g_free (unescaped);
 			g_free (track_filename);
 
 			sprintf (buffer, "Title%d=%s - %s\n", n, data->album->artist, track->title);
@@ -592,7 +591,7 @@ rip_current_track (DialogData *data)
 							 GTK_STOCK_OK,
 							 _("_View destination folder"),
 							 PREF_RIPPER_VIEW_DISTINATION);
-							    
+
 		g_signal_connect (G_OBJECT (d), "response",
 				  G_CALLBACK (done_dialog_response_cb),
 				  data);
@@ -604,7 +603,7 @@ rip_current_track (DialogData *data)
 
 	track = data->current_track->data;
 
-	msg = g_markup_printf_escaped (_("<i>Extracting \"%s\"</i>"), track->title); 
+	msg = g_markup_printf_escaped (_("<i>Extracting \"%s\"</i>"), track->title);
 	gtk_label_set_markup (GTK_LABEL (GET_WIDGET ("track_label")), msg);
 	g_free (msg);
 
@@ -644,34 +643,34 @@ rip_current_track (DialogData *data)
 	/* Set track tags. */
 
 	if (GST_IS_TAG_SETTER (data->encoder)) {
-		gst_tag_setter_add_tags (GST_TAG_SETTER (data->encoder),   
+		gst_tag_setter_add_tags (GST_TAG_SETTER (data->encoder),
 				         GST_TAG_MERGE_REPLACE,
 				         GST_TAG_TITLE, track->title,
 				         GST_TAG_ARTIST, data->album->artist,
 				         GST_TAG_ALBUM, data->album->title,
 				         GST_TAG_TRACK_NUMBER, (guint) track->number + 1,
 				         GST_TAG_TRACK_COUNT, (guint) data->n_tracks,
-				         GST_TAG_DURATION, (guint64) track->length * GST_SECOND, 
+				         GST_TAG_DURATION, (guint64) track->length * GST_SECOND,
 				         GST_TAG_COMMENT, _("Ripped with CD Player"),
 				         GST_TAG_ENCODER, PACKAGE_NAME,
 				         GST_TAG_ENCODER_VERSION, PACKAGE_VERSION,
 				         NULL);
 		if (data->album->genre != NULL)
-			gst_tag_setter_add_tags (GST_TAG_SETTER (data->encoder),   
+			gst_tag_setter_add_tags (GST_TAG_SETTER (data->encoder),
 					         GST_TAG_MERGE_REPLACE,
 					         GST_TAG_GENRE, data->album->genre,
 					         NULL);
-		if (g_date_valid (data->album->release_date)) 
-			gst_tag_setter_add_tags (GST_TAG_SETTER (data->encoder),   
+		if (g_date_valid (data->album->release_date))
+			gst_tag_setter_add_tags (GST_TAG_SETTER (data->encoder),
 					         GST_TAG_MERGE_REPLACE,
 					         GST_TAG_DATE, data->album->release_date,
 					         NULL);
 	}
-		
+
 	/* Seek to track. */
 
 	gst_element_set_state (data->pipeline, GST_STATE_PAUSED);
-	event = gst_event_new_seek (1.0, 
+	event = gst_event_new_seek (1.0,
 				    data->track_format,
 				    GST_SEEK_FLAG_FLUSH,
 				    GST_SEEK_TYPE_SET,
@@ -710,7 +709,7 @@ start_ripper (DialogData *data)
 	data->current_track_n = 1;
 	data->current_track = data->tracks;
 
-	g_timer_start (data->timer);	
+	g_timer_start (data->timer);
 	rip_current_track (data);
 }
 
@@ -721,7 +720,7 @@ dlg_ripper (GooWindow *window,
 {
 	GooPlayer  *player;
 	DialogData *data;
-	
+
 	goo_window_stop (window);
 	player = goo_window_get_player (window);
 
diff --git a/src/gnome-desktop-thumbnail.c b/src/gnome-desktop-thumbnail.c
index 7cdbf95..5849ccf 100644
--- a/src/gnome-desktop-thumbnail.c
+++ b/src/gnome-desktop-thumbnail.c
@@ -41,8 +41,6 @@
 
 #define GNOME_DESKTOP_USE_UNSTABLE_API
 #include "gnome-desktop-thumbnail.h"
-#include <gconf/gconf.h>
-#include <gconf/gconf-client.h>
 #include <glib/gstdio.h>
 
 #define SECONDS_BETWEEN_STATS 10
diff --git a/src/goo-player-info.c b/src/goo-player-info.c
index 25fc3bd..341a844 100644
--- a/src/goo-player-info.c
+++ b/src/goo-player-info.c
@@ -64,7 +64,7 @@ struct _GooPlayerInfoPrivateData {
 	gint64       track_length;
 	gboolean     dragging;
 	guint        update_id;
-	
+
 	double       fraction;
 	guint        update_progress_timeout;
 };
@@ -91,23 +91,20 @@ static void goo_player_info_finalize    (GObject *object);
 G_DEFINE_TYPE (GooPlayerInfo, goo_player_info, GTK_TYPE_HBOX)
 
 static void
-goo_player_info_size_request (GtkWidget      *widget,
-			      GtkRequisition *requisition)
-{	
-	GooPlayerInfo *info;
-	
-	if (GTK_WIDGET_CLASS (goo_player_info_parent_class)->size_request)
-		(* GTK_WIDGET_CLASS (goo_player_info_parent_class)->size_request) (widget, requisition);
-	
-	info = (GooPlayerInfo *) widget;
+goo_player_info_get_preferred_width (GtkWidget *widget,
+				     int       *minimum_width,
+				     int       *natural_width)
+{
+	GooPlayerInfo *info = GOO_PLAYER_INFO (widget);
+
 	if (info->priv->interactive)
-		requisition->width = MAX (requisition->width, MIN_WIDTH);
+		minimum_width = natural_width = MIN_WIDTH;
 	else
-		requisition->width = MIN (MAX (requisition->width, MIN_TOOLTIP_WIDTH), MAX_TOOLTIP_WIDTH);
+		minimum_width = natural_width = MIN_TOOLTIP_WIDTH;
 }
 
 
-static void 
+static void
 goo_player_info_class_init (GooPlayerInfoClass *class)
 {
         GObjectClass   *gobject_class;
@@ -120,7 +117,7 @@ goo_player_info_class_init (GooPlayerInfoClass *class)
 			      G_STRUCT_OFFSET (GooPlayerInfoClass, cover_clicked),
 			      NULL, NULL,
 			      goo_marshal_VOID__VOID,
-			      G_TYPE_NONE, 
+			      G_TYPE_NONE,
 			      0);
 	goo_player_info_signals[SKIP_TO] =
                 g_signal_new ("skip_to",
@@ -129,7 +126,7 @@ goo_player_info_class_init (GooPlayerInfoClass *class)
 			      G_STRUCT_OFFSET (GooPlayerInfoClass, skip_to),
 			      NULL, NULL,
 			      goo_marshal_VOID__INT,
-			      G_TYPE_NONE, 
+			      G_TYPE_NONE,
 			      1,
 			      G_TYPE_INT);
 
@@ -137,7 +134,7 @@ goo_player_info_class_init (GooPlayerInfoClass *class)
         gobject_class->finalize = goo_player_info_finalize;
 
 	widget_class = GTK_WIDGET_CLASS (class);
-	widget_class->size_request = goo_player_info_size_request;
+	widget_class->get_preferred_width = goo_player_info_get_preferred_width;
 
 	g_type_class_add_private (class, sizeof (GooPlayerInfoPrivateData));
 }
@@ -159,7 +156,7 @@ set_label (GtkWidget     *label,
 	e_text = g_markup_escape_text (text, -1);
 	markup = g_strdup_printf (format, e_text);
 	g_free (e_text);
-	
+
 	gtk_label_set_markup (GTK_LABEL (label), markup);
 	g_free (markup);
 }
@@ -211,7 +208,7 @@ time_scale_value_changed_cb (GtkRange      *range,
 {
 	double new_value;
 	gint64 current_time;
-	
+
 	new_value = gtk_range_get_value (range);
 	current_time = info->priv->track_length * (new_value / 100.0);
 	g_free (info->priv->current_time);
@@ -222,7 +219,7 @@ time_scale_value_changed_cb (GtkRange      *range,
 
 	if (! info->priv->dragging) {
 		int seconds;
-		
+
 		seconds = (int) (new_value * info->priv->track_length);
 		g_signal_emit (info, goo_player_info_signals[SKIP_TO], 0, seconds);
 	}
@@ -241,7 +238,7 @@ update_time_label_cb (gpointer data)
 		g_source_remove (priv->update_id);
 		priv->update_id = 0;
 	}
-	
+
 	current_time = priv->track_length * new_value;
 	g_free (info->priv->current_time);
 	info->priv->current_time = _g_format_duration_for_display (current_time * 1000);
@@ -295,7 +292,7 @@ cover_button_clicked_cb (GtkWidget     *button,
 /* -- drag and drop -- */
 
 
-void  
+void
 cover_button_drag_data_received  (GtkWidget          *widget,
 				  GdkDragContext     *context,
 				  gint                x,
@@ -308,11 +305,6 @@ cover_button_drag_data_received  (GtkWidget          *widget,
 	GooPlayerInfo  *info = extra_data;
 	char          **uris;
 
-	if (! ((data->length >= 0) && (data->format == 8))) {
-		gtk_drag_finish (context, FALSE, FALSE, time);
-		return;
-	}
-
 	gtk_drag_finish (context, TRUE, FALSE, time);
 
 	uris = gtk_selection_data_get_uris (data);
@@ -332,7 +324,7 @@ cover_button_drag_data_received  (GtkWidget          *widget,
 }
 
 
-static void 
+static void
 goo_player_info_init (GooPlayerInfo *info)
 {
 	info->priv = GOO_PLAYER_INFO_GET_PRIVATE_DATA (info);
@@ -342,7 +334,7 @@ goo_player_info_init (GooPlayerInfo *info)
 static void goo_player_info_update_state (GooPlayerInfo *info);
 
 
-static void 
+static void
 goo_player_info_construct (GooPlayerInfo *info)
 {
 	GooPlayerInfoPrivateData *priv;
@@ -355,9 +347,9 @@ goo_player_info_construct (GooPlayerInfo *info)
 	priv->total_time = NULL;
 	priv->update_id = 0;
 
-	GTK_WIDGET_UNSET_FLAGS (info, GTK_CAN_FOCUS);
-	GTK_BOX (info)->spacing = SPACING;
-	GTK_BOX (info)->homogeneous = FALSE;
+	gtk_widget_set_can_focus (info, FALSE);
+	gtk_box_set_spacing (GTK_BOX (info), SPACING);
+	gtk_box_set_homogeneous (GTK_BOX (info), FALSE);
 
 	/* Title and Artist */
 
@@ -379,7 +371,7 @@ goo_player_info_construct (GooPlayerInfo *info)
 	gtk_label_set_ellipsize (GTK_LABEL (priv->title2_label),
 				 PANGO_ELLIPSIZE_END);
 	gtk_label_set_width_chars (GTK_LABEL (priv->title2_label), MIN_CHARS);
-	
+
 	gtk_label_set_ellipsize (GTK_LABEL (priv->title3_label),
 				 PANGO_ELLIPSIZE_END);
 	gtk_label_set_width_chars (GTK_LABEL (priv->title3_label), MIN_CHARS);
@@ -392,7 +384,7 @@ goo_player_info_construct (GooPlayerInfo *info)
 	gtk_range_set_increments (GTK_RANGE (priv->time_scale), 0.01, 0.1);
 	gtk_scale_set_draw_value (GTK_SCALE (priv->time_scale), FALSE);
 	gtk_widget_set_size_request (priv->time_scale, SCALE_WIDTH, -1);
-	gtk_range_set_update_policy (GTK_RANGE (priv->time_scale), GTK_UPDATE_DISCONTINUOUS);
+	/* gtk_range_set_update_policy (GTK_RANGE (priv->time_scale), GTK_UPDATE_DISCONTINUOUS); FIXME */
 	gtk_widget_set_no_show_all (priv->time_scale, TRUE);
 
 	priv->time_label = gtk_label_new (NULL);
@@ -424,9 +416,9 @@ goo_player_info_construct (GooPlayerInfo *info)
 				   GTK_DEST_DEFAULT_ALL,
 				   target_table, n_targets,
 				   GDK_ACTION_COPY);
-		g_signal_connect (G_OBJECT (priv->cover_button), 
+		g_signal_connect (G_OBJECT (priv->cover_button),
 				  "drag_data_received",
-				  G_CALLBACK (cover_button_drag_data_received), 
+				  G_CALLBACK (cover_button_drag_data_received),
 				  info);
 	}
 
@@ -436,14 +428,14 @@ goo_player_info_construct (GooPlayerInfo *info)
 	else
 		gtk_widget_set_size_request (priv->cover_image, TRAY_COVER_SIZE, TRAY_COVER_SIZE);
 	gtk_widget_show (priv->cover_image);
-	
+
 	if (priv->interactive)
 		gtk_container_add (GTK_CONTAINER (priv->cover_button), priv->cover_image);
 	else
 		priv->cover_button = priv->cover_image;
 
 	/* Status image */
-	
+
 	priv->status_image = gtk_image_new_from_stock (GOO_STOCK_NO_DISC, GTK_ICON_SIZE_DIALOG);
 	if (priv->interactive)
 		gtk_widget_set_size_request (priv->status_image, COVER_SIZE, COVER_SIZE);
@@ -459,10 +451,10 @@ goo_player_info_construct (GooPlayerInfo *info)
 	gtk_notebook_set_show_tabs (GTK_NOTEBOOK (priv->notebook), FALSE);
 	gtk_notebook_set_show_border (GTK_NOTEBOOK (priv->notebook), FALSE);
 	gtk_widget_show (priv->notebook);
-	
+
 	gtk_notebook_append_page (GTK_NOTEBOOK (priv->notebook), priv->status_image, NULL);
 	gtk_notebook_append_page (GTK_NOTEBOOK (priv->notebook), priv->cover_button, NULL);
-	
+
 	priv->cover_frame = gtk_frame_new (NULL);
 	gtk_container_set_border_width (GTK_CONTAINER (priv->cover_frame), 6);
 	if (! priv->interactive)
@@ -471,7 +463,7 @@ goo_player_info_construct (GooPlayerInfo *info)
 	gtk_container_add (GTK_CONTAINER (priv->cover_frame), priv->notebook);
 
 	gtk_box_pack_start (GTK_BOX (info), priv->cover_frame, FALSE, FALSE, 0);
-		
+
 	/**/
 
 	vbox = gtk_vbox_new (FALSE, 0);
@@ -490,31 +482,31 @@ goo_player_info_construct (GooPlayerInfo *info)
 	set_title2 (info, "");
 	set_title3 (info, "");
 
-	g_signal_connect (priv->time_scale, 
+	g_signal_connect (priv->time_scale,
 			  "value_changed",
-			  G_CALLBACK (time_scale_value_changed_cb), 
+			  G_CALLBACK (time_scale_value_changed_cb),
 			  info);
-	g_signal_connect (priv->time_scale, 
+	g_signal_connect (priv->time_scale,
 			  "button_press_event",
-			  G_CALLBACK (time_scale_button_press_cb), 
+			  G_CALLBACK (time_scale_button_press_cb),
 			  info);
-	g_signal_connect (priv->time_scale, 
+	g_signal_connect (priv->time_scale,
 			  "button_release_event",
-			  G_CALLBACK (time_scale_button_release_cb), 
+			  G_CALLBACK (time_scale_button_release_cb),
 			  info);
 
 	goo_player_info_update_state (info);
 }
 
 
-static void 
+static void
 goo_player_info_finalize (GObject *object)
 {
         GooPlayerInfo *info;
 
         g_return_if_fail (object != NULL);
         g_return_if_fail (GOO_IS_PLAYER_INFO (object));
-  
+
 	info = GOO_PLAYER_INFO (object);
 	if (info->priv != NULL) {
 		g_free (info->priv->current_time);
@@ -561,7 +553,7 @@ update_progress_cb (gpointer data)
 		/* nothing */;
 	else
 		goo_player_info_set_time (info, info->priv->fraction * info->priv->track_length);
-	
+
 	return FALSE;
 }
 
@@ -588,14 +580,14 @@ update_subtitle (GooPlayerInfo *info,
 		 TrackInfo     *track)
 {
  	AlbumInfo *album;
-	
+
 	album = goo_window_get_album (info->priv->window);
-	
+
 	if ((album->title == NULL) || (album->artist == NULL)) {
 		g_free (info->priv->total_time);
 		info->priv->total_time = _g_format_duration_for_display (track->length * 1000);
 		set_title2 (info, info->priv->total_time);
-	} 
+	}
 	else {
 		set_title2 (info, album->title);
 		set_title3 (info, album->artist);
@@ -612,7 +604,7 @@ goo_player_info_update_state (GooPlayerInfo *info)
 	GooPlayerState  state;
 	AlbumInfo      *album;
 	GooPlayer      *player;
-	
+
 	if (info->priv->window == NULL)
 		return;
 	player = goo_window_get_player (info->priv->window);
@@ -622,13 +614,13 @@ goo_player_info_update_state (GooPlayerInfo *info)
 	state = goo_player_get_state (player);
 	album = goo_window_get_album (info->priv->window);
 
-	if ((state == GOO_PLAYER_STATE_PLAYING) 
+	if ((state == GOO_PLAYER_STATE_PLAYING)
 	    || (state == GOO_PLAYER_STATE_PAUSED)) {
 	    	if (info->priv->interactive)
 			gtk_widget_show (priv->time_scale);
 		gtk_widget_show (priv->time_label);
 		gtk_widget_show (priv->playing_label);
-	} 
+	}
 	else {
 		gtk_widget_hide (priv->time_scale);
 		gtk_widget_hide (priv->time_label);
@@ -644,7 +636,7 @@ goo_player_info_update_state (GooPlayerInfo *info)
 		set_title1 (info, _("No disc"));
 		set_title2 (info, "");
 		set_title3 (info, "");
-	} 
+	}
 	else if (state == GOO_PLAYER_STATE_DATA_DISC) {
 		set_title1 (info, _("Data disc"));
 		set_title2 (info, "");
@@ -652,7 +644,7 @@ goo_player_info_update_state (GooPlayerInfo *info)
 	}
 	else {
 		TrackInfo *track;
-		
+
 		track = album_info_get_track (album, goo_player_get_current_track (player));
 
 		if (track != NULL) {
@@ -668,26 +660,26 @@ goo_player_info_update_state (GooPlayerInfo *info)
 			gtk_label_set_selectable (GTK_LABEL (priv->title1_label), info->priv->interactive);
 
 			update_subtitle (info, track);
-		} 
+		}
 		else if (state == GOO_PLAYER_STATE_EJECTING) {
 			set_title1 (info, _("Ejecting CD"));
 			set_title2 (info, "");
-		} 
+		}
 		else if (state == GOO_PLAYER_STATE_UPDATING) {
 			set_title1 (info, _("Checking CD drive"));
 			set_title2 (info, "");
-		} 
+		}
 		else if (state == GOO_PLAYER_STATE_SEEKING) {
 			set_title1 (info, _("Reading CD"));
 			set_title2 (info, "");
-		} 
+		}
 		else if (state == GOO_PLAYER_STATE_LISTING) {
 			set_title1 (info, _("Reading CD"));
 			set_title2 (info, "");
-		} 
+		}
 		else {
 			char year[128];
-			
+
 			if (g_date_valid (album->release_date) != 0)
 				sprintf (year, "%u", g_date_get_year (album->release_date));
 			else
@@ -696,7 +688,7 @@ goo_player_info_update_state (GooPlayerInfo *info)
 			if (album->title != NULL) {
 				set_title1 (info, album->title);
 				gtk_label_set_selectable (GTK_LABEL (priv->title1_label), info->priv->interactive);
-			} 
+			}
 			else
 				set_title1 (info, _("Audio CD"));
 
@@ -704,13 +696,13 @@ goo_player_info_update_state (GooPlayerInfo *info)
 				set_title2 (info, album->artist);
 				set_title3 (info, year);
 				gtk_label_set_selectable (GTK_LABEL (priv->title2_label), info->priv->interactive);
-			} 
+			}
 			else {
 				set_title2 (info, year);
 				set_title3 (info, "");
 			}
 		}
-		
+
 		track_info_unref (track);
 	}
 }
@@ -761,7 +753,7 @@ player_done_cb (GooPlayer       *player,
 		GooPlayerInfo   *info)
 {
 	AlbumInfo *album;
-	
+
 	switch (action) {
 	case GOO_PLAYER_ACTION_LIST:
 		goo_player_info_update_state (info);
@@ -792,31 +784,31 @@ goo_player_info_set_cover (GooPlayerInfo *info,
 			   const char    *cover)
 {
 	gboolean cover_set = FALSE;
-	
+
 	if (cover == NULL)
 		return;
-		
+
 	if (strcmp (cover, "no-disc") == 0) {
 		gtk_notebook_set_current_page (GTK_NOTEBOOK (info->priv->notebook), 0);
-		gtk_image_set_from_stock (GTK_IMAGE (info->priv->status_image), 
-					  GOO_STOCK_NO_DISC, 
+		gtk_image_set_from_stock (GTK_IMAGE (info->priv->status_image),
+					  GOO_STOCK_NO_DISC,
 					  GTK_ICON_SIZE_DIALOG);
 	}
 	else if (strcmp (cover, "data-disc") == 0) {
 		gtk_notebook_set_current_page (GTK_NOTEBOOK (info->priv->notebook), 0);
-		gtk_image_set_from_stock (GTK_IMAGE (info->priv->status_image), 
-					  GOO_STOCK_DATA_DISC, 
+		gtk_image_set_from_stock (GTK_IMAGE (info->priv->status_image),
+					  GOO_STOCK_DATA_DISC,
 					  GTK_ICON_SIZE_DIALOG);
 	}
 	else if (strcmp (cover, "audio-cd") == 0) {
 		gtk_notebook_set_current_page (GTK_NOTEBOOK (info->priv->notebook), 1);
-		gtk_image_set_from_stock (GTK_IMAGE (info->priv->cover_image), 
-					  GOO_STOCK_AUDIO_CD, 
+		gtk_image_set_from_stock (GTK_IMAGE (info->priv->cover_image),
+					  GOO_STOCK_AUDIO_CD,
 					  GTK_ICON_SIZE_DIALOG);
 	}
 	else {
 		GdkPixbuf *image;
-			
+
 		image = gdk_pixbuf_new_from_file_at_size (cover, 80, 80, NULL);
 		if (image != NULL) {
 			gtk_notebook_set_current_page (GTK_NOTEBOOK (info->priv->notebook), 1);
@@ -824,10 +816,10 @@ goo_player_info_set_cover (GooPlayerInfo *info,
 			cover_set = TRUE;
 			g_object_unref (image);
 		}
-		else 
+		else
 			goo_player_info_set_cover (info, "audio-cd");
 	}
-	
+
 	if (! info->priv->interactive)
 		gtk_frame_set_shadow_type (GTK_FRAME (info->priv->cover_frame), cover_set ? GTK_SHADOW_NONE : GTK_SHADOW_ETCHED_IN);
 }
@@ -839,7 +831,7 @@ window_update_cover_cb (GooWindow     *window,
 {
 	GooPlayerState  state;
 	char           *filename;
-	
+
 	state = goo_player_get_state (goo_window_get_player (window));
 
 	if ((state == GOO_PLAYER_STATE_ERROR) || (state == GOO_PLAYER_STATE_NO_DISC)) {
@@ -847,17 +839,17 @@ window_update_cover_cb (GooWindow     *window,
 	    	return;
 	}
 
-	if (state == GOO_PLAYER_STATE_DATA_DISC) { 
+	if (state == GOO_PLAYER_STATE_DATA_DISC) {
 	    	goo_player_info_set_cover (info, "data-disc");
 	    	return;
 	}
-	
+
 	filename = goo_window_get_cover_filename (window);
 	if (filename == NULL) {
-		goo_player_info_set_cover (info, "audio-cd"); 
+		goo_player_info_set_cover (info, "audio-cd");
 		return;
 	}
-	
+
 	goo_player_info_set_cover (info, filename);
 	g_free (filename);
 }
@@ -869,38 +861,38 @@ goo_player_info_new (GooWindow *window,
 {
 	GooPlayerInfo *info;
 	GooPlayer     *player;
-	
+
 	g_return_val_if_fail (window != NULL, NULL);
-	
+
 	player = goo_window_get_player (window);
 	g_return_val_if_fail (player != NULL, NULL);
-	
+
 	info = GOO_PLAYER_INFO (g_object_new (GOO_TYPE_PLAYER_INFO, NULL));
 
 	info->priv->window = window;
 	info->priv->interactive = interactive;
 	goo_player_info_construct (info);
-	
-	g_signal_connect (window, 
+
+	g_signal_connect (window,
 			  "update_cover",
-			  G_CALLBACK (window_update_cover_cb), 
+			  G_CALLBACK (window_update_cover_cb),
 			  info);
-	
-	g_signal_connect (player, 
+
+	g_signal_connect (player,
 			  "start",
-			  G_CALLBACK (player_start_cb), 
+			  G_CALLBACK (player_start_cb),
 			  info);
-	g_signal_connect (player, 
+	g_signal_connect (player,
 			  "done",
-			  G_CALLBACK (player_done_cb), 
-			  info);	
-	g_signal_connect (player, 
+			  G_CALLBACK (player_done_cb),
+			  info);
+	g_signal_connect (player,
 			  "progress",
-			  G_CALLBACK (player_progress_cb), 
+			  G_CALLBACK (player_progress_cb),
 			  info);
-	g_signal_connect (player, 
+	g_signal_connect (player,
 			  "state_changed",
-			  G_CALLBACK (player_state_changed_cb), 
+			  G_CALLBACK (player_state_changed_cb),
 			  info);
 
 	return GTK_WIDGET (info);
diff --git a/src/goo-player.h b/src/goo-player.h
index e3710de..d271314 100644
--- a/src/goo-player.h
+++ b/src/goo-player.h
@@ -25,7 +25,7 @@
 
 #include <glib.h>
 #include <gio/gio.h>
-#include <brasero/brasero-drive.h>
+#include <brasero3/brasero-drive.h>
 #include "track-info.h"
 #include "album-info.h"
 
@@ -88,7 +88,7 @@ struct _GooPlayerClass
 					  double           fraction);
         void        (*message)           (GooPlayer       *player,
 					  const char      *msg);
-	void        (*state_changed)     (GooPlayer       *player);	
+	void        (*state_changed)     (GooPlayer       *player);
 };
 
 GType            goo_player_get_type            (void);
diff --git a/src/goo-volume-tool-button.c b/src/goo-volume-tool-button.c
index 2f7e3dd..e606d18 100644
--- a/src/goo-volume-tool-button.c
+++ b/src/goo-volume-tool-button.c
@@ -24,17 +24,17 @@
  */
 
 /* This file contains code taken from:
- * 
+ *
  * GTK - The GIMP Toolkit
  *
  * Copyright (C) 2003 Ricardo Fernandez Pascual
  * Copyright (C) 2004 Paolo Borelli
- * 
+ *
  * and:
- * 
+ *
  * Volume Button / popup widget
  * (c) copyright 2005 Ronald S. Bultje <rbultje ronald bitfreak net>
- * 
+ *
  */
 
 #include <config.h>
@@ -68,10 +68,10 @@ struct _GooVolumeToolButtonPrivate {
 	double       step;
 	gboolean     mute;
 	double       mute_value;
-	
+
 	guint        timeout : 1;
 	guint32      pop_time;
-	
+
 	guint        down_button_scroll_id;
 	gboolean     down_button_pressed;
 	guint        up_button_scroll_id;
@@ -100,23 +100,23 @@ goo_volume_tool_button_construct_contents (GooVolumeToolButton *button)
 	if (orientation == GTK_ORIENTATION_HORIZONTAL) {
 		box = gtk_hbox_new (FALSE, 0);
 		gtk_arrow_set (GTK_ARROW (button->priv->arrow), GTK_ARROW_DOWN, GTK_SHADOW_NONE);
-	} 
+	}
 	else {
 		box = gtk_vbox_new (FALSE, 0);
 		gtk_arrow_set (GTK_ARROW (button->priv->arrow), GTK_ARROW_RIGHT, GTK_SHADOW_NONE);
 	}
 
-	if (button->priv->button && button->priv->button->parent) {
+	if (button->priv->button && gtk_widget_get_parent (button->priv->button)) {
 		g_object_ref (button->priv->button);
-		gtk_container_remove (GTK_CONTAINER (button->priv->button->parent),
+		gtk_container_remove (GTK_CONTAINER (gtk_widget_get_parent (button->priv->button)),
 				      button->priv->button);
 		gtk_container_add (GTK_CONTAINER (box), button->priv->button);
 		g_object_unref (button->priv->button);
 	}
 
-	if (button->priv->arrow_button && button->priv->arrow_button->parent) {
+	if (button->priv->arrow_button && gtk_widget_get_parent (button->priv->arrow_button)) {
 		g_object_ref (button->priv->arrow_button);
-		gtk_container_remove (GTK_CONTAINER (button->priv->arrow_button->parent),
+		gtk_container_remove (GTK_CONTAINER (gtk_widget_get_parent (button->priv->arrow_button)),
 				      button->priv->arrow_button);
 		gtk_box_pack_end (GTK_BOX (box), button->priv->arrow_button,
 				  FALSE, FALSE, 0);
@@ -156,7 +156,7 @@ update_volume_label (GooVolumeToolButton *button)
 		icon = GOO_STOCK_VOLUME_MAX;
 
 	gtk_tool_button_set_stock_id (GTK_TOOL_BUTTON (button), icon);
-	
+
 	text = g_strdup_printf ("<small>%3.0f%%</small>", value * 100.0);
 	gtk_label_set_markup (GTK_LABEL (button->priv->volume_label), text);
 	g_free (text);
@@ -172,7 +172,7 @@ static void
 goo_volume_tool_button_toolbar_reconfigured (GtkToolItem *toolitem)
 {
 	goo_volume_tool_button_construct_contents (GOO_VOLUME_TOOL_BUTTON (toolitem));
-	
+
 	/* chain up */
 	GTK_TOOL_ITEM_CLASS (goo_volume_tool_button_parent_class)->toolbar_reconfigured (toolitem);
 }
@@ -212,7 +212,7 @@ goo_volume_tool_button_class_init (GooVolumeToolButtonClass *klass)
 			      G_STRUCT_OFFSET (GooVolumeToolButtonClass, changed),
 			      NULL, NULL,
 			      goo_marshal_VOID__VOID,
-			      G_TYPE_NONE, 
+			      G_TYPE_NONE,
 			      0);
 
 	object_class = (GObjectClass *) klass;
@@ -220,7 +220,7 @@ goo_volume_tool_button_class_init (GooVolumeToolButtonClass *klass)
 
 	toolitem_class = (GtkToolItemClass *) klass;
 	toolitem_class->toolbar_reconfigured = goo_volume_tool_button_toolbar_reconfigured;
-	
+
 	g_type_class_add_private (object_class, sizeof (GooVolumeToolButtonPrivate));
 }
 
@@ -234,7 +234,7 @@ button_clicked_cb (GtkWidget           *widget,
 		goo_volume_tool_button_set_volume (button,
 						   0.0,
 						   TRUE);
-	} 
+	}
 	else {
 		if (FLOAT_EQUAL (button->priv->mute_value, 0.0))
 			button->priv->mute_value = DEFAULT_VOLUME;
@@ -254,66 +254,77 @@ arrow_button_press_cb (GtkToggleButton     *toggle_button,
 {
 	GtkWidget      *widget;
 	GtkAdjustment  *adj;
+	GtkAllocation   allocation;
+	GtkAllocation   allocation2;
   	int             x, y, m, dx, dy, sx, sy, ystartoff, mouse_y;
   	float           v;
   	GdkEventButton *e;
 
 	gtk_toggle_button_set_active (toggle_button, TRUE);
-	
+
 	widget = GTK_WIDGET (toggle_button);
 	adj = gtk_range_get_adjustment (GTK_RANGE (button->priv->volume_scale));
-	
+
 	button->priv->timeout = TRUE;
 
     	gtk_window_set_screen (GTK_WINDOW (button->priv->popup_win), gtk_widget_get_screen (widget));
-  
-  	gdk_window_get_origin (widget->window, &x, &y);
-  	x += widget->allocation.x;
-  	y += widget->allocation.y;
-  
+
+  	gdk_window_get_origin (gtk_widget_get_window (widget), &x, &y);
+  	gtk_widget_get_allocation (widget, &allocation);
+  	x += allocation.x;
+  	y += allocation.y;
+
 	gtk_window_move (GTK_WINDOW (button->priv->popup_win),
 			 x, y - (SCALE_HEIGHT / 2));
 	update_volume_label (button);
 	gtk_widget_show_all (button->priv->popup_win);
 
-	gdk_window_get_origin (button->priv->popup_win->window, &dx, &dy);
-  	dy += button->priv->popup_win->allocation.y;
-  	gdk_window_get_origin (button->priv->volume_scale->window, &sx, &sy);
-  	sy += button->priv->volume_scale->allocation.y;
+	gdk_window_get_origin (gtk_widget_get_window (button->priv->popup_win), &dx, &dy);
+	gtk_widget_get_allocation (button->priv->popup_win, &allocation);
+  	dy += allocation.y;
+
+  	gdk_window_get_origin (gtk_widget_get_window (button->priv->volume_scale), &sx, &sy);
+  	gtk_widget_get_allocation (button->priv->volume_scale, &allocation);
+  	sy += allocation.y;
+
   	ystartoff = sy - dy;
   	mouse_y = event->y;
 
-	v = gtk_range_get_value (GTK_RANGE (button->priv->volume_scale)) / (adj->upper - adj->lower);
-  	x += (widget->allocation.width - button->priv->popup_win->allocation.width) / 2;
+	v = gtk_range_get_value (GTK_RANGE (button->priv->volume_scale)) / (gtk_adjustment_get_upper (adj) - gtk_adjustment_get_lower (adj));
+	gtk_widget_get_allocation (widget, &allocation);
+	gtk_widget_get_allocation (button->priv->popup_win, &allocation2);
+  	x += (allocation.width - allocation2.width) / 2;
   	y -= ystartoff;
-  	y -= GTK_RANGE (button->priv->volume_scale)->min_slider_size / 2;
-  	m = button->priv->volume_scale->allocation.height - GTK_RANGE (button->priv->volume_scale)->min_slider_size;
+  	y -= gtk_range_get_min_slider_size (GTK_RANGE (button->priv->volume_scale)) / 2;
+  	gtk_widget_get_allocation (button->priv->volume_scale, &allocation);
+  	m = allocation.height - gtk_range_get_min_slider_size (GTK_RANGE (button->priv->volume_scale));
   	y -= m * (1.0 - v);
   	y += mouse_y;
   	gtk_window_move (GTK_WINDOW (button->priv->popup_win), x, y);
-  	gdk_window_get_origin (button->priv->volume_scale->window, &sx, &sy);
-	
-	gdk_pointer_grab (button->priv->popup_win->window,
+  	gdk_window_get_origin (gtk_widget_get_window (button->priv->volume_scale), &sx, &sy);
+
+	gdk_pointer_grab (gtk_widget_get_window (button->priv->popup_win),
 			  TRUE,
-			  (GDK_POINTER_MOTION_MASK 
-			   | GDK_BUTTON_PRESS_MASK 
+			  (GDK_POINTER_MOTION_MASK
+			   | GDK_BUTTON_PRESS_MASK
 			   | GDK_BUTTON_RELEASE_MASK),
-			  NULL, 
-			  NULL, 
+			  NULL,
+			  NULL,
 			  GDK_CURRENT_TIME);
-	gdk_keyboard_grab (button->priv->popup_win->window, TRUE, GDK_CURRENT_TIME);
+	gdk_keyboard_grab (gtk_widget_get_window (button->priv->popup_win), TRUE, GDK_CURRENT_TIME);
 	gtk_widget_grab_focus (button->priv->volume_scale);
 	gtk_grab_add (button->priv->popup_win);
 
 	/* forward event to the slider */
 	e = (GdkEventButton *) gdk_event_copy ((GdkEvent *) event);
-	e->window = button->priv->volume_scale->window;
-	e->x = button->priv->volume_scale->allocation.width / 2;
-	m = button->priv->volume_scale->allocation.height - GTK_RANGE (button->priv->volume_scale)->min_slider_size;
-	e->y = ((1.0 - v) * m) + GTK_RANGE (button->priv->volume_scale)->min_slider_size / 2 + 1;
+	e->window = gtk_widget_get_window (button->priv->volume_scale);
+	gtk_widget_get_allocation (button->priv->volume_scale, &allocation);
+	e->x = allocation.width / 2;
+	m = allocation.height - gtk_range_get_min_slider_size (GTK_RANGE (button->priv->volume_scale));
+	e->y = ((1.0 - v) * m) + gtk_range_get_min_slider_size (GTK_RANGE (button->priv->volume_scale)) / 2 + 1;
 	gtk_widget_event (button->priv->volume_scale, (GdkEvent *) e);
 	e->window = event->window;
-	gdk_event_free ((GdkEvent *) e);		
+	gdk_event_free ((GdkEvent *) e);
 
 	button->priv->pop_time = event->time;
 
@@ -328,7 +339,7 @@ ungrab (GooVolumeToolButton *button)
 	gdk_keyboard_ungrab (GDK_CURRENT_TIME);
 	gtk_grab_remove (button->priv->popup_win);
 	gtk_widget_hide (button->priv->popup_win);
-	
+
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (button->priv->arrow_button), FALSE);
 }
 
@@ -341,7 +352,7 @@ volume_scale_value_changed_cb (GtkRange            *range,
 	button->priv->mute = FLOAT_EQUAL (button->priv->value, 0.0);
 	update_volume_label (button);
 
-	g_signal_emit (G_OBJECT (button), 
+	g_signal_emit (G_OBJECT (button),
 		       goo_volume_tool_button_signals[CHANGED],
 		       0,
 		       NULL);
@@ -361,14 +372,14 @@ scale_button_release_cb (GtkToggleButton     *toggle_button,
 		}
 		button->priv->timeout = FALSE;
 	}
-	
+
 	return FALSE;
 }
 
 
 static int
-popup_win_event_cb (GtkWidget           *widget, 
-		    GdkEvent            *event, 
+popup_win_event_cb (GtkWidget           *widget,
+		    GdkEvent            *event,
 		    GooVolumeToolButton *button)
 {
 	GtkWidget *event_widget;
@@ -381,16 +392,16 @@ popup_win_event_cb (GtkWidget           *widget,
 		    || (event_widget == button->priv->arrow_button)) {
 			ungrab (button);
 			return TRUE;
-		} 
+		}
 		else {
 			int x, y, w, h;
-			
-			gdk_window_get_geometry (button->priv->popup_win->window,
+
+			gdk_window_get_geometry (gtk_widget_get_window (button->priv->popup_win),
 						 &x, &y, &w, &h, NULL);
 
-			if ((event->button.x < 0) 
+			if ((event->button.x < 0)
 			    || (event->button.x > w)
-			    || (event->button.y < 0) 
+			    || (event->button.y < 0)
 			    || (event->button.y > h)) {
 				ungrab (button);
 				return TRUE;
@@ -400,7 +411,7 @@ popup_win_event_cb (GtkWidget           *widget,
 
 	case GDK_KEY_PRESS:
 		switch (event->key.keyval) {
-		case GDK_Escape:
+		case GDK_KEY_Escape:
 			ungrab (button);
 			return TRUE;
 		default:
@@ -423,14 +434,14 @@ button_scroll_event_cb (GtkWidget           *widget,
 {
 	double direction = 1.0;
 
-	if (event->direction == GDK_SCROLL_UP) 
+	if (event->direction == GDK_SCROLL_UP)
 		direction = 1.0;
-	else if (event->direction == GDK_SCROLL_DOWN) 
+	else if (event->direction == GDK_SCROLL_DOWN)
 		direction = -1.0;
 	else
 		return FALSE;
 
-	goo_volume_tool_button_set_volume (button, 
+	goo_volume_tool_button_set_volume (button,
 					   button->priv->value + (direction * button->priv->step),
 					   TRUE);
 
@@ -446,7 +457,7 @@ down_button_scroll (gpointer data)
 {
 	GooVolumeToolButton *button = data;
 
-	goo_volume_tool_button_set_volume (button, 
+	goo_volume_tool_button_set_volume (button,
 					   button->priv->value - button->priv->step,
 					   TRUE);
 	return TRUE;
@@ -458,11 +469,11 @@ down_button_pressed_cb (GtkButton *gtk_button,
                         gpointer   user_data)
 {
 	GooVolumeToolButton *button = user_data;
-	
+
 	button->priv->down_button_pressed = TRUE;
 	if (button->priv->down_button_scroll_id != 0)
 		return;
-	button->priv->down_button_scroll_id = g_timeout_add (SCROLL_TIMEOUT, down_button_scroll, button); 
+	button->priv->down_button_scroll_id = g_timeout_add (SCROLL_TIMEOUT, down_button_scroll, button);
 }
 
 
@@ -471,7 +482,7 @@ down_button_released_cb (GtkButton *gtk_button,
                          gpointer   user_data)
 {
 	GooVolumeToolButton *button = user_data;
-	
+
 	button->priv->down_button_pressed = FALSE;
 	if (button->priv->down_button_scroll_id == 0)
 		return;
@@ -485,12 +496,12 @@ down_button_enter_cb (GtkButton *gtk_button,
                       gpointer   user_data)
 {
 	GooVolumeToolButton *button = user_data;
-	
+
 	if (! button->priv->down_button_pressed)
 		return;
 	if (button->priv->down_button_scroll_id != 0)
 		return;
-	button->priv->down_button_scroll_id = g_timeout_add (SCROLL_TIMEOUT, down_button_scroll, button); 
+	button->priv->down_button_scroll_id = g_timeout_add (SCROLL_TIMEOUT, down_button_scroll, button);
 }
 
 
@@ -499,8 +510,8 @@ down_button_leave_cb (GtkButton *gtk_button,
                       gpointer   user_data)
 {
 	GooVolumeToolButton *button = user_data;
-	
-	if (button->priv->down_button_scroll_id == 0) 
+
+	if (button->priv->down_button_scroll_id == 0)
 		return;
 	g_source_remove (button->priv->down_button_scroll_id);
 	button->priv->down_button_scroll_id = 0;
@@ -512,10 +523,10 @@ down_button_clicked_cb (GtkButton *gtk_button,
                         gpointer   user_data)
 {
 	GooVolumeToolButton *button = user_data;
-	
+
 	button->priv->down_button_pressed = FALSE;
 	down_button_scroll (button);
-	if (button->priv->down_button_scroll_id != 0) { 
+	if (button->priv->down_button_scroll_id != 0) {
 		g_source_remove (button->priv->down_button_scroll_id);
 		button->priv->down_button_scroll_id = 0;
 	}
@@ -529,8 +540,8 @@ static gboolean
 up_button_scroll (gpointer data)
 {
 	GooVolumeToolButton *button = data;
-	
-	goo_volume_tool_button_set_volume (button, 
+
+	goo_volume_tool_button_set_volume (button,
 					   button->priv->value + button->priv->step,
 					   TRUE);
 	return TRUE;
@@ -542,11 +553,11 @@ up_button_pressed_cb (GtkButton *gtk_button,
                       gpointer   user_data)
 {
 	GooVolumeToolButton *button = user_data;
-	
+
 	button->priv->up_button_pressed = TRUE;
 	if (button->priv->up_button_scroll_id != 0)
 		return;
-	button->priv->up_button_scroll_id = g_timeout_add (SCROLL_TIMEOUT, up_button_scroll, button); 
+	button->priv->up_button_scroll_id = g_timeout_add (SCROLL_TIMEOUT, up_button_scroll, button);
 }
 
 
@@ -555,7 +566,7 @@ up_button_released_cb (GtkButton *gtk_button,
                        gpointer   user_data)
 {
 	GooVolumeToolButton *button = user_data;
-	
+
 	button->priv->up_button_pressed = FALSE;
 	if (button->priv->up_button_scroll_id == 0)
 		return;
@@ -569,12 +580,12 @@ up_button_enter_cb (GtkButton *gtk_button,
                     gpointer   user_data)
 {
 	GooVolumeToolButton *button = user_data;
-	
+
 	if (! button->priv->up_button_pressed)
 		return;
 	if (button->priv->up_button_scroll_id != 0)
 		return;
-	button->priv->up_button_scroll_id = g_timeout_add (SCROLL_TIMEOUT, up_button_scroll, button); 
+	button->priv->up_button_scroll_id = g_timeout_add (SCROLL_TIMEOUT, up_button_scroll, button);
 }
 
 
@@ -583,8 +594,8 @@ up_button_leave_cb (GtkButton *gtk_button,
                     gpointer   user_data)
 {
 	GooVolumeToolButton *button = user_data;
-	
-	if (button->priv->up_button_scroll_id == 0) 
+
+	if (button->priv->up_button_scroll_id == 0)
 		return;
 	g_source_remove (button->priv->up_button_scroll_id);
 	button->priv->up_button_scroll_id = 0;
@@ -596,17 +607,17 @@ up_button_clicked_cb (GtkButton *gtk_button,
                       gpointer   user_data)
 {
 	GooVolumeToolButton *button = user_data;
-	
+
 	button->priv->up_button_pressed = FALSE;
 	up_button_scroll (button);
-	if (button->priv->up_button_scroll_id != 0) { 
+	if (button->priv->up_button_scroll_id != 0) {
 		g_source_remove (button->priv->up_button_scroll_id);
 		button->priv->up_button_scroll_id = 0;
 	}
 }
 
 
-static void 
+static void
 goo_volume_button_construct (GooVolumeToolButton *button)
 {
 	GtkWidget *box;
@@ -617,15 +628,15 @@ goo_volume_button_construct (GooVolumeToolButton *button)
 	GtkWidget *volume_vbox;
 	GtkWidget *up_button;
 	GtkWidget *down_button;
-	
+
 	/* Create the popup window. */
 
 	button->priv->popup_win = gtk_window_new (GTK_WINDOW_POPUP);
 	gtk_window_set_wmclass (GTK_WINDOW (button->priv->popup_win), "", "goo_volume_button");
-	
+
 	g_signal_connect (G_OBJECT (button->priv->popup_win),
 			  "event",
-			  G_CALLBACK (popup_win_event_cb), 
+			  G_CALLBACK (popup_win_event_cb),
 			  button);
 
 	out_frame = gtk_frame_new (NULL);
@@ -640,25 +651,25 @@ goo_volume_button_construct (GooVolumeToolButton *button)
 
 	up_button = gtk_button_new_with_label (_("+"));
 	gtk_button_set_relief (GTK_BUTTON (up_button), GTK_RELIEF_NONE);
-	g_signal_connect (up_button, 
+	g_signal_connect (up_button,
 			  "pressed",
-			  G_CALLBACK (up_button_pressed_cb), 
+			  G_CALLBACK (up_button_pressed_cb),
 			  button);
-	g_signal_connect (up_button, 
+	g_signal_connect (up_button,
 			  "released",
-			  G_CALLBACK (up_button_released_cb), 
+			  G_CALLBACK (up_button_released_cb),
 			  button);
-	g_signal_connect (up_button, 
+	g_signal_connect (up_button,
 			  "enter",
-			  G_CALLBACK (up_button_enter_cb), 
+			  G_CALLBACK (up_button_enter_cb),
 			  button);
-	g_signal_connect (up_button, 
+	g_signal_connect (up_button,
 			  "leave",
-			  G_CALLBACK (up_button_leave_cb), 
+			  G_CALLBACK (up_button_leave_cb),
 			  button);
-	g_signal_connect (up_button, 
+	g_signal_connect (up_button,
 			  "clicked",
-			  G_CALLBACK (up_button_clicked_cb), 
+			  G_CALLBACK (up_button_clicked_cb),
 			  button);
 	gtk_box_pack_start (GTK_BOX (volume_vbox), up_button, FALSE, FALSE, 0);
 
@@ -668,39 +679,39 @@ goo_volume_button_construct (GooVolumeToolButton *button)
 	/*gtk_range_set_update_policy (GTK_RANGE (button->priv->volume_scale), GTK_UPDATE_DELAYED);*/
 	gtk_range_set_increments (GTK_RANGE (button->priv->volume_scale), 0.1, 0.1);
 	gtk_widget_set_size_request (button->priv->volume_scale, -1, SCALE_HEIGHT);
-	 
+
 	gtk_box_pack_start (GTK_BOX (volume_vbox), button->priv->volume_scale, TRUE, TRUE, 0);
 
 	g_signal_connect (button->priv->volume_scale,
 			  "value_changed",
-			  G_CALLBACK (volume_scale_value_changed_cb), 
+			  G_CALLBACK (volume_scale_value_changed_cb),
 			  button);
 	g_signal_connect (button->priv->volume_scale,
 			  "button_release_event",
-			  G_CALLBACK (scale_button_release_cb), 
+			  G_CALLBACK (scale_button_release_cb),
 			  button);
-			  
+
 	down_button = gtk_button_new_with_label (_("-"));
 	gtk_button_set_relief (GTK_BUTTON (down_button), GTK_RELIEF_NONE);
-	g_signal_connect (down_button, 
+	g_signal_connect (down_button,
 			  "pressed",
-			  G_CALLBACK (down_button_pressed_cb), 
+			  G_CALLBACK (down_button_pressed_cb),
 			  button);
-	g_signal_connect (down_button, 
+	g_signal_connect (down_button,
 			  "released",
-			  G_CALLBACK (down_button_released_cb), 
+			  G_CALLBACK (down_button_released_cb),
 			  button);
-	g_signal_connect (down_button, 
+	g_signal_connect (down_button,
 			  "enter",
-			  G_CALLBACK (down_button_enter_cb), 
+			  G_CALLBACK (down_button_enter_cb),
 			  button);
-	g_signal_connect (down_button, 
+	g_signal_connect (down_button,
 			  "leave",
-			  G_CALLBACK (down_button_leave_cb), 
+			  G_CALLBACK (down_button_leave_cb),
 			  button);
-	g_signal_connect (down_button, 
+	g_signal_connect (down_button,
 			  "clicked",
-			  G_CALLBACK (down_button_clicked_cb), 
+			  G_CALLBACK (down_button_clicked_cb),
 			  button);
 	gtk_box_pack_start (GTK_BOX (volume_vbox), down_button, FALSE, FALSE, 0);
 
@@ -716,8 +727,8 @@ goo_volume_button_construct (GooVolumeToolButton *button)
 	gtk_tool_button_set_stock_id  (GTK_TOOL_BUTTON (button), GOO_STOCK_VOLUME_MAX);
 
 	box = gtk_hbox_new (FALSE, 0);
-	
-	real_button = GTK_BIN (button)->child;
+
+	real_button = gtk_bin_get_child (GTK_BIN (button));
 	g_object_ref (real_button);
 	gtk_container_remove (GTK_CONTAINER (button), real_button);
 	gtk_container_add (GTK_CONTAINER (box), real_button);
@@ -733,7 +744,7 @@ goo_volume_button_construct (GooVolumeToolButton *button)
 
 	gtk_widget_show_all (box);
 	gtk_widget_hide (button->priv->volume_label);
-	
+
 	gtk_container_add (GTK_CONTAINER (button), box);
 
 	button->priv->button = real_button;
@@ -741,18 +752,18 @@ goo_volume_button_construct (GooVolumeToolButton *button)
 	button->priv->arrow_button = arrow_button;
 	button->priv->box = box;
 
-	g_signal_connect (real_button, 
+	g_signal_connect (real_button,
 			  "clicked",
-			  G_CALLBACK (button_clicked_cb), 
+			  G_CALLBACK (button_clicked_cb),
 			  button);
-	g_signal_connect (arrow_button, 
+	g_signal_connect (arrow_button,
 			  "button_press_event",
-			  G_CALLBACK (arrow_button_press_cb), 
+			  G_CALLBACK (arrow_button_press_cb),
 			  button);
 
 	g_signal_connect (G_OBJECT (button->priv->button),
 			  "scroll_event",
-			  G_CALLBACK (button_scroll_event_cb), 
+			  G_CALLBACK (button_scroll_event_cb),
 			  button);
 }
 
@@ -791,8 +802,8 @@ goo_volume_tool_button_set_volume (GooVolumeToolButton *button,
 	g_signal_handlers_unblock_by_data (button->priv->volume_scale, button);
 
 	update_volume_label (button);
-	if (notify) 
-		g_signal_emit (G_OBJECT (button), 
+	if (notify)
+		g_signal_emit (G_OBJECT (button),
 			       goo_volume_tool_button_signals[CHANGED],
 			       0,
 			       NULL);
diff --git a/src/goo-window.c b/src/goo-window.c
index 4c44ad8..6435e25 100644
--- a/src/goo-window.c
+++ b/src/goo-window.c
@@ -43,7 +43,6 @@
 #include "gtk-utils.h"
 #include "gtk-file-chooser-preview.h"
 #include "glib-utils.h"
-#include "gconf-utils.h"
 #include "main.h"
 #include "preferences.h"
 #include "typedefs.h"
@@ -100,7 +99,7 @@ struct _GooWindowPrivate {
 	GtkActionGroup    *actions;
 	guint              cnxn_id[GCONF_NOTIFICATIONS];
 
-	guint              update_timeout_handle;     /* update list timeout 
+	guint              update_timeout_handle;     /* update list timeout
 						       * handle. */
 
 	GooPlayer         *player;
@@ -151,11 +150,11 @@ G_DEFINE_TYPE (GooWindow, goo_window, GTH_TYPE_WINDOW)
 
 static void
 set_active (GooWindow  *window,
-	    const char *action_name, 
+	    const char *action_name,
 	    gboolean    is_active)
 {
 	GtkAction *action;
-	
+
 	action = gtk_action_group_get_action (window->priv->actions, action_name);
 	gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (action), is_active);
 }
@@ -163,11 +162,11 @@ set_active (GooWindow  *window,
 
 static void
 set_sensitive (GooWindow  *window,
-	       const char *action_name, 
+	       const char *action_name,
 	       gboolean    sensitive)
 {
 	GtkAction *action;
-	
+
 	action = gtk_action_group_get_action (window->priv->actions, action_name);
 	g_object_set (action, "sensitive", sensitive, NULL);
 }
@@ -188,7 +187,7 @@ window_update_statusbar_list_info (GooWindow *window)
 
 		tracks_s = g_strdup_printf (ngettext ("%d track", "%d tracks", window->priv->album->n_tracks), window->priv->album->n_tracks);
 		time_text = _g_format_duration_for_display (window->priv->album->total_length * 1000);
-		
+
 		status = g_string_new (NULL);
 		g_string_append (status, tracks_s);
 		g_string_append (status, ", ");
@@ -229,7 +228,7 @@ window_update_sensitivity (GooWindow *window)
 	stopped           = state == GOO_PLAYER_STATE_STOPPED;
 	play_all          = eel_gconf_get_boolean (PREF_PLAYLIST_PLAYALL, TRUE);
 	audio_cd          = (! error) && (goo_player_get_discid (window->priv->player) != NULL);
-	
+
 	set_sensitive (window, "Play", audio_cd && !playing);
 	set_sensitive (window, "PlaySelected", audio_cd && one_file_selected);
 	set_sensitive (window, "Pause", audio_cd && playing);
@@ -287,10 +286,10 @@ get_iter_from_track_number (GooWindow   *window,
 
 	if (! gtk_tree_model_get_iter_first (model, iter))
 		return FALSE;
-	
+
 	do {
 		TrackInfo *track;
-		
+
 		gtk_tree_model_get (model, iter, COLUMN_TRACK_INFO, &track, -1);
 		if (track->number == track_number) {
 			track_info_unref (track);
@@ -313,13 +312,13 @@ set_track_icon (GooWindow  *window,
 	GtkTreeIter           iter;
 	GdkPixbuf            *icon;
 
-	if (!get_iter_from_track_number (window, track_number, &iter)) 
+	if (!get_iter_from_track_number (window, track_number, &iter))
 		return;
 
 	if (stock_id != NULL)
-		icon = gtk_widget_render_icon (GTK_WIDGET (window), 
-					       stock_id, 
-					       GTK_ICON_SIZE_MENU, 
+		icon = gtk_widget_render_icon (GTK_WIDGET (window),
+					       stock_id,
+					       GTK_ICON_SIZE_MENU,
 					       NULL);
 	else
 		icon = create_void_icon (window);
@@ -368,7 +367,7 @@ goo_window_update_list (GooWindow *window)
 	/**/
 
 	gtk_expander_set_expanded (GTK_EXPANDER (window->priv->list_expander), (window->priv->album->tracks != NULL));
-		
+
 	/**/
 
 	icon = create_void_icon (window);
@@ -414,11 +413,11 @@ goo_window_update_titles (GooWindow *window)
 	do {
 		TrackInfo *track;
 		TrackInfo *new_track;
-		
+
 		gtk_tree_model_get (model, &iter, COLUMN_TRACK_INFO, &track, -1);
 		new_track = album_info_get_track (window->priv->album, track->number);
 		track_info_unref (track);
-		
+
 		if (new_track == NULL)
 			continue;
 
@@ -441,7 +440,7 @@ goo_window_update_titles (GooWindow *window)
 }
 
 
-static void 
+static void
 goo_window_finalize (GObject *object)
 {
 	GooWindow *window = GOO_WINDOW (object);
@@ -467,23 +466,23 @@ goo_window_finalize (GObject *object)
 #endif /* ENABLE_MEDIA_KEYS */
 
 		/* Save preferences */
-		
+
 		eel_gconf_set_integer (PREF_GENERAL_VOLUME, (int) (goo_player_get_audio_volume (window->priv->player) * 100.0));
 
 		/**/
 
 		g_object_unref (window->priv->list_store);
-		
+
 		if (window->priv->next_timeout_handle != 0) {
 			g_source_remove (window->priv->next_timeout_handle);
 			window->priv->next_timeout_handle = 0;
 		}
-		
+
 		if (window->priv->update_timeout_handle != 0) {
 			g_source_remove (window->priv->update_timeout_handle);
 			window->priv->update_timeout_handle = 0;
 		}
-	
+
 		if (window->priv->playlist != NULL)
 			g_list_free (window->priv->playlist);
 
@@ -552,54 +551,54 @@ add_columns (GooWindow   *window,
 	gtk_tree_view_append_column (GTK_TREE_VIEW (treeview), column);
 
 	/* Title */
-	
+
 	column = gtk_tree_view_column_new ();
 	gtk_tree_view_column_set_title (column, _("Title"));
 	gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
 	gtk_tree_view_column_set_resizable (column, TRUE);
 	gtk_tree_view_column_set_expand (column, TRUE);
 	gtk_tree_view_column_set_sort_column_id (column, COLUMN_TITLE);
-	
+
 	renderer = gtk_cell_renderer_text_new ();
-	
+
 	g_value_init (&value, PANGO_TYPE_ELLIPSIZE_MODE);
 	g_value_set_enum (&value, PANGO_ELLIPSIZE_END);
 	g_object_set_property (G_OBJECT (renderer), "ellipsize", &value);
 	g_value_unset (&value);
-	
+
 	gtk_tree_view_column_pack_start (column, renderer, TRUE);
         gtk_tree_view_column_set_attributes (column, renderer,
                                              "text", COLUMN_TITLE,
                                              NULL);
-		
+
 	gtk_tree_view_append_column (treeview, column);
 
 	/* Author */
-	
+
 	window->priv->author_column = column = gtk_tree_view_column_new ();
 	gtk_tree_view_column_set_title (column, _("Artist"));
 	gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
 	gtk_tree_view_column_set_resizable (column, FALSE);
 	gtk_tree_view_column_set_expand (column, TRUE);
 	gtk_tree_view_column_set_sort_column_id (column, COLUMN_ARTIST);
-	
+
 	renderer = gtk_cell_renderer_text_new ();
-	
+
 	g_value_init (&value, PANGO_TYPE_ELLIPSIZE_MODE);
 	g_value_set_enum (&value, PANGO_ELLIPSIZE_END);
 	g_object_set_property (G_OBJECT (renderer), "ellipsize", &value);
 	g_value_unset (&value);
-	
+
 	gtk_tree_view_column_pack_start (column, renderer, TRUE);
         gtk_tree_view_column_set_attributes (column, renderer,
                                              "text", COLUMN_ARTIST,
                                              NULL);
-		
+
 	gtk_tree_view_append_column (treeview, column);
 	gtk_tree_view_column_set_visible (column, FALSE);
-	
+
 	/* Time */
-	
+
 	column = gtk_tree_view_column_new ();
 	gtk_tree_view_column_set_title (column, _("Length"));
 	gtk_tree_view_column_set_sizing (column, GTK_TREE_VIEW_COLUMN_AUTOSIZE);
@@ -607,13 +606,13 @@ add_columns (GooWindow   *window,
 	gtk_tree_view_column_set_sort_column_id (column, COLUMN_TIME);
 
 	renderer = gtk_cell_renderer_text_new ();
-	
+
 	gtk_tree_view_column_pack_start (column, renderer, TRUE);
         gtk_tree_view_column_set_attributes (column, renderer,
                                              "text", COLUMN_TIME,
                                              NULL);
-                                             
-	gtk_tree_view_append_column (treeview, column);                                             	
+
+	gtk_tree_view_append_column (treeview, column);
 }
 
 
@@ -716,7 +715,7 @@ print_playlist (GooWindow *window)
 	GList *scan;
 
 	debug (DEBUG_INFO, "PLAYLIST: ");
-	for (scan = window->priv->playlist; scan; scan = scan->next) 
+	for (scan = window->priv->playlist; scan; scan = scan->next)
 		debug (DEBUG_INFO, "%d, ", GPOINTER_TO_INT (scan->data));
 	debug (DEBUG_INFO, "\n");
 }
@@ -733,7 +732,7 @@ get_track_number_from_position (GooWindow   *window,
 
 	if (! gtk_tree_model_get_iter_first (model, &iter))
 		return -1;
-	
+
 	do {
 		TrackInfo *track;
 		int       n;
@@ -761,7 +760,7 @@ get_position_from_track_number (GooWindow   *window,
 
 	if (! gtk_tree_model_get_iter_first (model, &iter))
 		return -1;
-	
+
 	do {
 		TrackInfo *track;
 		int       n;
@@ -793,7 +792,7 @@ create_playlist (GooWindow *window,
 		g_list_free (window->priv->playlist);
 	window->priv->playlist = NULL;
 
-	if (!play_all) 
+	if (!play_all)
 		return;
 
 	playlist = NULL;
@@ -803,7 +802,7 @@ create_playlist (GooWindow *window,
 
 	for (i = 0; i < window->priv->album->n_tracks; i++, pos = (pos + 1) % window->priv->album->n_tracks) {
 		int track_number;
-		
+
 		track_number = get_track_number_from_position (window, pos);
 		if ((window->priv->current_track != NULL)
 		    && (window->priv->current_track->number == track_number))
@@ -820,7 +819,7 @@ create_playlist (GooWindow *window,
 
 		while (playlist != NULL) {
 			GList *item;
-			
+
 			pos = g_rand_int_range (grand, 0, len--);
 			item = g_list_nth (playlist, pos);
 			playlist = g_list_remove_link (playlist, item);
@@ -829,7 +828,7 @@ create_playlist (GooWindow *window,
 		playlist = random_list;
 
 		g_rand_free (grand);
-	} 
+	}
 
 	window->priv->playlist = playlist;
 }
@@ -860,12 +859,12 @@ play_next_track_in_playlist (GooWindow *window)
 	next = window->priv->playlist;
 
 	if ((next == NULL) && repeat) {
-		track_info_unref (window->priv->current_track);	
+		track_info_unref (window->priv->current_track);
 		window->priv->current_track = NULL;
 		create_playlist (window, play_all, shuffle);
 		next = window->priv->playlist;
 	}
-	
+
 	print_playlist (window);
 
 	if (next == NULL)
@@ -940,13 +939,13 @@ save_window_size (GooWindow *window)
 {
 	int w, h;
 
-	gdk_drawable_get_size (GTK_WIDGET (window)->window, &w, &h);
+	gdk_drawable_get_size (gtk_widget_get_window (GTK_WIDGET (window)), &w, &h);
 	eel_gconf_set_integer (PREF_UI_WINDOW_WIDTH, w);
 	eel_gconf_set_integer (PREF_UI_WINDOW_HEIGHT, h);
 }
 
 
-static void 
+static void
 goo_window_unrealize (GtkWidget *widget)
 {
 	GooWindow *window;
@@ -980,13 +979,13 @@ first_time_idle (gpointer callback_data)
 }
 
 
-static void 
+static void
 goo_window_show (GtkWidget *widget)
 {
 	GooWindow *window = GOO_WINDOW (widget);
 	gboolean   view_foobar;
 
-	if (! HideShow) 
+	if (! HideShow)
 		GTK_WIDGET_CLASS (goo_window_parent_class)->show (widget);
 	else
 		HideShow = FALSE;
@@ -1060,7 +1059,7 @@ goo_window_class_init (GooWindowClass *class)
 	widget_class = (GtkWidgetClass*) class;
 	widget_class->unrealize = goo_window_unrealize;
 	widget_class->show = goo_window_show;
-	
+
 	window_class = (GthWindowClass *) class;
 	window_class->close = goo_window_real_close;
 
@@ -1071,7 +1070,7 @@ goo_window_class_init (GooWindowClass *class)
 			      G_STRUCT_OFFSET (GooWindowClass, update_cover),
 			      NULL, NULL,
 			      goo_marshal_VOID__VOID,
-			      G_TYPE_NONE, 
+			      G_TYPE_NONE,
 			      0);
 }
 
@@ -1093,7 +1092,7 @@ sort_by_number (int i1,
 		return 0;
 	else if (i1 > i2)
 		return 1;
-	else 
+	else
 		return -1;
 }
 
@@ -1108,15 +1107,15 @@ sort_by_name (const char *s1,
 		return 1;
 	else if (s2 == NULL)
 		return -1;
-	else 
+	else
 		return g_utf8_collate (s1, s2);
 }
 
 
 static int
-title_column_sort_func (GtkTreeModel *model, 
-			GtkTreeIter  *a, 
-			GtkTreeIter  *b, 
+title_column_sort_func (GtkTreeModel *model,
+			GtkTreeIter  *a,
+			GtkTreeIter  *b,
 			gpointer      user_data)
 {
 	TrackInfo *track1 = NULL, *track2 = NULL;
@@ -1142,9 +1141,9 @@ title_column_sort_func (GtkTreeModel *model,
 
 
 static int
-artist_column_sort_func (GtkTreeModel *model, 
-			 GtkTreeIter  *a, 
-			 GtkTreeIter  *b, 
+artist_column_sort_func (GtkTreeModel *model,
+			 GtkTreeIter  *a,
+			 GtkTreeIter  *b,
 			 gpointer      user_data)
 {
 	TrackInfo *track1 = NULL, *track2 = NULL;
@@ -1175,9 +1174,9 @@ artist_column_sort_func (GtkTreeModel *model,
 
 
 static int
-time_column_sort_func (GtkTreeModel *model, 
-		       GtkTreeIter  *a, 
-		       GtkTreeIter  *b, 
+time_column_sort_func (GtkTreeModel *model,
+		       GtkTreeIter  *a,
+		       GtkTreeIter  *b,
 		       gpointer      user_data)
 {
 	TrackInfo *track1 = NULL, *track2 = NULL;
@@ -1192,7 +1191,7 @@ time_column_sort_func (GtkTreeModel *model,
 		retval = 1;
 	else if (track2 == NULL)
 		retval = -1;
-	else 
+	else
 		retval = sort_by_number (track1->length, track2->length);
 
 	track_info_unref (track1);
@@ -1267,12 +1266,12 @@ set_action_label_and_icon (GooWindow  *window,
 	while (action_prefix != NULL) {
 		char      *path = g_strconcat (action_prefix, action_name, NULL);
 		GtkAction *action = gtk_ui_manager_get_action (window->priv->ui, path);
-		
+
 		if (action != NULL)
-			g_object_set (G_OBJECT (action), 
-				      "label", label, 
-				      "tooltip", tooltip, 
-				      "stock_id", stock_id, 
+			g_object_set (G_OBJECT (action),
+				      "label", label,
+				      "tooltip", tooltip,
+				      "stock_id", stock_id,
 				      NULL);
 		g_free (path);
 
@@ -1295,8 +1294,8 @@ player_start_cb (GooPlayer       *player,
 	switch (action) {
 	case GOO_PLAYER_ACTION_PLAY:
 		set_action_label_and_icon (window,
-					   "TogglePlay", 
-					   _("_Pause"), 
+					   "TogglePlay",
+					   _("_Pause"),
 					   _("Pause"),
 					   GTK_STOCK_MEDIA_PAUSE,
 					   "/MenuBar/CDMenu/",
@@ -1309,14 +1308,14 @@ player_start_cb (GooPlayer       *player,
 
 			if (window->priv->album->title != NULL) {
 				char *e_album = g_markup_escape_text (window->priv->album->title, -1);
-				
+
 				g_string_append_printf (info, "<i>%s</i>", e_album);
 				g_free (e_album);
 			}
 			g_string_append (info, "\n");
 			if (window->priv->album->artist != NULL) {
 				char *e_artist = g_markup_escape_text (window->priv->album->artist, -1);
-				
+
 				g_string_append_printf (info, "<big>%s</big>", e_artist);
 				g_free (e_artist);
 			}
@@ -1326,7 +1325,7 @@ player_start_cb (GooPlayer       *player,
 			g_string_free (info, TRUE);
 			window->priv->notify_action = FALSE;
 		}
-		
+
 #endif /* ENABLE_NOTIFICATION */
 
 		break;
@@ -1416,13 +1415,13 @@ window_update_title (GooWindow *window)
 					window->priv->current_track->number + 1,
 					window->priv->album->n_tracks);
 		if (paused)
-			g_string_append_printf (title, 
+			g_string_append_printf (title,
 						" [%s]",
 						_("Paused"));
-	} 
+	}
 	else if (state == GOO_PLAYER_STATE_NO_DISC) {
 		g_string_append (title, _("No Disc"));
-	} 
+	}
 	else if (state == GOO_PLAYER_STATE_DATA_DISC) {
 		g_string_append (title, _("Data Disc"));
 	}
@@ -1448,7 +1447,7 @@ goo_window_get_cover_filename (GooWindow *window)
 	const char *discid;
 	char       *filename;
 	char       *path;
-	
+
 	discid = goo_player_get_discid (window->priv->player);
 	if (discid == NULL)
 		return NULL;
@@ -1458,7 +1457,7 @@ goo_window_get_cover_filename (GooWindow *window)
 	path = gth_user_dir_get_file (GTH_DIR_CONFIG, "goobox", "covers", filename, NULL);
 
 	g_free (filename);
-	
+
 	return path;
 }
 
@@ -1466,8 +1465,8 @@ goo_window_get_cover_filename (GooWindow *window)
 void
 goo_window_update_cover (GooWindow *window)
 {
-	g_signal_emit (G_OBJECT (window), 
-		       goo_window_signals[UPDATE_COVER], 
+	g_signal_emit (G_OBJECT (window),
+		       goo_window_signals[UPDATE_COVER],
 		       0,
 		       NULL);
 }
@@ -1510,8 +1509,8 @@ goo_window_set_current_cd_autofetch (GooWindow *window,
 	kv_file = g_key_file_new ();
 
 	config_filename = gth_user_dir_get_file (GTH_DIR_CONFIG, "goobox", "config", NULL);
-	g_key_file_load_from_file (kv_file, 
-				   config_filename, 
+	g_key_file_load_from_file (kv_file,
+				   config_filename,
 				   G_KEY_FILE_NONE,
 				   NULL);
 	discid = goo_player_get_discid (window->priv->player);
@@ -1568,7 +1567,7 @@ goo_window_get_status_icon (GooWindow *window)
 {
 	return window->priv->status_icon;
 }
- 
+
 
 static void
 auto_fetch_cover_image (GooWindow *window)
@@ -1592,7 +1591,7 @@ auto_fetch_cover_image (GooWindow *window)
 	}
 	g_free (filename);
 
-	if (window->priv->album->asin != NULL) 
+	if (window->priv->album->asin != NULL)
 		fetch_cover_image_from_asin (window, window->priv->album->asin);
 	else if ((window->priv->album->title != NULL) && (window->priv->album->artist != NULL))
 		fetch_cover_image_from_name (window, window->priv->album->title, window->priv->album->artist);
@@ -1603,10 +1602,10 @@ static gboolean
 autoplay_cb (gpointer data)
 {
 	GooWindow *window = data;
-	
-	if (window->priv->album->n_tracks > 0) 
+
+	if (window->priv->album->n_tracks > 0)
 		goo_window_play (window);
-	
+
 	return FALSE;
 }
 
@@ -1616,7 +1615,7 @@ goo_window_update_album (GooWindow *window)
 {
 	album_info_unref (window->priv->album);
 	window->priv->album = album_info_copy (goo_player_get_album (window->priv->player));
-	
+
 	gtk_tree_view_column_set_visible (window->priv->author_column,
 					  window->priv->album->various_artist);
 }
@@ -1650,19 +1649,19 @@ player_done_cb (GooPlayer       *player,
 		window_update_statusbar_list_info (window);
 		auto_fetch_cover_image (window);
 		break;
-		
+
 	case GOO_PLAYER_ACTION_SEEK_SONG:
 		goo_window_set_current_track (window, goo_player_get_current_track (window->priv->player));
 		goo_window_select_current_track (window);
 		set_current_track_icon (window, GTK_STOCK_MEDIA_PLAY);
 		break;
-		
+
 	case GOO_PLAYER_ACTION_PLAY:
 	case GOO_PLAYER_ACTION_STOP:
 	case GOO_PLAYER_ACTION_MEDIUM_REMOVED:
 		set_action_label_and_icon (window,
-					   "TogglePlay", 
-					   _("_Play"), 
+					   "TogglePlay",
+					   _("_Play"),
 					   _("Play"),
 					   GTK_STOCK_MEDIA_PLAY,
 					   "/MenuBar/CDMenu/",
@@ -1670,23 +1669,23 @@ player_done_cb (GooPlayer       *player,
 		if (action == GOO_PLAYER_ACTION_PLAY) {
 			set_current_track_icon (window, GTK_STOCK_MEDIA_PLAY);
 			window->priv->next_timeout_handle = g_idle_add (next_time_idle, window);
-		} 
-		else if (action == GOO_PLAYER_ACTION_STOP) 
+		}
+		else if (action == GOO_PLAYER_ACTION_STOP)
 			set_current_track_icon (window, GTK_STOCK_MEDIA_STOP);
 
 		break;
-		
+
 	case GOO_PLAYER_ACTION_PAUSE:
 		set_current_track_icon (window, GTK_STOCK_MEDIA_PAUSE);
 		set_action_label_and_icon (window,
-					   "TogglePlay", 
-					   _("_Play"), 
+					   "TogglePlay",
+					   _("_Play"),
 					   _("Play"),
 					   GTK_STOCK_MEDIA_PLAY,
 					   "/MenuBar/CDMenu/",
 					   NULL);
 		break;
-		
+
 	default:
 		break;
 	}
@@ -1703,20 +1702,20 @@ player_state_changed_cb (GooPlayer *player,
 
 
 static void
-row_activated_cb (GtkTreeView       *tree_view, 
-		  GtkTreePath       *path, 
-		  GtkTreeViewColumn *column, 
+row_activated_cb (GtkTreeView       *tree_view,
+		  GtkTreePath       *path,
+		  GtkTreeViewColumn *column,
 		  gpointer           data)
 {
 	GooWindow   *window = data;
 	GtkTreeIter  iter;
 	TrackInfo    *track;
 
-	if (! gtk_tree_model_get_iter (GTK_TREE_MODEL (window->priv->list_store), 
-				       &iter, 
+	if (! gtk_tree_model_get_iter (GTK_TREE_MODEL (window->priv->list_store),
+				       &iter,
 				       path))
 		return;
-	
+
 	gtk_tree_model_get (GTK_TREE_MODEL (window->priv->list_store), &iter,
 			    COLUMN_TRACK_INFO, &track,
 			    -1);
@@ -1734,14 +1733,14 @@ selection_changed_cb (GtkTreeSelection *selection,
 		      gpointer          user_data)
 {
 	GooWindow *window = user_data;
-	
+
 	window_update_sensitivity (window);
 	window_update_title (window);
 }
 
 
 static int
-file_button_press_cb (GtkWidget      *widget, 
+file_button_press_cb (GtkWidget      *widget,
 		      GdkEventButton *event,
 		      gpointer        data)
 {
@@ -1768,7 +1767,7 @@ file_button_press_cb (GtkWidget      *widget,
 				return FALSE;
 			}
 			gtk_tree_path_free (path);
-			
+
 			if (! gtk_tree_selection_iter_is_selected (selection, &iter)) {
 				gtk_tree_selection_unselect_all (selection);
 				gtk_tree_selection_select_iter (selection, &iter);
@@ -1778,8 +1777,8 @@ file_button_press_cb (GtkWidget      *widget,
 			gtk_tree_selection_unselect_all (selection);
 
 		gtk_menu_popup (GTK_MENU (window->priv->file_popup_menu),
-				NULL, NULL, NULL, 
-				window, 
+				NULL, NULL, NULL,
+				window,
 				event->button,
 				event->time);
 		return TRUE;
@@ -1806,7 +1805,7 @@ get_column_from_sort_method (WindowSortMethod sort_method)
 	case WINDOW_SORT_BY_NUMBER: return COLUMN_NUMBER;
 	case WINDOW_SORT_BY_TIME: return COLUMN_TIME;
 	case WINDOW_SORT_BY_TITLE: return COLUMN_TITLE;
-	default: 
+	default:
 		break;
 	}
 
@@ -1821,7 +1820,7 @@ get_sort_method_from_column (int column_id)
 	case COLUMN_NUMBER: return WINDOW_SORT_BY_NUMBER;
 	case COLUMN_TIME: return WINDOW_SORT_BY_TIME;
 	case COLUMN_TITLE: return WINDOW_SORT_BY_TITLE;
-	default: 
+	default:
 		break;
 	}
 
@@ -1838,8 +1837,8 @@ sort_column_changed_cb (GtkTreeSortable *sortable,
 	int             column_id;
 	GooPlayerState  state;
 
-	if (! gtk_tree_sortable_get_sort_column_id (sortable, 
-						    &column_id, 
+	if (! gtk_tree_sortable_get_sort_column_id (sortable,
+						    &column_id,
 						    &order))
 	{
 		return;
@@ -1869,7 +1868,7 @@ update_ui_from_expander_state (GooWindow *window)
 
 		gtk_expander_set_label (expander, _(HIDE_TRACK_LIST));
 		if (gtk_widget_get_realized (GTK_WIDGET (window)))
-			gtk_window_resize (GTK_WINDOW (window), 
+			gtk_window_resize (GTK_WINDOW (window),
 					   eel_gconf_get_integer (PREF_UI_WINDOW_WIDTH, DEFAULT_WIN_WIDTH),
 					   eel_gconf_get_integer (PREF_UI_WINDOW_HEIGHT, DEFAULT_WIN_HEIGHT));
 		gtk_statusbar_set_has_resize_grip (GTK_STATUSBAR (window->priv->statusbar), TRUE);
@@ -1880,7 +1879,7 @@ update_ui_from_expander_state (GooWindow *window)
 					       GTK_WIDGET (window),
 					       &hints,
 					       GDK_HINT_MAX_SIZE);
-	} 
+	}
 	else {
 		GdkGeometry hints;
 
@@ -1925,8 +1924,8 @@ player_info_cover_clicked_cb (GooPlayerInfo *info,
 	debug (DEBUG_INFO, "[Window] cover clicked\n");
 
 	gtk_menu_popup (GTK_MENU (window->priv->cover_popup_menu),
-			NULL, NULL, NULL, 
-			window, 
+			NULL, NULL, NULL,
+			window,
 			3,
 			GDK_CURRENT_TIME);
 }
@@ -1944,7 +1943,7 @@ window_sync_ui_with_preferences (GooWindow *window)
 
 
 static gboolean
-window_key_press_cb (GtkWidget   *widget, 
+window_key_press_cb (GtkWidget   *widget,
 		     GdkEventKey *event,
 		     gpointer     data)
 {
@@ -1956,19 +1955,19 @@ window_key_press_cb (GtkWidget   *widget,
 		return FALSE;
 
 	switch (event->keyval) {
-	case GDK_1:
-	case GDK_2:
-	case GDK_3:
-	case GDK_4:
-	case GDK_5:
-	case GDK_6:
-	case GDK_7:
-	case GDK_8:
-	case GDK_9:
-		new_track = event->keyval - GDK_1;
+	case GDK_KEY_1:
+	case GDK_KEY_2:
+	case GDK_KEY_3:
+	case GDK_KEY_4:
+	case GDK_KEY_5:
+	case GDK_KEY_6:
+	case GDK_KEY_7:
+	case GDK_KEY_8:
+	case GDK_KEY_9:
+		new_track = event->keyval - GDK_KEY_1;
 		retval = TRUE;
 		break;
-	case GDK_0:
+	case GDK_KEY_0:
 		new_track = 10 - 1;
 		retval = TRUE;
 		break;
@@ -2237,13 +2236,13 @@ goo_window_construct (GooWindow    *window,
 	GtkUIManager     *ui;
 	GError           *error = NULL;
 
-	g_signal_connect (G_OBJECT (window), 
+	g_signal_connect (G_OBJECT (window),
 			  "delete_event",
 			  G_CALLBACK (window_delete_event_cb),
 			  window);
-	g_signal_connect (G_OBJECT (window), 
+	g_signal_connect (G_OBJECT (window),
 			  "key_press_event",
-			  G_CALLBACK (window_key_press_cb), 
+			  G_CALLBACK (window_key_press_cb),
 			  window);
 
 	if (icon_size == 0) {
@@ -2260,15 +2259,15 @@ goo_window_construct (GooWindow    *window,
 
 	g_signal_connect (window->priv->player,
 			  "start",
-			  G_CALLBACK (player_start_cb), 
+			  G_CALLBACK (player_start_cb),
 			  window);
 	g_signal_connect (window->priv->player,
 			  "done",
-			  G_CALLBACK (player_done_cb), 
+			  G_CALLBACK (player_done_cb),
 			  window);
 	g_signal_connect (window->priv->player,
 			  "state_changed",
-			  G_CALLBACK (player_state_changed_cb), 
+			  G_CALLBACK (player_state_changed_cb),
 			  window);
 
 	window->priv->playlist = NULL;
@@ -2305,7 +2304,7 @@ goo_window_construct (GooWindow    *window,
 	window->priv->sort_type = preferences_get_sort_type ();
 
 	gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (window->priv->list_store), get_column_from_sort_method (window->priv->sort_method), window->priv->sort_type);
-	
+
 	selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (window->priv->list_view));
 	gtk_tree_selection_set_mode (selection, GTK_SELECTION_MULTIPLE);
 
@@ -2319,12 +2318,12 @@ goo_window_construct (GooWindow    *window,
                           window);
 	g_signal_connect (G_OBJECT (window->priv->list_view),
 			  "button_press_event",
-			  G_CALLBACK (file_button_press_cb), 
+			  G_CALLBACK (file_button_press_cb),
 			  window);
 
 	g_signal_connect (G_OBJECT (window->priv->list_store),
 			  "sort_column_changed",
-			  G_CALLBACK (sort_column_changed_cb), 
+			  G_CALLBACK (sort_column_changed_cb),
 			  window);
 
 	scrolled_window = gtk_scrolled_window_new (NULL, NULL);
@@ -2338,26 +2337,26 @@ goo_window_construct (GooWindow    *window,
 
 	window->priv->actions = actions = gtk_action_group_new ("Actions");
 	gtk_action_group_set_translation_domain (actions, NULL);
-	gtk_action_group_add_actions (actions, 
-				      action_entries, 
-				      n_action_entries, 
+	gtk_action_group_add_actions (actions,
+				      action_entries,
+				      n_action_entries,
 				      window);
-	gtk_action_group_add_toggle_actions (actions, 
-					     action_toggle_entries, 
-					     n_action_toggle_entries, 
+	gtk_action_group_add_toggle_actions (actions,
+					     action_toggle_entries,
+					     n_action_toggle_entries,
 					     window);
 
 	window->priv->ui = ui = gtk_ui_manager_new ();
-	
+
 	g_signal_connect (ui, "connect_proxy",
 			  G_CALLBACK (connect_proxy_cb), window);
 	g_signal_connect (ui, "disconnect_proxy",
 			  G_CALLBACK (disconnect_proxy_cb), window);
-	
+
 	gtk_ui_manager_insert_action_group (ui, actions, 0);
-	gtk_window_add_accel_group (GTK_WINDOW (window), 
+	gtk_window_add_accel_group (GTK_WINDOW (window),
 				    gtk_ui_manager_get_accel_group (ui));
-	
+
 	if (! gtk_ui_manager_add_ui_from_string (ui, ui_info, -1, &error)) {
 		g_message ("building menus failed: %s", error->message);
 		g_error_free (error);
@@ -2381,11 +2380,11 @@ goo_window_construct (GooWindow    *window,
 		action = gtk_ui_manager_get_action (ui, "/ToolBar/Play");
 		g_object_set (action, "is_important", TRUE, NULL);
 		g_object_unref (action);
-		
+
 		action = gtk_ui_manager_get_action (ui, "/ToolBar/Pause");
 		g_object_set (action, "is_important", TRUE, NULL);
 		g_object_unref (action);
-		
+
 		action = gtk_ui_manager_get_action (ui, "/ToolBar/Extract");
 		g_object_set (action, "is_important", TRUE, NULL);
 		g_object_unref (action);
@@ -2399,39 +2398,39 @@ goo_window_construct (GooWindow    *window,
 
 		toggle_play = gtk_ui_manager_get_widget (window->priv->ui, "/ToolBar/TogglePlay");
 		toggle_play = gtk_ui_manager_get_widget (window->priv->ui, "/ToolBar/TogglePlay");
-	
+
 		play_button = gtk_ui_manager_get_widget (window->priv->ui, "/ToolBar/Play");
 		gtk_tool_item_set_visible_horizontal (GTK_TOOL_ITEM (play_button), FALSE);
-	
+
 		pause_button = gtk_ui_manager_get_widget (window->priv->ui, "/ToolBar/Pause");
 		gtk_tool_item_set_visible_horizontal (GTK_TOOL_ITEM (pause_button), FALSE);
-	
+
 		size_group = gtk_size_group_new (GTK_SIZE_GROUP_BOTH);
-		
+
 		gtk_size_group_add_widget (size_group, toggle_play);
 		gtk_size_group_add_widget (size_group, play_button);
-		gtk_size_group_add_widget (size_group, pause_button);		
+		gtk_size_group_add_widget (size_group, pause_button);
 	}
 
 	window->priv->file_popup_menu = gtk_ui_manager_get_widget (ui, "/ListPopupMenu");
 	window->priv->cover_popup_menu = gtk_ui_manager_get_widget (ui, "/CoverPopupMenu");
 
 	/* Add the volume button to the toolbar. */
-	
+
 	{
 		GtkToolItem *sep;
-		
+
 		sep = gtk_separator_tool_item_new ();
-		gtk_widget_show (GTK_WIDGET (sep));	
+		gtk_widget_show (GTK_WIDGET (sep));
 		gtk_toolbar_insert (GTK_TOOLBAR (window->priv->toolbar),
 				    GTK_TOOL_ITEM (sep),
 				    VOLUME_BUTTON_POSITION);
 	}
-	
+
 	window->priv->volume_button = (GtkWidget*) goo_volume_tool_button_new ();
 	g_signal_connect (window->priv->volume_button,
 			  "changed",
-			  G_CALLBACK (volume_button_changed_cb), 
+			  G_CALLBACK (volume_button_changed_cb),
 			  window);
 	gtk_widget_show (GTK_WIDGET (window->priv->volume_button));
 	gtk_tool_item_set_is_important (GTK_TOOL_ITEM (window->priv->volume_button), FALSE);
@@ -2458,16 +2457,16 @@ goo_window_construct (GooWindow    *window,
 	gtk_container_set_border_width (GTK_CONTAINER (hbox), 6);
 	gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, FALSE, 0);
 
-	{	
+	{
 		window->priv->info = goo_player_info_new (window, TRUE);
 		gtk_container_set_border_width (GTK_CONTAINER (window->priv->info), 0);
 		g_signal_connect (window->priv->info,
 				  "skip_to",
-				  G_CALLBACK (player_info_skip_to_cb), 
+				  G_CALLBACK (player_info_skip_to_cb),
 				  window);
 		g_signal_connect (window->priv->info,
 				  "cover_clicked",
-				  G_CALLBACK (player_info_cover_clicked_cb), 
+				  G_CALLBACK (player_info_cover_clicked_cb),
 				  window);
 		gtk_box_pack_start (GTK_BOX (hbox), window->priv->info, TRUE, TRUE, 0);
 	}
@@ -2479,11 +2478,11 @@ goo_window_construct (GooWindow    *window,
 	gtk_expander_set_expanded (GTK_EXPANDER (expander), FALSE /*eel_gconf_get_boolean (PREF_UI_PLAYLIST, TRUE)*/);
 	g_signal_connect (expander,
 			  "notify::expanded",
-			  G_CALLBACK (list_expander_expanded_cb), 
+			  G_CALLBACK (list_expander_expanded_cb),
 			  window);
 
-	gtk_box_pack_start (GTK_BOX (vbox), 
-			    expander, 
+	gtk_box_pack_start (GTK_BOX (vbox),
+			    expander,
 			    TRUE, TRUE, 0);
 
 	gtk_widget_show_all (vbox);
@@ -2493,7 +2492,7 @@ goo_window_construct (GooWindow    *window,
 
 	window_sync_ui_with_preferences (window);
 
-	gtk_window_set_default_size (GTK_WINDOW (window), 
+	gtk_window_set_default_size (GTK_WINDOW (window),
 				     eel_gconf_get_integer (PREF_UI_WINDOW_WIDTH, DEFAULT_WIN_WIDTH),
 				     eel_gconf_get_integer (PREF_UI_WINDOW_HEIGHT, DEFAULT_WIN_HEIGHT));
 
@@ -2502,14 +2501,14 @@ goo_window_construct (GooWindow    *window,
 					   TRUE);
 
 	/* The status icon. */
-	
+
 	window->priv->status_icon = gtk_status_icon_new_from_icon_name ("goobox");
 	gtk_status_icon_set_has_tooltip (window->priv->status_icon, TRUE);
 	gtk_status_icon_set_title (window->priv->status_icon, _("CD Player"));
-	
+
 	window->priv->status_tooltip_content = goo_player_info_new (window, FALSE);
 	gtk_container_set_border_width (GTK_CONTAINER (window->priv->status_tooltip_content), 0);
-	
+
 	g_signal_connect (G_OBJECT (window->priv->status_icon),
 			  "activate",
 			  G_CALLBACK (status_icon_activate_cb),
@@ -2598,15 +2597,15 @@ goo_window_close (GooWindow *window)
 
 
 void
-goo_window_set_toolbar_visibility (GooWindow   *window,
-				   gboolean     visible)
+goo_window_set_toolbar_visibility (GooWindow *window,
+				   gboolean   visible)
 {
 	g_return_if_fail (window != NULL);
 
 	if (visible)
-		gtk_widget_show (window->priv->toolbar->parent);
+		gtk_widget_show (gtk_widget_get_parent (window->priv->toolbar));
 	else
-		gtk_widget_hide (window->priv->toolbar->parent);
+		gtk_widget_hide (gtk_widget_get_parent (window->priv->toolbar));
 }
 
 
@@ -2616,7 +2615,7 @@ goo_window_set_statusbar_visibility (GooWindow *window,
 {
 	g_return_if_fail (window != NULL);
 
-	if (visible) 
+	if (visible)
 		gtk_widget_show (window->priv->statusbar);
 	else
 		gtk_widget_hide (window->priv->statusbar);
@@ -2628,7 +2627,7 @@ goo_window_play (GooWindow *window)
 {
 	if (window->priv->hibernate)
 		return;
-	
+
 	if (! goo_player_is_audio_cd (window->priv->player))
 		return;
 
@@ -2638,7 +2637,7 @@ goo_window_play (GooWindow *window)
 	if (goo_player_get_state (window->priv->player) != GOO_PLAYER_STATE_PAUSED) {
 		gboolean  play_all;
 		gboolean  shuffle;
-		
+
 		play_all = eel_gconf_get_boolean (PREF_PLAYLIST_PLAYALL, TRUE);
 		shuffle  = eel_gconf_get_boolean (PREF_PLAYLIST_SHUFFLE, FALSE);
 		create_playlist (window, play_all, shuffle);
@@ -2649,7 +2648,7 @@ goo_window_play (GooWindow *window)
 			play_next_track_in_playlist (window);
 		else
 			play_track (window, 0);
-	} 
+	}
 	else {
 		set_current_track_icon (window, GTK_STOCK_MEDIA_PLAY);
 		goo_player_play (window->priv->player);
@@ -2666,7 +2665,7 @@ goo_window_play_selected (GooWindow *window)
 
 	if (g_list_length (tracks) == 1) {
 		TrackInfo *track = tracks->data;
-		
+
 		goo_window_stop (window);
 		goo_window_set_current_track (window, track->number);
 		goo_window_play (window);
@@ -2729,10 +2728,10 @@ goo_window_next (GooWindow *window)
 			goo_window_set_current_track (window, new_track);
 
 			goo_window_play (window);
-		} 
+		}
 		else
 			play_next_track_in_playlist (window);
-	} 
+	}
 	else {
 		goo_window_stop (window);
 		goo_window_set_current_track (window, 0);
@@ -2756,17 +2755,17 @@ goo_window_prev (GooWindow *window)
 
 	if (window->priv->current_track != NULL) {
 		int current_track, current_pos;
-		
+
 		current_track = window->priv->current_track->number;
 		current_pos = get_position_from_track_number (window, current_track);
-		
+
 		/* FIXME
 		if (goo_player_info_get_progress (GOO_PLAYER_INFO (window->priv->info)) * window->priv->current_track->length > 4)
 			new_pos = current_pos;
 		else
 		*/
 			new_pos = MAX (current_pos - 1, 0);
-	} 
+	}
 	else
 		new_pos = window->priv->album->n_tracks - 1;
 
@@ -2822,8 +2821,8 @@ goo_window_get_tracks (GooWindow *window,
 
 	if (window->priv->album->tracks == NULL)
 		return NULL;
-	
-	if (! selection) 
+
+	if (! selection)
 		return track_list_dup (window->priv->album->tracks);
 
 	/* return selected track list */
@@ -2972,13 +2971,13 @@ open_response_cb (GtkDialog  *file_sel,
 	folder = gtk_file_chooser_get_current_folder (GTK_FILE_CHOOSER (file_sel));
 	eel_gconf_set_path (PREF_GENERAL_COVER_PATH, folder);
 	g_free (folder);
-	
+
 	/* Load the image. */
 
 	filename = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (file_sel));
 	goo_window_set_cover_image (window, filename);
 	g_free (filename);
-	
+
 	gtk_widget_destroy (GTK_WIDGET (file_sel));
 }
 
@@ -2998,7 +2997,7 @@ goo_window_pick_cover_from_disk (GooWindow *window)
 	file_sel = gtk_file_chooser_dialog_new (_("Choose Disc Cover Image"),
 						GTK_WINDOW (window),
 						GTK_FILE_CHOOSER_ACTION_OPEN,
-						GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, 
+						GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
 						GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT,
 						NULL);
 	gtk_window_set_modal (GTK_WINDOW (file_sel), TRUE);
@@ -3038,7 +3037,7 @@ goo_window_pick_cover_from_disk (GooWindow *window)
 				  "close",
 				  G_CALLBACK (gtk_widget_destroy),
 				  GTK_WIDGET (file_sel));
-	
+
 	gtk_widget_show_all (GTK_WIDGET (file_sel));
 }
 
@@ -3078,7 +3077,7 @@ goo_window_remove_cover (GooWindow *window)
 		return;
 
 	goo_window_set_current_cd_autofetch (window, FALSE);
-		
+
 	cover_filename = goo_window_get_cover_filename (window);
 	if (cover_filename == NULL)
 		return;
@@ -3102,13 +3101,13 @@ goo_window_toggle_visibility (GooWindow *window)
 		gtk_widget_hide (GTK_WIDGET (window));
 
 		set_action_label_and_icon (window,
-					   "ToggleVisibility", 
-					   _("_Show Window"), 
+					   "ToggleVisibility",
+					   _("_Show Window"),
 					   _("Show the main window"),
 					   NULL,
 					   "/TrayPopupMenu/",
 					   NULL);
-	} 
+	}
 	else {
 		gtk_window_move (GTK_WINDOW (window),
 				 window->priv->pos_x,
@@ -3116,8 +3115,8 @@ goo_window_toggle_visibility (GooWindow *window)
 		gtk_window_present (GTK_WINDOW (window));
 
 		set_action_label_and_icon (window,
-					   "ToggleVisibility", 
-					   _("_Hide Window"), 
+					   "ToggleVisibility",
+					   _("_Hide Window"),
 					   _("Hide the main window"),
 					   NULL,
 					   /*"/MenuBar/View/", FIXME*/
diff --git a/src/goo-window.h b/src/goo-window.h
index 80ad083..b720ae4 100644
--- a/src/goo-window.h
+++ b/src/goo-window.h
@@ -24,7 +24,7 @@
 #define GOO_WINDOW_H
 
 #include <gtk/gtk.h>
-#include <brasero/brasero-drive.h>
+#include <brasero3/brasero-drive.h>
 #include "album-info.h"
 #include "goo-player.h"
 #include "gth-window.h"
@@ -51,7 +51,7 @@ struct _GooWindow
 struct _GooWindowClass
 {
 	GthWindowClass __parent_class;
-	
+
 	/*<signals>*/
 
 	void (*update_cover) (GooWindow *window);
diff --git a/src/gtk-file-chooser-preview.c b/src/gtk-file-chooser-preview.c
index 7a2e8e9..0c8c11c 100644
--- a/src/gtk-file-chooser-preview.c
+++ b/src/gtk-file-chooser-preview.c
@@ -80,33 +80,15 @@ gtk_file_chooser_preview_get_type ()
 
 
 static void
-gtk_file_chooser_preview_size_request (GtkWidget      *widget,
-				       GtkRequisition *requisition)
-{	
-	if (GTK_WIDGET_CLASS (parent_class)->size_request)
-		(* GTK_WIDGET_CLASS (parent_class)->size_request) (widget, requisition);
-	requisition->width = MAX (requisition->width, MIN_WIDTH);
-}
-
-
-static void
-gtk_file_chooser_preview_style_set (GtkWidget *widget,
-				    GtkStyle  *prev_style)
+gtk_file_chooser_preview_get_preferred_width (GtkWidget *widget,
+					      int       *minimal_width,
+					      int       *natural_width)
 {
-	GtkWidget *event_box;
-
-	GTK_WIDGET_CLASS (parent_class)->style_set (widget, prev_style);
-
-	event_box = gtk_bin_get_child (GTK_BIN (widget));
-	
-	gtk_widget_modify_bg (event_box, GTK_STATE_NORMAL,
-			      &widget->style->base[GTK_STATE_NORMAL]);
-	gtk_widget_modify_bg (event_box, GTK_STATE_INSENSITIVE,
-			      &widget->style->base[GTK_STATE_NORMAL]);
+	*minimal_width = *natural_width = MIN_WIDTH;
 }
 
 
-static void 
+static void
 gtk_file_chooser_preview_class_init (GtkFileChooserPreviewClass *class)
 {
         GObjectClass   *gobject_class = G_OBJECT_CLASS (class);
@@ -117,12 +99,11 @@ gtk_file_chooser_preview_class_init (GtkFileChooserPreviewClass *class)
         gobject_class->finalize = gtk_file_chooser_preview_finalize;
 
 	widget_class = (GtkWidgetClass*) class;
-	widget_class->size_request = gtk_file_chooser_preview_size_request;
-	widget_class->style_set = gtk_file_chooser_preview_style_set;
+	widget_class->get_preferred_width = gtk_file_chooser_preview_get_preferred_width;
 }
 
 
-static void 
+static void
 gtk_file_chooser_preview_init (GtkFileChooserPreview *preview)
 {
 	GtkFileChooserPreviewPrivateData *priv;
@@ -135,7 +116,7 @@ gtk_file_chooser_preview_init (GtkFileChooserPreview *preview)
 }
 
 
-static void 
+static void
 gtk_file_chooser_preview_finalize (GObject *object)
 {
         GtkFileChooserPreview *preview;
@@ -161,7 +142,7 @@ set_void_preview (GtkFileChooserPreview *preview)
 {
 	gtk_widget_hide (preview->priv->image);
 	gtk_widget_hide (preview->priv->image_info);
-	gtk_widget_set_sensitive (GTK_BIN (preview)->child, FALSE);
+	gtk_widget_set_sensitive (gtk_bin_get_child (GTK_BIN (preview)), FALSE);
 }
 
 
@@ -228,8 +209,8 @@ gtk_file_chooser_preview_new (void)
 {
 	GtkFileChooserPreview  *preview;
 
-	preview = GTK_FILE_CHOOSER_PREVIEW (g_object_new (GTK_TYPE_FILE_CHOOSER_PREVIEW, 
-							  "shadow", GTK_SHADOW_IN, 
+	preview = GTK_FILE_CHOOSER_PREVIEW (g_object_new (GTK_TYPE_FILE_CHOOSER_PREVIEW,
+							  "shadow", GTK_SHADOW_IN,
 							  NULL));
 	gtk_file_chooser_preview_construct (preview);
 	return (GtkWidget*) preview;
@@ -281,11 +262,11 @@ gtk_file_chooser_preview_set_uri (GtkFileChooserPreview *preview,
 	if (pixbuf != NULL) {
 		const char *w, *h;
 		char       *size_text, *text;
-		
+
 		w = gdk_pixbuf_get_option (pixbuf, "tEXt::Thumb::Image::Width");
 		h = gdk_pixbuf_get_option (pixbuf, "tEXt::Thumb::Image::Height");
 		size_text = g_format_size_for_display (g_file_info_get_size (info));
-		text = g_strconcat (size_text, 
+		text = g_strconcat (size_text,
 				    ((w == NULL)?NULL:"\n"),
 				    w, " x ", h, " ", _("pixels"),
 				    NULL);
@@ -295,12 +276,12 @@ gtk_file_chooser_preview_set_uri (GtkFileChooserPreview *preview,
 		g_free (text);
 
 		gtk_image_set_from_pixbuf (GTK_IMAGE (preview->priv->image), pixbuf);
-		
+
 		g_object_unref (pixbuf);
 		gtk_widget_show (preview->priv->image);
 		gtk_widget_show (preview->priv->image_info);
 
-		gtk_widget_set_sensitive (GTK_BIN (preview)->child, TRUE);
+		gtk_widget_set_sensitive (gtk_bin_get_child (GTK_BIN (preview)), TRUE);
 	}
 	else
 		set_void_preview (preview);
diff --git a/src/gtk-utils.c b/src/gtk-utils.c
index c15049b..e473ad7 100644
--- a/src/gtk-utils.c
+++ b/src/gtk-utils.c
@@ -23,7 +23,6 @@
 #include <config.h>
 #include <math.h>
 #include <string.h>
-#include "gconf-utils.h"
 #include "gtk-utils.h"
 
 #define REQUEST_ENTRY_WIDTH 220
@@ -60,7 +59,7 @@ create_button (const char *stock_id,
 	hbox = gtk_hbox_new (FALSE, 2);
 	align = gtk_alignment_new (0.5, 0.5, 0.0, 0.0);
 
-	GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
+	gtk_widget_set_can_default (button, TRUE);
 	gtk_label_set_mnemonic_widget (GTK_LABEL (label), GTK_WIDGET (button));
 
 	gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, FALSE, 0);
@@ -465,11 +464,6 @@ _gtk_ok_dialog_with_checkbutton_new (GtkWindow        *parent,
 	d = gtk_dialog_new_with_buttons ("", parent, flags, NULL);
 	gtk_window_set_resizable (GTK_WINDOW (d), FALSE);
 
-	gtk_dialog_set_has_separator (GTK_DIALOG (d), FALSE);
-	gtk_container_set_border_width (GTK_CONTAINER (d), 6);
-	gtk_container_set_border_width (GTK_CONTAINER (GTK_DIALOG (d)->vbox), 6);
-	gtk_box_set_spacing (GTK_BOX (GTK_DIALOG (d)->vbox), 8);
-
 	/* Add label and image */
 
 	image = gtk_image_new_from_stock (stock_id, GTK_ICON_SIZE_DIALOG);
@@ -495,14 +489,14 @@ _gtk_ok_dialog_with_checkbutton_new (GtkWindow        *parent,
 	gtk_box_pack_start (GTK_BOX (hbox), label,
 			    TRUE, TRUE, 0);
 
-	gtk_box_pack_start (GTK_BOX (GTK_DIALOG (d)->vbox),
+	gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (d))),
 			    hbox,
 			    FALSE, FALSE, 0);
 
 	/* Add checkbutton */
 
 	check_button = gtk_check_button_new_with_mnemonic (check_button_label);
-	gtk_box_pack_start (GTK_BOX (GTK_DIALOG (d)->vbox),
+	gtk_box_pack_start (GTK_BOX (gtk_dialog_get_content_area (GTK_DIALOG (d))),
 			    check_button,
 			    FALSE, FALSE, 0);
 	gtk_widget_show (check_button);
@@ -1137,7 +1131,7 @@ _gtk_widget_get_screen_size (GtkWidget *widget,
 
 	screen = gtk_widget_get_screen (widget);
 	gdk_screen_get_monitor_geometry (screen,
-					 gdk_screen_get_monitor_at_window (screen, widget->window),
+					 gdk_screen_get_monitor_at_window (screen, gtk_widget_get_window (widget)),
 					 &screen_geom);
 
 	*width = screen_geom.width;
@@ -1179,14 +1173,18 @@ void
 _gtk_paned_set_position2 (GtkPaned *paned,
 			  int       pos)
 {
-	GtkWidget *top_level;
-	int        size;
+	GtkWidget     *top_level;
+	GtkAllocation  allocation;
+	int            size;
 
 	top_level = gtk_widget_get_toplevel (GTK_WIDGET (paned));
+	if (! gtk_widget_is_toplevel (top_level))
+		return;
+	gtk_widget_get_allocation (top_level, &allocation);
 	if (gtk_orientable_get_orientation (GTK_ORIENTABLE (paned)) == GTK_ORIENTATION_HORIZONTAL)
-		size = top_level->allocation.width;
+		size = allocation.width;
 	else
-		size = top_level->allocation.height;
+		size = allocation.height;
 
 	if (pos > 0)
 		gtk_paned_set_position (paned, size - pos);
diff --git a/src/main.c b/src/main.c
index 4286740..29d1c8f 100644
--- a/src/main.c
+++ b/src/main.c
@@ -21,13 +21,12 @@
  */
 
 #include <config.h>
-#include <brasero/brasero-medium-monitor.h>
+#include <brasero3/brasero-medium-monitor.h>
 #include <gst/gst.h>
 #include <glib.h>
 #include <unique/unique.h>
 #include "eggsmclient.h"
 #include "goo-stock.h"
-#include "gconf-utils.h"
 #include "goo-window.h"
 #include "typedefs.h"
 #include "preferences.h"
@@ -81,16 +80,16 @@ static char       *default_device = NULL;
 static gboolean    version = FALSE;
 
 static const GOptionEntry options[] = {
-	{ "device", 'd',  0, G_OPTION_ARG_STRING, &default_device, 
+	{ "device", 'd',  0, G_OPTION_ARG_STRING, &default_device,
 	  N_("CD device to be used"),
 	  N_("DEVICE_PATH") },
 	{ "play", '\0', 0, G_OPTION_ARG_NONE, &AutoPlay,
           N_("Play the CD on startup"),
           0 },
-	{ "play-pause", '\0', 0, G_OPTION_ARG_NONE, &PlayPause, 
+	{ "play-pause", '\0', 0, G_OPTION_ARG_NONE, &PlayPause,
           N_("Play/Pause"),
           0 },
-        { "stop", '\0', 0, G_OPTION_ARG_NONE, &Stop, 
+        { "stop", '\0', 0, G_OPTION_ARG_NONE, &Stop,
           N_("Stop playing"),
           0 },
 	{ "next", '\0', 0, G_OPTION_ARG_NONE, &Next,
@@ -414,7 +413,7 @@ int main (int argc, char **argv)
 	bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
 	bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
 	textdomain (GETTEXT_PACKAGE);
-	
+
         context = g_option_context_new (N_("Play CDs and save the tracks to disk as files"));
         g_option_context_set_translation_domain (context, GETTEXT_PACKAGE);
         g_option_context_add_main_entries (context, options, GETTEXT_PACKAGE);
@@ -450,7 +449,7 @@ int main (int argc, char **argv)
 	}
 
 	release_data ();
-	
+
 	return 0;
 }
 
@@ -459,17 +458,17 @@ GtkWidget *
 main_get_window_from_device (const char *device)
 {
 	GList *scan;
-	
+
 	if (device == NULL)
 		return NULL;
-		
+
 	for (scan = window_list; scan; scan = scan->next) {
 		GooWindow *window = scan->data;
 
 		if (g_strcmp0 (goo_player_get_device (goo_window_get_player (window)), device) == 0)
 			return (GtkWidget *) window;
 	}
-	
+
 	return NULL;
 }
 
@@ -517,7 +516,7 @@ static gboolean
 play_next (gpointer user_data)
 {
 	GooWindow *window = user_data;
-	
+
 	goo_window_next (window);
 	return FALSE;
 }
@@ -529,7 +528,7 @@ notify_action_next_cb (NotifyNotification *notification,
                        gpointer            user_data)
 {
 	GooWindow *window = user_data;
-	
+
 	notify_notification_close (notification, NULL);
 	g_idle_add (play_next, window);
 }
@@ -541,7 +540,7 @@ notify_action_stop_cb (NotifyNotification *notification,
                        gpointer            user_data)
 {
 	GooWindow *window = user_data;
-	
+
 	goo_window_stop (window);
 	notify_notification_close (notification, NULL);
 }
@@ -550,7 +549,7 @@ notify_action_stop_cb (NotifyNotification *notification,
 #endif /* ENABLE_NOTIFICATION */
 
 
-void 
+void
 system_notify (GooWindow  *window,
 	       const char *title,
 	       const char *msg)
@@ -625,6 +624,6 @@ system_notify (GooWindow  *window,
 							x, y);*/
 
 	notify_notification_show (notification, NULL);
-	
+
 #endif /* ENABLE_NOTIFICATION */
 }
diff --git a/src/main.h b/src/main.h
index 659315a..153eeef 100644
--- a/src/main.h
+++ b/src/main.h
@@ -23,7 +23,7 @@
 #ifndef MAIN_H
 #define MAIN_H
 
-#include <brasero/brasero-drive.h>
+#include <brasero3/brasero-drive.h>
 #include "goo-window.h"
 
 extern GtkWidget *main_window;
diff --git a/src/preferences.c b/src/preferences.c
index 50b96d8..423fbb1 100644
--- a/src/preferences.c
+++ b/src/preferences.c
@@ -21,11 +21,9 @@
  */
 
 #include <string.h>
-#include <gconf/gconf-client.h>
 #include "typedefs.h"
 #include "preferences.h"
 #include "main.h"
-#include "gconf-utils.h"
 #include "goo-window.h"
 
 
@@ -46,14 +44,14 @@ get_enum_from_string (EnumStringTable *table,
 	int i;
 
 	/* return the first value if s_value is invalid */
-	
+
 	if (s_value == NULL)
-		return table[0].i_value; 
+		return table[0].i_value;
 
 	for (i = 0; table[i].s_value != NULL; i++)
 		if (strcmp (s_value, table[i].s_value) == 0)
 			return table[i].i_value;
-	
+
 	return table[0].i_value;
 }
 
@@ -67,7 +65,7 @@ get_string_from_enum (EnumStringTable *table,
 	for (i = 0; table[i].s_value != NULL; i++)
 		if (i_value == table[i].i_value)
 			return table[i].s_value;
-	
+
 	/* return the first value if i_value is invalid */
 
 	return table[0].s_value;
@@ -78,8 +76,8 @@ get_string_from_enum (EnumStringTable *table,
 
 
 static void
-set_dialog_property_int (const char *dialog, 
-			 const char *property, 
+set_dialog_property_int (const char *dialog,
+			 const char *property,
 			 int         value)
 {
 	char *key;
@@ -97,17 +95,17 @@ pref_util_save_window_geometry (GtkWindow  *window,
 	int x, y, width, height;
 
 	gtk_window_get_position (window, &x, &y);
-	set_dialog_property_int (dialog, "x", x); 
-	set_dialog_property_int (dialog, "y", y); 
+	set_dialog_property_int (dialog, "x", x);
+	set_dialog_property_int (dialog, "y", y);
 
 	gtk_window_get_size (window, &width, &height);
-	set_dialog_property_int (dialog, "width", width); 
-	set_dialog_property_int (dialog, "height", height); 
+	set_dialog_property_int (dialog, "width", width);
+	set_dialog_property_int (dialog, "height", height);
 }
 
 
 static int
-get_dialog_property_int (const char *dialog, 
+get_dialog_property_int (const char *dialog,
 			 const char *property)
 {
 	char *key;
@@ -132,7 +130,7 @@ pref_util_restore_window_geometry (GtkWindow  *window,
 	width = get_dialog_property_int (dialog, "width");
 	height = get_dialog_property_int (dialog, "height");
 
-	if (width != -1 && height != 1) 
+	if (width != -1 && height != 1)
 		gtk_window_set_default_size (window, width, height);
 
 	gtk_window_present (window);
diff --git a/src/typedefs.h b/src/typedefs.h
index 9ff7e4c..4d4f46d 100644
--- a/src/typedefs.h
+++ b/src/typedefs.h
@@ -23,6 +23,8 @@
 #ifndef TYPEDEFS_H
 #define TYPEDEFS_H
 
+#include <glib.h>
+
 #define OGG_ENCODER "vorbisenc"
 #define FLAC_ENCODER "flacenc"
 #define WAVE_ENCODER "wavenc"



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