diff --git a/eel/eel-background-box.h b/eel/eel-background-box.h
index 239858d..3f627bc 100644
--- a/eel/eel-background-box.h
+++ b/eel/eel-background-box.h
@@ -30,11 +30,17 @@
 
 G_BEGIN_DECLS
 
-#define EEL_TYPE_BACKGROUND_BOX            (eel_background_box_get_type ())
-#define EEL_BACKGROUND_BOX(obj)            (GTK_CHECK_CAST ((obj), EEL_TYPE_BACKGROUND_BOX, EelBackgroundBox))
-#define EEL_BACKGROUND_BOX_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_BACKGROUND_BOX, EelBackgroundBoxClass))
-#define EEL_IS_BACKGROUND_BOX(obj)         (GTK_CHECK_TYPE ((obj), EEL_TYPE_BACKGROUND_BOX))
-#define EEL_IS_BACKGROUND_BOX_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_BACKGROUND_BOX))
+#define EEL_TYPE_BACKGROUND_BOX eel_background_box_get_type()
+#define EEL_BACKGROUND_BOX(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_BACKGROUND_BOX, EelBackgroundBox))
+#define EEL_BACKGROUND_BOX_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_BACKGROUND_BOX, EelBackgroundBoxClass))
+#define EEL_IS_BACKGROUND_BOX(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_BACKGROUND_BOX))
+#define EEL_IS_BACKGROUND_BOX_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_BACKGROUND_BOX))
+#define EEL_BACKGROUND_BOX_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_BACKGROUND_BOX, EelBackgroundBoxClass))
 
 typedef struct EelBackgroundBox	       EelBackgroundBox;
 typedef struct EelBackgroundBoxClass       EelBackgroundBoxClass;
@@ -51,7 +57,7 @@ struct EelBackgroundBoxClass
 	GtkEventBoxClass parent_class;
 };
 
-GtkType    eel_background_box_get_type (void);
+GType      eel_background_box_get_type (void);
 GtkWidget *eel_background_box_new      (void);
 
 G_END_DECLS
diff --git a/eel/eel-background.c b/eel/eel-background.c
index aef926f..aebc1b8 100644
--- a/eel/eel-background.c
+++ b/eel/eel-background.c
@@ -968,7 +968,6 @@ eel_get_widget_background (GtkWidget *widget)
 	/* Store the background in the widget's data. */
 	background = eel_background_new ();
 	g_object_ref (background);
-	gtk_object_sink (GTK_OBJECT (background));
 	g_object_set_data_full (G_OBJECT (widget), "eel_background",
 				background, g_object_unref);
 	background->details->widget = widget;
@@ -1085,7 +1084,7 @@ eel_self_check_background (void)
 	eel_background_set_color (background, "red-blue");
 	eel_background_set_color (background, "red-blue:h");
 
-	gtk_object_sink (GTK_OBJECT (background));
+	g_object_ref_sink (background);
 }
 
 #endif
diff --git a/eel/eel-background.h b/eel/eel-background.h
index d2fff51..a2a6404 100644
--- a/eel/eel-background.h
+++ b/eel/eel-background.h
@@ -48,16 +48,17 @@
 typedef struct EelBackground EelBackground;
 typedef struct EelBackgroundClass EelBackgroundClass;
 
-#define EEL_TYPE_BACKGROUND \
-	(eel_background_get_type ())
+#define EEL_TYPE_BACKGROUND eel_background_get_type()
 #define EEL_BACKGROUND(obj) \
-	(GTK_CHECK_CAST ((obj), EEL_TYPE_BACKGROUND, EelBackground))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_BACKGROUND, EelBackground))
 #define EEL_BACKGROUND_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_BACKGROUND, EelBackgroundClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_BACKGROUND, EelBackgroundClass))
 #define EEL_IS_BACKGROUND(obj) \
-	(GTK_CHECK_TYPE ((obj), EEL_TYPE_BACKGROUND))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_BACKGROUND))
 #define EEL_IS_BACKGROUND_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_BACKGROUND))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_BACKGROUND))
+#define EEL_BACKGROUND_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_BACKGROUND, EelBackgroundClass))
 
 typedef enum {
 	EEL_BACKGROUND_TILED = 0, /* zero makes this the default placement */
@@ -67,7 +68,7 @@ typedef enum {
 	EEL_BACKGROUND_ZOOM
 } EelBackgroundImagePlacement;
 
-GtkType                     eel_background_get_type                         (void);
+GType                       eel_background_get_type                         (void);
 EelBackground *             eel_background_new                              (void);
 
 
diff --git a/eel/eel-canvas-rect-ellipse.h b/eel/eel-canvas-rect-ellipse.h
index 6535ddd..52b1a31 100644
--- a/eel/eel-canvas-rect-ellipse.h
+++ b/eel/eel-canvas-rect-ellipse.h
@@ -63,14 +63,17 @@ G_BEGIN_DECLS
  *							will be scaled when the canvas zoom factor is changed.
  */
 
-
-#define EEL_TYPE_CANVAS_RE            (eel_canvas_re_get_type ())
-#define EEL_CANVAS_RE(obj)            (GTK_CHECK_CAST ((obj), EEL_TYPE_CANVAS_RE, EelCanvasRE))
-#define EEL_CANVAS_RE_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_RE, EelCanvasREClass))
-#define EEL_IS_CANVAS_RE(obj)         (GTK_CHECK_TYPE ((obj), EEL_TYPE_CANVAS_RE))
-#define EEL_IS_CANVAS_RE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_RE))
-#define EEL_CANVAS_RE_GET_CLASS(obj)  (GTK_CHECK_GET_CLASS ((obj), EEL_TYPE_CANVAS_RE, EelCanvasREClass))
-
+#define EEL_TYPE_CANVAS_RE eel_canvas_re_get_type()
+#define EEL_CANVAS_RE(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_CANVAS_RE, EelCanvasRE))
+#define EEL_CANVAS_RE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_RE, EelCanvasREClass))
+#define EEL_IS_CANVAS_RE(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_CANVAS_RE))
+#define EEL_IS_CANVAS_RE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_RE))
+#define EEL_CANVAS_RE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_CANVAS_RE, EelCanvasREClass))
 
 typedef struct _EelCanvasRE      EelCanvasRE;
 typedef struct _EelCanvasREClass EelCanvasREClass;
@@ -113,14 +116,17 @@ GType eel_canvas_re_get_type (void) G_GNUC_CONST;
  * EelCanvasRE).
  */
 
-
-#define EEL_TYPE_CANVAS_RECT            (eel_canvas_rect_get_type ())
-#define EEL_CANVAS_RECT(obj)            (GTK_CHECK_CAST ((obj), EEL_TYPE_CANVAS_RECT, EelCanvasRect))
-#define EEL_CANVAS_RECT_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_RECT, EelCanvasRectClass))
-#define EEL_IS_CANVAS_RECT(obj)         (GTK_CHECK_TYPE ((obj), EEL_TYPE_CANVAS_RECT))
-#define EEL_IS_CANVAS_RECT_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_RECT))
-#define EEL_CANVAS_RECT_GET_CLASS(obj)  (GTK_CHECK_GET_CLASS ((obj), EEL_TYPE_CANVAS_RECT, EelCanvasRectClass))
-
+#define EEL_TYPE_CANVAS_RECT eel_canvas_rect_get_type()
+#define EEL_CANVAS_RECT(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_CANVAS_RECT, EelCanvasRect))
+#define EEL_CANVAS_RECT_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_RECT, EelCanvasRectClass))
+#define EEL_IS_CANVAS_RECT(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_CANVAS_RECT))
+#define EEL_IS_CANVAS_RECT_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_RECT))
+#define EEL_CANVAS_RECT_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_CANVAS_RECT, EelCanvasRectClass))
 
 typedef struct _EelCanvasRect EelCanvasRect;
 typedef struct _EelCanvasRectPrivate EelCanvasRectPrivate;
@@ -144,14 +150,17 @@ GType eel_canvas_rect_get_type (void) G_GNUC_CONST;
  * EelCanvasRE).
  */
 
-
-#define EEL_TYPE_CANVAS_ELLIPSE            (eel_canvas_ellipse_get_type ())
-#define EEL_CANVAS_ELLIPSE(obj)            (GTK_CHECK_CAST ((obj), EEL_TYPE_CANVAS_ELLIPSE, EelCanvasEllipse))
-#define EEL_CANVAS_ELLIPSE_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_ELLIPSE, EelCanvasEllipseClass))
-#define EEL_IS_CANVAS_ELLIPSE(obj)         (GTK_CHECK_TYPE ((obj), EEL_TYPE_CANVAS_ELLIPSE))
-#define EEL_IS_CANVAS_ELLIPSE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_ELLIPSE))
-#define EEL_CANVAS_ELLIPSE_GET_CLASS(obj)  (GTK_CHECK_GET_CLASS ((obj), EEL_TYPE_CANVAS_ELLIPSE, EelCanvasEllipseClass))
-
+#define EEL_TYPE_CANVAS_ELLIPSE eel_canvas_ellipse_get_type()
+#define EEL_CANVAS_ELLIPSE(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_CANVAS_ELLIPSE, EelCanvasEllipse))
+#define EEL_CANVAS_ELLIPSE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_ELLIPSE, EelCanvasEllipseClass))
+#define EEL_IS_CANVAS_ELLIPSE(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_CANVAS_ELLIPSE))
+#define EEL_IS_CANVAS_ELLIPSE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_ELLIPSE))
+#define EEL_CANVAS_ELLIPSE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_CANVAS_ELLIPSE, EelCanvasEllipseClass))
 
 typedef struct _EelCanvasEllipse EelCanvasEllipse;
 typedef struct _EelCanvasEllipseClass EelCanvasEllipseClass;
diff --git a/eel/eel-canvas.c b/eel/eel-canvas.c
index 15a20b9..3ec2df5 100644
--- a/eel/eel-canvas.c
+++ b/eel/eel-canvas.c
@@ -1158,7 +1158,6 @@ static void   eel_canvas_group_bounds      (EelCanvasItem *item, double *x1, dou
 
 static EelCanvasItemClass *group_parent_class;
 
-
 /**
  * eel_canvas_group_get_type:
  *
@@ -1208,7 +1207,7 @@ eel_canvas_group_class_init (EelCanvasGroupClass *class)
 	object_class = (GtkObjectClass *) class;
 	item_class = (EelCanvasItemClass *) class;
 
-	group_parent_class = gtk_type_class (eel_canvas_item_get_type ());
+	group_parent_class = g_type_class_peek (EEL_TYPE_CANVAS_ITEM);
 
 	gobject_class->set_property = eel_canvas_group_set_property;
 	gobject_class->get_property = eel_canvas_group_get_property;
@@ -1630,8 +1629,7 @@ eel_canvas_group_bounds (EelCanvasItem *item, double *x1, double *y1, double *x2
 static void
 group_add (EelCanvasGroup *group, EelCanvasItem *item)
 {
-	g_object_ref (GTK_OBJECT (item));
-	gtk_object_sink (GTK_OBJECT (item));
+	g_object_ref (item);
 
 	if (!group->item_list) {
 		group->item_list = g_list_append (group->item_list, item);
@@ -2002,7 +2000,7 @@ eel_canvas_class_init (EelCanvasClass *klass)
 	object_class  = (GtkObjectClass *) klass;
 	widget_class  = (GtkWidgetClass *) klass;
 
-	canvas_parent_class = gtk_type_class (gtk_layout_get_type ());
+	canvas_parent_class = g_type_class_peek (GTK_TYPE_LAYOUT);
 
 	gobject_class->set_property = eel_canvas_set_property;
 	gobject_class->get_property = eel_canvas_get_property;
@@ -2079,11 +2077,10 @@ eel_canvas_init (EelCanvas *canvas)
 	canvas->root = EEL_CANVAS_ITEM (g_object_new (eel_canvas_group_get_type (), NULL));
 	canvas->root->canvas = canvas;
 
-	g_object_ref (GTK_OBJECT (canvas->root));
-	gtk_object_sink (GTK_OBJECT (canvas->root));
+	g_object_ref (canvas->root);
 
-	canvas->root_destroy_id = g_signal_connect (GTK_OBJECT (canvas->root), "destroy",
-						    (GtkSignalFunc) panic_root_destroyed,
+	canvas->root_destroy_id = g_signal_connect (canvas->root, "destroy",
+						    G_CALLBACK (panic_root_destroyed),
 						    canvas);
 
 	canvas->need_repick = TRUE;
@@ -3938,7 +3935,7 @@ eel_canvas_item_class_init (EelCanvasItemClass *class)
 
 	gobject_class = (GObjectClass *) class;
 
-	item_parent_class = gtk_type_class (gtk_object_get_type ());
+	item_parent_class = g_type_class_peek (GTK_TYPE_OBJECT);
 
 	gobject_class->set_property = eel_canvas_item_set_property;
 	gobject_class->get_property = eel_canvas_item_get_property;
diff --git a/eel/eel-canvas.h b/eel/eel-canvas.h
index 83b19d1..b2efdd3 100644
--- a/eel/eel-canvas.h
+++ b/eel/eel-canvas.h
@@ -101,13 +101,17 @@ enum {
 	EEL_CANVAS_UPDATE_DEEP       = 1 << 1
 };
 
-#define EEL_TYPE_CANVAS_ITEM            (eel_canvas_item_get_type ())
-#define EEL_CANVAS_ITEM(obj)            (GTK_CHECK_CAST ((obj), EEL_TYPE_CANVAS_ITEM, EelCanvasItem))
-#define EEL_CANVAS_ITEM_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_ITEM, EelCanvasItemClass))
-#define EEL_IS_CANVAS_ITEM(obj)         (GTK_CHECK_TYPE ((obj), EEL_TYPE_CANVAS_ITEM))
-#define EEL_IS_CANVAS_ITEM_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_ITEM))
-#define EEL_CANVAS_ITEM_GET_CLASS(obj)  (GTK_CHECK_GET_CLASS ((obj), EEL_TYPE_CANVAS_ITEM, EelCanvasItemClass))
-
+#define EEL_TYPE_CANVAS_ITEM eel_canvas_item_get_type()
+#define EEL_CANVAS_ITEM(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_CANVAS_ITEM, EelCanvasItem))
+#define EEL_CANVAS_ITEM_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_ITEM, EelCanvasItemClass))
+#define EEL_IS_CANVAS_ITEM(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_CANVAS_ITEM))
+#define EEL_IS_CANVAS_ITEM_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_ITEM))
+#define EEL_CANVAS_ITEM_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_CANVAS_ITEM, EelCanvasItemClass))
 
 struct _EelCanvasItem {
 	GtkObject object;
@@ -304,13 +308,17 @@ void eel_canvas_item_request_redraw (EelCanvasItem *item);
  */
 
 
-#define EEL_TYPE_CANVAS_GROUP            (eel_canvas_group_get_type ())
-#define EEL_CANVAS_GROUP(obj)            (GTK_CHECK_CAST ((obj), EEL_TYPE_CANVAS_GROUP, EelCanvasGroup))
-#define EEL_CANVAS_GROUP_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_GROUP, EelCanvasGroupClass))
-#define EEL_IS_CANVAS_GROUP(obj)         (GTK_CHECK_TYPE ((obj), EEL_TYPE_CANVAS_GROUP))
-#define EEL_IS_CANVAS_GROUP_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_GROUP))
-#define EEL_CANVAS_GROUP_GET_CLASS(obj)  (GTK_CHECK_GET_CLASS ((obj), EEL_TYPE_CANVAS_GROUP, EelCanvasGroupClass))
-
+#define EEL_TYPE_CANVAS_GROUP eel_canvas_group_get_type()
+#define EEL_CANVAS_GROUP(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_CANVAS_GROUP, EelCanvasGroup))
+#define EEL_CANVAS_GROUP_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS_GROUP, EelCanvasGroupClass))
+#define EEL_IS_CANVAS_GROUP(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_CANVAS_GROUP))
+#define EEL_IS_CANVAS_GROUP_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS_GROUP))
+#define EEL_CANVAS_GROUP_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_CANVAS_GROUP, EelCanvasGroupClass))
 
 struct _EelCanvasGroup {
 	EelCanvasItem item;
@@ -333,14 +341,17 @@ GType eel_canvas_group_get_type (void) G_GNUC_CONST;
 
 /*** EelCanvas ***/
 
-
-#define EEL_TYPE_CANVAS            (eel_canvas_get_type ())
-#define EEL_CANVAS(obj)            (GTK_CHECK_CAST ((obj), EEL_TYPE_CANVAS, EelCanvas))
-#define EEL_CANVAS_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS, EelCanvasClass))
-#define EEL_IS_CANVAS(obj)         (GTK_CHECK_TYPE ((obj), EEL_TYPE_CANVAS))
-#define EEL_IS_CANVAS_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS))
-#define EEL_CANVAS_GET_CLASS(obj)  (GTK_CHECK_GET_CLASS ((obj), EEL_TYPE_CANVAS, EelCanvasClass))
-
+#define EEL_TYPE_CANVAS eel_canvas_get_type()
+#define EEL_CANVAS(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_CANVAS, EelCanvas))
+#define EEL_CANVAS_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_CANVAS, EelCanvasClass))
+#define EEL_IS_CANVAS(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_CANVAS))
+#define EEL_IS_CANVAS_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_CANVAS))
+#define EEL_CANVAS_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_CANVAS, EelCanvasClass))
 
 struct _EelCanvas {
 	GtkLayout layout;
diff --git a/eel/eel-debug-drawing.c b/eel/eel-debug-drawing.c
index 26cd41c..7132417 100644
--- a/eel/eel-debug-drawing.c
+++ b/eel/eel-debug-drawing.c
@@ -48,14 +48,17 @@
  * We cant use EelImage for this because part of the reason
  * for pixbuf debugging is to debug EelImage itself.
  */
-#define DEBUG_TYPE_PIXBUF_VIEWER (debug_pixbuf_viewer_get_type ())
-#define DEBUG_PIXBUF_VIEWER(obj) (GTK_CHECK_CAST ((obj), DEBUG_TYPE_PIXBUF_VIEWER, DebugPixbufViewer))
-#define DEBUG_IS_PIXBUF_VIEWER(obj) (GTK_CHECK_TYPE ((obj), DEBUG_TYPE_PIXBUF_VIEWER))
+
+#define DEBUG_TYPE_PIXBUF_VIEWER debug_pixbuf_viewer_get_type()
+#define DEBUG_PIXBUF_VIEWER(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), DEBUG_TYPE_PIXBUF_VIEWER, DebugPixbufViewer))
+#define DEBUG_IS_PIXBUF_VIEWER(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DEBUG_TYPE_PIXBUF_VIEWER))
 
 typedef struct DebugPixbufViewer DebugPixbufViewer;
 typedef struct DebugPixbufViewerClass DebugPixbufViewerClass;
 
-static GtkType debug_pixbuf_viewer_get_type   (void);
+static GType   debug_pixbuf_viewer_get_type   (void);
 static void    debug_pixbuf_viewer_set_pixbuf (DebugPixbufViewer *viewer,
 					       GdkPixbuf         *pixbuf);
 
diff --git a/eel/eel-editable-label.c b/eel/eel-editable-label.c
index e53ab45..321dd31 100644
--- a/eel/eel-editable-label.c
+++ b/eel/eel-editable-label.c
@@ -178,46 +178,8 @@ static GdkGC *  make_cursor_gc                (GtkWidget   *widget,
 					       const gchar *property_name,
 					       GdkColor    *fallback);
 
-
-
-static GtkMiscClass *parent_class = NULL;
-
-GType
-eel_editable_label_get_type (void)
-{
-  static GType label_type = 0;
-  
-  if (!label_type)
-    {
-      const GTypeInfo label_info =
-      {
-	sizeof (EelEditableLabelClass),
-	NULL,           /* base_init */
-	NULL,           /* base_finalize */
-	(GClassInitFunc) eel_editable_label_class_init,
-	NULL,           /* class_finalize */
-	NULL,           /* class_data */
-	sizeof (EelEditableLabel),
-	32,             /* n_preallocs */
-	(GInstanceInitFunc) eel_editable_label_init,
-      };
-
-      const GInterfaceInfo editable_info =
-      {
-	(GInterfaceInitFunc) eel_editable_label_editable_init,	/* interface_init */
-	NULL,							/* interface_finalize */
-	NULL							/* interface_data */
-      };
-
-      
-      label_type = g_type_register_static (GTK_TYPE_MISC, "EelEditableLabel", &label_info, 0);
-      g_type_add_interface_static (label_type,
-				   GTK_TYPE_EDITABLE,
-				   &editable_info);
-    }
-  
-  return label_type;
-}
+G_DEFINE_TYPE_WITH_CODE (EelEditableLabel, eel_editable_label, GTK_TYPE_MISC,
+			 G_IMPLEMENT_INTERFACE (GTK_TYPE_EDITABLE, eel_editable_label_editable_init));
 
 static void
 add_move_binding (GtkBindingSet  *binding_set,
@@ -250,8 +212,6 @@ eel_editable_label_class_init (EelEditableLabelClass *class)
   GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (class);
   GtkBindingSet *binding_set;
 
-  parent_class = gtk_type_class (GTK_TYPE_MISC);
-  
   gobject_class->set_property = eel_editable_label_set_property;
   gobject_class->get_property = eel_editable_label_get_property;
   gobject_class->finalize = eel_editable_label_finalize;
@@ -903,7 +863,7 @@ eel_editable_label_finalize (GObject *object)
       label->layout = NULL;
     }
 
-  G_OBJECT_CLASS (parent_class)->finalize (object);
+  G_OBJECT_CLASS (eel_editable_label_parent_class)->finalize (object);
 }
 
 static void
@@ -1177,7 +1137,7 @@ static void
 eel_editable_label_size_allocate (GtkWidget     *widget,
 				  GtkAllocation *allocation)
 {
-  (* GTK_WIDGET_CLASS (parent_class)->size_allocate) (widget, allocation);
+  (* GTK_WIDGET_CLASS (eel_editable_label_parent_class)->size_allocate) (widget, allocation);
 }
 
 static void
@@ -1190,8 +1150,8 @@ eel_editable_label_state_changed (GtkWidget   *widget,
 
   eel_editable_label_select_region (label, 0, 0);
 
-  if (GTK_WIDGET_CLASS (parent_class)->state_changed)
-    GTK_WIDGET_CLASS (parent_class)->state_changed (widget, prev_state);
+  if (GTK_WIDGET_CLASS (eel_editable_label_parent_class)->state_changed)
+    GTK_WIDGET_CLASS (eel_editable_label_parent_class)->state_changed (widget, prev_state);
 }
 
 static void 
@@ -1246,7 +1206,7 @@ eel_editable_label_direction_changed (GtkWidget        *widget,
   if (label->layout)
     pango_layout_context_changed (label->layout);
 
-  GTK_WIDGET_CLASS (parent_class)->direction_changed (widget, previous_dir);
+  GTK_WIDGET_CLASS (eel_editable_label_parent_class)->direction_changed (widget, previous_dir);
 }
 
 static void
@@ -1809,19 +1769,19 @@ eel_editable_label_unrealize (GtkWidget *widget)
   /* Strange. Copied from GtkEntry, should be NULL? */
   gtk_im_context_set_client_window (label->im_context, NULL);
   
-  (* GTK_WIDGET_CLASS (parent_class)->unrealize) (widget);
+  (* GTK_WIDGET_CLASS (eel_editable_label_parent_class)->unrealize) (widget);
 }
 
 static void
 eel_editable_label_map (GtkWidget *widget)
 {
-  (* GTK_WIDGET_CLASS (parent_class)->map) (widget);
+  (* GTK_WIDGET_CLASS (eel_editable_label_parent_class)->map) (widget);
 }
 
 static void
 eel_editable_label_unmap (GtkWidget *widget)
 {
-  (* GTK_WIDGET_CLASS (parent_class)->unmap) (widget);
+  (* GTK_WIDGET_CLASS (eel_editable_label_parent_class)->unmap) (widget);
 }
 
 static void
@@ -2297,7 +2257,7 @@ eel_editable_label_key_press (GtkWidget   *widget,
       return TRUE;
     }
 
-  if (GTK_WIDGET_CLASS (parent_class)->key_press_event (widget, event))
+  if (GTK_WIDGET_CLASS (eel_editable_label_parent_class)->key_press_event (widget, event))
     /* Activate key bindings
      */
     return TRUE;
@@ -2317,7 +2277,7 @@ eel_editable_label_key_release (GtkWidget   *widget,
       return TRUE;
     }
 
-  return GTK_WIDGET_CLASS (parent_class)->key_release_event (widget, event);
+  return GTK_WIDGET_CLASS (eel_editable_label_parent_class)->key_release_event (widget, event);
 }
 
 static void
@@ -3116,8 +3076,8 @@ append_action_signal (EelEditableLabel     *label,
   GtkWidget *menuitem = gtk_image_menu_item_new_from_stock (stock_id, NULL);
 
   g_object_set_data (G_OBJECT (menuitem), "gtk-signal", (char *)signal);
-  g_signal_connect (GTK_OBJECT (menuitem), "activate",
-		    GTK_SIGNAL_FUNC (activate_cb), label);
+  g_signal_connect (menuitem, "activate",
+		    G_CALLBACK (activate_cb), label);
 
   gtk_widget_set_sensitive (menuitem, sensitive);
   
@@ -3215,8 +3175,8 @@ popup_targets_received (GtkClipboard     *clipboard,
 			    clipboard_contains_text);
   
       menuitem = gtk_menu_item_new_with_label (_("Select All"));
-      g_signal_connect_object (GTK_OBJECT (menuitem), "activate",
-			       GTK_SIGNAL_FUNC (eel_editable_label_select_all), label,
+      g_signal_connect_object (menuitem, "activate",
+			       G_CALLBACK (eel_editable_label_select_all), label,
 			       G_CONNECT_SWAPPED);
       gtk_widget_show (menuitem);
       gtk_menu_shell_append (GTK_MENU_SHELL (label->popup_menu), menuitem);
diff --git a/eel/eel-editable-label.h b/eel/eel-editable-label.h
index 1255ea3..30069dc 100644
--- a/eel/eel-editable-label.h
+++ b/eel/eel-editable-label.h
@@ -34,14 +34,17 @@
 extern "C" {
 #endif /* __cplusplus */
 
-
-#define EEL_TYPE_EDITABLE_LABEL		  (eel_editable_label_get_type ())
-#define EEL_EDITABLE_LABEL(obj)		  (GTK_CHECK_CAST ((obj), EEL_TYPE_EDITABLE_LABEL, EelEditableLabel))
-#define EEL_EDITABLE_LABEL_CLASS(klass)	  (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_EDITABLE_LABEL, EelEditableLabelClass))
-#define EEL_IS_EDITABLE_LABEL(obj)	  (GTK_CHECK_TYPE ((obj), EEL_TYPE_EDITABLE_LABEL))
-#define EEL_IS_EDITABLE_LABEL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_EDITABLE_LABEL))
-#define EEL_EDITABLE_LABEL_GET_CLASS(obj)  (GTK_CHECK_GET_CLASS ((obj), EEL_TYPE_EDITABLE_LABEL, EelEditableLabelClass))
-       
+#define EEL_TYPE_EDITABLE_LABEL eel_editable_label_get_type()
+#define EEL_EDITABLE_LABEL(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_EDITABLE_LABEL, EelEditableLabel))
+#define EEL_EDITABLE_LABEL_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_EDITABLE_LABEL, EelEditableLabelClass))
+#define EEL_IS_EDITABLE_LABEL(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_EDITABLE_LABEL))
+#define EEL_IS_EDITABLE_LABEL_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_EDITABLE_LABEL))
+#define EEL_EDITABLE_LABEL_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_EDITABLE_LABEL, EelEditableLabelClass))
 
 typedef struct _EelEditableLabel       EelEditableLabel;
 typedef struct _EelEditableLabelClass  EelEditableLabelClass;
diff --git a/eel/eel-gtk-extensions.c b/eel/eel-gtk-extensions.c
index 8b85ec0..87c5454 100644
--- a/eel/eel-gtk-extensions.c
+++ b/eel/eel-gtk-extensions.c
@@ -394,7 +394,7 @@ eel_pop_up_context_menu (GtkMenu	     *menu,
 			button,					/* button */
 			event ? event->time : GDK_CURRENT_TIME); /* activate_time */
 
-	gtk_object_sink (GTK_OBJECT (menu));
+	g_object_ref_sink (menu);
 }
 
 GtkMenuItem *
@@ -539,10 +539,10 @@ alive_disconnecter (GtkObject *object, DisconnectInfo *info)
 void
 eel_gtk_signal_connect_full_while_alive (GtkObject *object,
 					 const gchar *name,
-					 GtkSignalFunc func,
+					 GCallback func,
 					 GtkCallbackMarshal marshal,
 					 gpointer data,
-					 GtkDestroyNotify destroy_func,
+					 GDestroyNotify destroy_func,
 					 gboolean object_signal,
 					 gboolean after,
 					 GtkObject *alive_object)
@@ -628,7 +628,7 @@ while_realized_disconnecter (GtkObject *object,
 void
 eel_gtk_signal_connect_while_realized (GtkObject *object,
 					    const char *name,
-					    GtkSignalFunc callback,
+					    GCallback callback,
 					    gpointer callback_data,
 					    GtkWidget *realized_widget)
 {
@@ -1012,7 +1012,7 @@ eel_gtk_get_system_font (void)
 
 	font = pango_font_description_copy (label->style->font_desc);
 
- 	gtk_object_sink (GTK_OBJECT (label));
+ 	g_object_ref_sink (label);
 
 	return font;
 }
@@ -1046,20 +1046,6 @@ eel_gtk_widget_get_motion_event_location (GtkWidget *widget,
 	eel_gtk_widget_get_button_event_location (widget, (const GdkEventButton *) event, x, y);
 }
 
-gboolean
-eel_gtk_tree_view_cell_is_completely_visible (GtkTreeView          *tree_view,
-					      GtkTreePath          *path,
-					      GtkTreeViewColumn    *column)
-{
-	GdkRectangle cell_rect, visible_rect;
-
-	gtk_tree_view_get_background_area (tree_view, path, column, &cell_rect);
-	gtk_tree_view_widget_to_tree_coords (tree_view, cell_rect.x, cell_rect.y,
-					     &cell_rect.x, &cell_rect.y);
-	gtk_tree_view_get_visible_rect (tree_view, &visible_rect);
-	return eel_gdk_rectangle_contains_rectangle (visible_rect, cell_rect);
-}
-
 static gboolean 
 tree_view_button_press_callback (GtkWidget *tree_view,
 				 GdkEventButton *event,
diff --git a/eel/eel-gtk-extensions.h b/eel/eel-gtk-extensions.h
index f9a662f..ca73ca0 100644
--- a/eel/eel-gtk-extensions.h
+++ b/eel/eel-gtk-extensions.h
@@ -38,16 +38,16 @@
 /* signals */
 void                  eel_gtk_signal_connect_full_while_alive         (GtkObject            *object,
 								       const gchar          *name,
-								       GtkSignalFunc         func,
+								       GCallback             func,
 								       GtkCallbackMarshal    marshal,
 								       gpointer              data,
-								       GtkDestroyNotify      destroy_func,
+								       GDestroyNotify        destroy_func,
 								       gboolean              object_signal,
 								       gboolean              after,
 								       GtkObject            *alive_object);
 void                  eel_gtk_signal_connect_while_realized           (GtkObject            *object,
 								       const char           *name,
-								       GtkSignalFunc         callback,
+								       GCallback             callback,
 								       gpointer              callback_data,
 								       GtkWidget            *realized_widget);
 
@@ -128,9 +128,6 @@ void                  eel_gtk_adjustment_set_value                    (GtkAdjust
 void                  eel_gtk_adjustment_clamp_value                  (GtkAdjustment        *adjustment);
 
 /* GtkTreeView */
-gboolean              eel_gtk_tree_view_cell_is_completely_visible    (GtkTreeView          *tree_view,
-								       GtkTreePath          *path,
-								       GtkTreeViewColumn    *column);
 void                  eel_gtk_tree_view_set_activate_on_single_click  (GtkTreeView               *tree_view,
 								       gboolean                   should_activate);
 
diff --git a/eel/eel-gtk-macros.h b/eel/eel-gtk-macros.h
index c47453f..b3a9d67 100644
--- a/eel/eel-gtk-macros.h
+++ b/eel/eel-gtk-macros.h
@@ -49,11 +49,11 @@
                                                                               \
 static gpointer parent_class;                                                 \
                                                                               \
-GtkType                                                                       \
+GType                                                                         \
 prefix##_get_type (void)                                                      \
 {                                                                             \
-	GtkType parent_type;                                                  \
-	static GtkType type;                                                  \
+	GType parent_type;                                                    \
+	static GType type;                                                    \
                                                                               \
 	if (type == 0) {                                                      \
 		static GTypeInfo info = {                                     \
diff --git a/eel/eel-image-table.c b/eel/eel-image-table.c
index 977477e..f13f3d9 100644
--- a/eel/eel-image-table.c
+++ b/eel/eel-image-table.c
@@ -76,7 +76,7 @@ static void    eel_image_table_unrealize            (GtkWidget          *widget)
 /* GtkContainerClass methods */
 static void    eel_image_table_remove               (GtkContainer       *container,
 						     GtkWidget          *widget);
-static GtkType eel_image_table_child_type           (GtkContainer       *container);
+static GType   eel_image_table_child_type           (GtkContainer       *container);
 
 /* Private EelImageTable methods */
 static void    image_table_emit_signal              (EelImageTable      *image_table,
@@ -292,7 +292,7 @@ eel_image_table_remove (GtkContainer *container,
 	EEL_CALL_PARENT (GTK_CONTAINER_CLASS, remove, (container, child));
 }
 
-static GtkType
+static GType
 eel_image_table_child_type (GtkContainer *container)
 {
 	return EEL_TYPE_LABELED_IMAGE;
diff --git a/eel/eel-image-table.h b/eel/eel-image-table.h
index dfda964..d55f7b8 100644
--- a/eel/eel-image-table.h
+++ b/eel/eel-image-table.h
@@ -29,11 +29,17 @@
 
 G_BEGIN_DECLS
 
-#define EEL_TYPE_IMAGE_TABLE            (eel_image_table_get_type ())
-#define EEL_IMAGE_TABLE(obj)            (GTK_CHECK_CAST ((obj), EEL_TYPE_IMAGE_TABLE, EelImageTable))
-#define EEL_IMAGE_TABLE_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_IMAGE_TABLE, EelImageTableClass))
-#define EEL_IS_IMAGE_TABLE(obj)         (GTK_CHECK_TYPE ((obj), EEL_TYPE_IMAGE_TABLE))
-#define EEL_IS_IMAGE_TABLE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_IMAGE_TABLE))
+#define EEL_TYPE_IMAGE_TABLE eel_image_table_get_type()
+#define EEL_IMAGE_TABLE(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_IMAGE_TABLE, EelImageTable))
+#define EEL_IMAGE_TABLE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_IMAGE_TABLE, EelImageTableClass))
+#define EEL_IS_IMAGE_TABLE(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_IMAGE_TABLE))
+#define EEL_IS_IMAGE_TABLE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_IMAGE_TABLE))
+#define EEL_IMAGE_TABLE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_IMAGE_TABLE, EelImageTableClass))
 
 typedef struct EelImageTable		EelImageTable;
 typedef struct EelImageTableClass	EelImageTableClass;
@@ -80,7 +86,7 @@ struct EelImageTableClass
 };
 
 /* Public GtkImageTable methods */
-GtkType    eel_image_table_get_type         (void);
+GType      eel_image_table_get_type         (void);
 GtkWidget *eel_image_table_new              (gboolean       homogeneous);
 GtkWidget *eel_image_table_add_empty_image  (EelImageTable *image_table);
 
diff --git a/eel/eel-labeled-image.h b/eel/eel-labeled-image.h
index 61dbd04..cbf7fe4 100644
--- a/eel/eel-labeled-image.h
+++ b/eel/eel-labeled-image.h
@@ -52,11 +52,17 @@
 
 G_BEGIN_DECLS
 
-#define EEL_TYPE_LABELED_IMAGE            (eel_labeled_image_get_type ())
-#define EEL_LABELED_IMAGE(obj)            (GTK_CHECK_CAST ((obj), EEL_TYPE_LABELED_IMAGE, EelLabeledImage))
-#define EEL_LABELED_IMAGE_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_LABELED_IMAGE, EelLabeledImageClass))
-#define EEL_IS_LABELED_IMAGE(obj)         (GTK_CHECK_TYPE ((obj), EEL_TYPE_LABELED_IMAGE))
-#define EEL_IS_LABELED_IMAGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_LABELED_IMAGE))
+#define EEL_TYPE_LABELED_IMAGE eel_labeled_image_get_type()
+#define EEL_LABELED_IMAGE(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_LABELED_IMAGE, EelLabeledImage))
+#define EEL_LABELED_IMAGE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_LABELED_IMAGE, EelLabeledImageClass))
+#define EEL_IS_LABELED_IMAGE(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_LABELED_IMAGE))
+#define EEL_IS_LABELED_IMAGE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_LABELED_IMAGE))
+#define EEL_LABELED_IMAGE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_LABELED_IMAGE, EelLabeledImageClass))
 
 typedef struct EelLabeledImage		  EelLabeledImage;
 typedef struct EelLabeledImageClass	  EelLabeledImageClass;
@@ -79,7 +85,7 @@ struct EelLabeledImageClass
 };
 
 /* Public GtkLabeledImage methods */
-GtkType         eel_labeled_image_get_type                         (void);
+GType           eel_labeled_image_get_type                         (void);
 GtkWidget *     eel_labeled_image_new                              (const char              *text,
 								    GdkPixbuf               *pixbuf);
 GtkWidget *     eel_labeled_image_new_from_file_name               (const char              *text,
diff --git a/eel/eel-stock-dialogs.c b/eel/eel-stock-dialogs.c
index e55f90f..34712c8 100644
--- a/eel/eel-stock-dialogs.c
+++ b/eel/eel-stock-dialogs.c
@@ -120,7 +120,7 @@ timed_wait_free (TimedWait *wait)
 
 	g_free (wait->wait_message);
 	if (wait->parent_window != NULL) {
-		gtk_widget_unref (GTK_WIDGET (wait->parent_window));
+		g_object_unref (wait->parent_window);
 	}
 	if (wait->timeout_handler_id != 0) {
 		g_source_remove (wait->timeout_handler_id);
@@ -260,7 +260,7 @@ eel_timed_wait_start_with_duration (int duration,
 	wait->parent_window = parent_window;
 	
 	if (parent_window != NULL) {
-		gtk_widget_ref (GTK_WIDGET (parent_window));
+		g_object_ref (parent_window);
 	}
 
 	/* Start the timer. */
diff --git a/eel/eel-types.c b/eel/eel-types.c
index 8a84e13..b16afef 100644
--- a/eel/eel-types.c
+++ b/eel/eel-types.c
@@ -35,13 +35,13 @@ void
 eel_type_init (void)
 {
 	int i;
-	GtkType type_id;
+	GType type_id;
 	static gboolean initialized = FALSE;
 	
 	static struct {
 		const gchar *type_name;
-		GtkType *type_id;
-		GtkType parent;
+		GType *type_id;
+		GType parent;
 		gconstpointer pointer1;
 		gpointer pointer2;
 	} builtin_info[EEL_TYPE_N_BUILTINS] = {
diff --git a/eel/eel-wrap-table.c b/eel/eel-wrap-table.c
index f2ddfe0..51c3f60 100644
--- a/eel/eel-wrap-table.c
+++ b/eel/eel-wrap-table.c
@@ -89,7 +89,7 @@ static void          eel_wrap_table_forall               (GtkContainer        *c
 							  gboolean             include_internals,
 							  GtkCallback          callback,
 							  gpointer             callback_data);
-static GtkType       eel_wrap_table_child_type           (GtkContainer        *container);
+static GType         eel_wrap_table_child_type           (GtkContainer        *container);
 
 
 /* Private EelWrapTable methods */
@@ -477,7 +477,7 @@ eel_wrap_table_forall (GtkContainer *container,
 	}
 }
 
-static GtkType
+static GType
 eel_wrap_table_child_type (GtkContainer   *container)
 {
 	return GTK_TYPE_WIDGET;
diff --git a/eel/eel-wrap-table.h b/eel/eel-wrap-table.h
index ab04e2b..85ae24e 100644
--- a/eel/eel-wrap-table.h
+++ b/eel/eel-wrap-table.h
@@ -30,11 +30,17 @@
 
 G_BEGIN_DECLS
 
-#define EEL_TYPE_WRAP_TABLE            (eel_wrap_table_get_type ())
-#define EEL_WRAP_TABLE(obj)            (GTK_CHECK_CAST ((obj), EEL_TYPE_WRAP_TABLE, EelWrapTable))
-#define EEL_WRAP_TABLE_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), EEL_TYPE_WRAP_TABLE, EelWrapTableClass))
-#define EEL_IS_WRAP_TABLE(obj)         (GTK_CHECK_TYPE ((obj), EEL_TYPE_WRAP_TABLE))
-#define EEL_IS_WRAP_TABLE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), EEL_TYPE_WRAP_TABLE))
+#define EEL_TYPE_WRAP_TABLE eel_wrap_table_get_type()
+#define EEL_WRAP_TABLE(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), EEL_TYPE_WRAP_TABLE, EelWrapTable))
+#define EEL_WRAP_TABLE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), EEL_TYPE_WRAP_TABLE, EelWrapTableClass))
+#define EEL_IS_WRAP_TABLE(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), EEL_TYPE_WRAP_TABLE))
+#define EEL_IS_WRAP_TABLE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), EEL_TYPE_WRAP_TABLE))
+#define EEL_WRAP_TABLE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), EEL_TYPE_WRAP_TABLE, EelWrapTableClass))
 
 typedef struct EelWrapTable	       EelWrapTable;
 typedef struct EelWrapTableClass       EelWrapTableClass;
@@ -62,7 +68,7 @@ typedef enum
 } EelJustification;
 
 /* Public GtkWrapTable methods */
-GtkType          eel_wrap_table_get_type                  (void);
+GType            eel_wrap_table_get_type                  (void);
 GtkWidget *      eel_wrap_table_new                       (gboolean            homogeneous);
 void             eel_wrap_table_set_x_spacing             (EelWrapTable       *wrap_table,
 							   guint               x_spacing);
diff --git a/libnautilus-private/nautilus-autorun.c b/libnautilus-private/nautilus-autorun.c
index ff2c2d7..4bb428a 100644
--- a/libnautilus-private/nautilus-autorun.c
+++ b/libnautilus-private/nautilus-autorun.c
@@ -887,7 +887,7 @@ show_dialog:
 
 	gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE);
 	hbox = gtk_hbox_new (FALSE, 12);
-	gtk_box_pack_start_defaults (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox);
+	gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox, TRUE, TRUE, 0);
 	gtk_container_set_border_width (GTK_CONTAINER (hbox), 12);
 
 	icon = g_mount_get_icon (mount);
@@ -898,7 +898,7 @@ show_dialog:
 	g_object_unref (icon);
 	image = gtk_image_new_from_pixbuf (pixbuf);
 	gtk_misc_set_alignment (GTK_MISC (image), 0.5, 0.0);
-	gtk_box_pack_start_defaults (GTK_BOX (hbox), image);
+	gtk_box_pack_start (GTK_BOX (hbox), image, TRUE, TRUE, 0);
 	/* also use the icon on the dialog */
 	gtk_window_set_title (GTK_WINDOW (dialog), mount_name);
 	gtk_window_set_icon (GTK_WINDOW (dialog), pixbuf);
@@ -906,7 +906,7 @@ show_dialog:
 	g_object_unref (pixbuf);
 
 	vbox = gtk_vbox_new (FALSE, 12);
-	gtk_box_pack_start_defaults (GTK_BOX (hbox), vbox);
+	gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 0);
 
 	label = gtk_label_new (NULL);
 
@@ -949,7 +949,7 @@ show_dialog:
 	g_free (markup);
 	gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
 	gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
-	gtk_box_pack_start_defaults (GTK_BOX (vbox), label);
+	gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0);
 
 	label = gtk_label_new (NULL);
 	content_description = g_content_type_get_description (x_content_type);
@@ -959,7 +959,7 @@ show_dialog:
 	g_free (markup);
 	gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
 	gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
-	gtk_box_pack_start_defaults (GTK_BOX (vbox), label);
+	gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0);
 	
 	data = g_new0 (AutorunDialogData, 1);
 	data->dialog = dialog;
@@ -973,7 +973,7 @@ show_dialog:
 
 	combo_box = gtk_combo_box_new ();
 	nautilus_autorun_prepare_combo_box (combo_box, x_content_type, FALSE, TRUE, FALSE, autorun_combo_changed, data);
-	gtk_box_pack_start_defaults (GTK_BOX (vbox), combo_box);
+	gtk_box_pack_start (GTK_BOX (vbox), combo_box, TRUE, TRUE, 0);
 
 	always_check_button = gtk_check_button_new_with_mnemonic (_("_Always perform this action"));
 	gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (always_check_button), data->remember);
@@ -981,7 +981,7 @@ show_dialog:
 			  "toggled",
 			  G_CALLBACK (autorun_always_toggled),
 			  data);
-	gtk_box_pack_start_defaults (GTK_BOX (vbox), always_check_button);
+	gtk_box_pack_start (GTK_BOX (vbox), always_check_button, TRUE, TRUE, 0);
 
 	gtk_dialog_add_buttons (GTK_DIALOG (dialog), 
 				GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
diff --git a/libnautilus-private/nautilus-bookmark.h b/libnautilus-private/nautilus-bookmark.h
index 7935d86..ca839c2 100644
--- a/libnautilus-private/nautilus-bookmark.h
+++ b/libnautilus-private/nautilus-bookmark.h
@@ -29,16 +29,17 @@
 #include <gio/gio.h>
 typedef struct NautilusBookmark NautilusBookmark;
 
-#define NAUTILUS_TYPE_BOOKMARK \
-	(nautilus_bookmark_get_type ())
+#define NAUTILUS_TYPE_BOOKMARK nautilus_bookmark_get_type()
 #define NAUTILUS_BOOKMARK(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_BOOKMARK, NautilusBookmark))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_BOOKMARK, NautilusBookmark))
 #define NAUTILUS_BOOKMARK_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_BOOKMARK, NautilusBookmarkClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_BOOKMARK, NautilusBookmarkClass))
 #define NAUTILUS_IS_BOOKMARK(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_BOOKMARK))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_BOOKMARK))
 #define NAUTILUS_IS_BOOKMARK_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_BOOKMARK))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_BOOKMARK))
+#define NAUTILUS_BOOKMARK_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_BOOKMARK, NautilusBookmarkClass))
 
 typedef struct NautilusBookmarkDetails NautilusBookmarkDetails;
 
diff --git a/libnautilus-private/nautilus-cell-renderer-pixbuf-emblem.h b/libnautilus-private/nautilus-cell-renderer-pixbuf-emblem.h
index 8b23f17..c7950ee 100644
--- a/libnautilus-private/nautilus-cell-renderer-pixbuf-emblem.h
+++ b/libnautilus-private/nautilus-cell-renderer-pixbuf-emblem.h
@@ -31,17 +31,18 @@
 
 #include <gtk/gtk.h>
 
-#define NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM \
-	(nautilus_cell_renderer_pixbuf_emblem_get_type ())
+#define NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM nautilus_cell_renderer_pixbuf_emblem_get_type()
 #define NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblem))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblem))
 #define NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblemClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblemClass))
 #define NAUTILUS_IS_CELL_RENDERER_PIXBUF_EMBLEM(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
 #define NAUTILUS_IS_CELL_RENDERER_PIXBUF_EMBLEM_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
-	
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
+#define NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblemClass))
+
 typedef struct _NautilusCellRendererPixbufEmblem NautilusCellRendererPixbufEmblem;
 typedef struct _NautilusCellRendererPixbufEmblemClass NautilusCellRendererPixbufEmblemClass;
 
diff --git a/libnautilus-private/nautilus-clipboard-monitor.h b/libnautilus-private/nautilus-clipboard-monitor.h
index e667e4b..2a48078 100644
--- a/libnautilus-private/nautilus-clipboard-monitor.h
+++ b/libnautilus-private/nautilus-clipboard-monitor.h
@@ -27,16 +27,17 @@
 
 #include <gtk/gtk.h>
 
-#define NAUTILUS_TYPE_CLIPBOARD_MONITOR \
-	(nautilus_clipboard_monitor_get_type ())
+#define NAUTILUS_TYPE_CLIPBOARD_MONITOR nautilus_clipboard_monitor_get_type()
 #define NAUTILUS_CLIPBOARD_MONITOR(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_CLIPBOARD_MONITOR, NautilusClipboardMonitor))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_CLIPBOARD_MONITOR, NautilusClipboardMonitor))
 #define NAUTILUS_CLIPBOARD_MONITOR_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_CLIPBOARD_MONITOR, NautilusClipboardMonitor))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_CLIPBOARD_MONITOR, NautilusClipboardMonitorClass))
 #define NAUTILUS_IS_CLIPBOARD_MONITOR(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_CLIPBOARD_MONITOR))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_CLIPBOARD_MONITOR))
 #define NAUTILUS_IS_CLIPBOARD_MONITOR_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_CLIPBOARD_MONITOR))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_CLIPBOARD_MONITOR))
+#define NAUTILUS_CLIPBOARD_MONITOR_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_CLIPBOARD_MONITOR, NautilusClipboardMonitorClass))
 
 typedef struct NautilusClipboardMonitorDetails NautilusClipboardMonitorDetails;
 
diff --git a/libnautilus-private/nautilus-column-chooser.h b/libnautilus-private/nautilus-column-chooser.h
index 1448795..55c7c8a 100644
--- a/libnautilus-private/nautilus-column-chooser.h
+++ b/libnautilus-private/nautilus-column-chooser.h
@@ -27,12 +27,18 @@
 
 #include <gtk/gtk.h>
 
-#define NAUTILUS_TYPE_COLUMN_CHOOSER                (nautilus_column_chooser_get_type ())
-#define NAUTILUS_COLUMN_CHOOSER(obj)                (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_COLUMN_CHOOSER, NautilusColumnChooser))
-#define NAUTILUS_COLUMN_CHOOSER_CLASS(klass)        (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_COLUMN_CHOOSER, NautilusColumnChooserClass))
-#define NAUTILUS_IS_COLUMN_CHOOSER(obj)             (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_COLUMN_CHOOSER))
-#define NAUTILUS_IS_COLUMN_CHOOSER_CLASS(klass)     (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_COLUMN_CHOOSER))
- 
+#define NAUTILUS_TYPE_COLUMN_CHOOSER nautilus_column_chooser_get_type()
+#define NAUTILUS_COLUMN_CHOOSER(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_COLUMN_CHOOSER, NautilusColumnChooser))
+#define NAUTILUS_COLUMN_CHOOSER_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_COLUMN_CHOOSER, NautilusColumnChooserClass))
+#define NAUTILUS_IS_COLUMN_CHOOSER(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_COLUMN_CHOOSER))
+#define NAUTILUS_IS_COLUMN_CHOOSER_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_COLUMN_CHOOSER))
+#define NAUTILUS_COLUMN_CHOOSER_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_COLUMN_CHOOSER, NautilusColumnChooserClass))
+
 typedef struct _NautilusColumnChooserDetails NautilusColumnChooserDetails;
 
 typedef struct {
diff --git a/libnautilus-private/nautilus-desktop-directory-file.h b/libnautilus-private/nautilus-desktop-directory-file.h
index 9f264b2..b31a14b 100644
--- a/libnautilus-private/nautilus-desktop-directory-file.h
+++ b/libnautilus-private/nautilus-desktop-directory-file.h
@@ -28,16 +28,17 @@
 
 #include <libnautilus-private/nautilus-file.h>
 
-#define NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE \
-	(nautilus_desktop_directory_file_get_type ())
+#define NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE nautilus_desktop_directory_file_get_type()
 #define NAUTILUS_DESKTOP_DIRECTORY_FILE(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE, NautilusDesktopDirectoryFile))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE, NautilusDesktopDirectoryFile))
 #define NAUTILUS_DESKTOP_DIRECTORY_FILE_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE, NautilusDesktopDirectoryFileClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE, NautilusDesktopDirectoryFileClass))
 #define NAUTILUS_IS_DESKTOP_DIRECTORY_FILE(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE))
 #define NAUTILUS_IS_DESKTOP_DIRECTORY_FILE_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE))
+#define NAUTILUS_DESKTOP_DIRECTORY_FILE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_DESKTOP_DIRECTORY_FILE, NautilusDesktopDirectoryFileClass))
 
 typedef struct NautilusDesktopDirectoryFileDetails NautilusDesktopDirectoryFileDetails;
 
diff --git a/libnautilus-private/nautilus-desktop-directory.h b/libnautilus-private/nautilus-desktop-directory.h
index 0256c49..7c1d245 100644
--- a/libnautilus-private/nautilus-desktop-directory.h
+++ b/libnautilus-private/nautilus-desktop-directory.h
@@ -29,16 +29,17 @@
 
 #include <libnautilus-private/nautilus-directory.h>
 
-#define NAUTILUS_TYPE_DESKTOP_DIRECTORY \
-	(nautilus_desktop_directory_get_type ())
+#define NAUTILUS_TYPE_DESKTOP_DIRECTORY nautilus_desktop_directory_get_type()
 #define NAUTILUS_DESKTOP_DIRECTORY(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_DESKTOP_DIRECTORY, NautilusDesktopDirectory))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_DESKTOP_DIRECTORY, NautilusDesktopDirectory))
 #define NAUTILUS_DESKTOP_DIRECTORY_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_DIRECTORY, NautilusDesktopDirectoryClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_DIRECTORY, NautilusDesktopDirectoryClass))
 #define NAUTILUS_IS_DESKTOP_DIRECTORY(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_DIRECTORY))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_DIRECTORY))
 #define NAUTILUS_IS_DESKTOP_DIRECTORY_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_DIRECTORY))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_DIRECTORY))
+#define NAUTILUS_DESKTOP_DIRECTORY_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_DESKTOP_DIRECTORY, NautilusDesktopDirectoryClass))
 
 typedef struct NautilusDesktopDirectoryDetails NautilusDesktopDirectoryDetails;
 
diff --git a/libnautilus-private/nautilus-desktop-icon-file.h b/libnautilus-private/nautilus-desktop-icon-file.h
index 276411c..5bb80d0 100644
--- a/libnautilus-private/nautilus-desktop-icon-file.h
+++ b/libnautilus-private/nautilus-desktop-icon-file.h
@@ -29,16 +29,17 @@
 #include <libnautilus-private/nautilus-file.h>
 #include <libnautilus-private/nautilus-desktop-link.h>
 
-#define NAUTILUS_TYPE_DESKTOP_ICON_FILE \
-	(nautilus_desktop_icon_file_get_type ())
+#define NAUTILUS_TYPE_DESKTOP_ICON_FILE nautilus_desktop_icon_file_get_type()
 #define NAUTILUS_DESKTOP_ICON_FILE(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_DESKTOP_ICON_FILE, NautilusDesktopIconFile))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_DESKTOP_ICON_FILE, NautilusDesktopIconFile))
 #define NAUTILUS_DESKTOP_ICON_FILE_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_ICON_FILE, NautilusDesktopIconFileClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_ICON_FILE, NautilusDesktopIconFileClass))
 #define NAUTILUS_IS_DESKTOP_ICON_FILE(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_ICON_FILE))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_ICON_FILE))
 #define NAUTILUS_IS_DESKTOP_ICON_FILE_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_ICON_FILE))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_ICON_FILE))
+#define NAUTILUS_DESKTOP_ICON_FILE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_DESKTOP_ICON_FILE, NautilusDesktopIconFileClass))
 
 typedef struct NautilusDesktopIconFileDetails NautilusDesktopIconFileDetails;
 
diff --git a/libnautilus-private/nautilus-desktop-link-monitor.h b/libnautilus-private/nautilus-desktop-link-monitor.h
index 3067896..c9865cd 100644
--- a/libnautilus-private/nautilus-desktop-link-monitor.h
+++ b/libnautilus-private/nautilus-desktop-link-monitor.h
@@ -28,16 +28,17 @@
 #include <gtk/gtk.h>
 #include <libnautilus-private/nautilus-desktop-link.h>
 
-#define NAUTILUS_TYPE_DESKTOP_LINK_MONITOR \
-	(nautilus_desktop_link_monitor_get_type ())
+#define NAUTILUS_TYPE_DESKTOP_LINK_MONITOR nautilus_desktop_link_monitor_get_type()
 #define NAUTILUS_DESKTOP_LINK_MONITOR(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_DESKTOP_LINK_MONITOR, NautilusDesktopLinkMonitor))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_DESKTOP_LINK_MONITOR, NautilusDesktopLinkMonitor))
 #define NAUTILUS_DESKTOP_LINK_MONITOR_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_LINK_MONITOR, NautilusDesktopLinkMonitor))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_LINK_MONITOR, NautilusDesktopLinkMonitorClass))
 #define NAUTILUS_IS_DESKTOP_LINK_MONITOR(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_LINK_MONITOR))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_LINK_MONITOR))
 #define NAUTILUS_IS_DESKTOP_LINK_MONITOR_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_LINK_MONITOR))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_LINK_MONITOR))
+#define NAUTILUS_DESKTOP_LINK_MONITOR_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_DESKTOP_LINK_MONITOR, NautilusDesktopLinkMonitorClass))
 
 typedef struct NautilusDesktopLinkMonitorDetails NautilusDesktopLinkMonitorDetails;
 
diff --git a/libnautilus-private/nautilus-desktop-link.h b/libnautilus-private/nautilus-desktop-link.h
index 16eaf39..49ac49a 100644
--- a/libnautilus-private/nautilus-desktop-link.h
+++ b/libnautilus-private/nautilus-desktop-link.h
@@ -28,16 +28,17 @@
 #include <libnautilus-private/nautilus-file.h>
 #include <gio/gio.h>
 
-#define NAUTILUS_TYPE_DESKTOP_LINK \
-	(nautilus_desktop_link_get_type ())
+#define NAUTILUS_TYPE_DESKTOP_LINK nautilus_desktop_link_get_type()
 #define NAUTILUS_DESKTOP_LINK(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_DESKTOP_LINK, NautilusDesktopLink))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_DESKTOP_LINK, NautilusDesktopLink))
 #define NAUTILUS_DESKTOP_LINK_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_LINK, NautilusDesktopLink))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_LINK, NautilusDesktopLinkClass))
 #define NAUTILUS_IS_DESKTOP_LINK(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_LINK))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_LINK))
 #define NAUTILUS_IS_DESKTOP_LINK_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_LINK))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_LINK))
+#define NAUTILUS_DESKTOP_LINK_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_DESKTOP_LINK, NautilusDesktopLinkClass))
 
 typedef struct NautilusDesktopLinkDetails NautilusDesktopLinkDetails;
 
diff --git a/libnautilus-private/nautilus-directory.h b/libnautilus-private/nautilus-directory.h
index eeca7de..4860865 100644
--- a/libnautilus-private/nautilus-directory.h
+++ b/libnautilus-private/nautilus-directory.h
@@ -41,16 +41,17 @@
           operations on files.
 */
 
-#define NAUTILUS_TYPE_DIRECTORY \
-	(nautilus_directory_get_type ())
+#define NAUTILUS_TYPE_DIRECTORY nautilus_directory_get_type()
 #define NAUTILUS_DIRECTORY(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_DIRECTORY, NautilusDirectory))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_DIRECTORY, NautilusDirectory))
 #define NAUTILUS_DIRECTORY_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DIRECTORY, NautilusDirectoryClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DIRECTORY, NautilusDirectoryClass))
 #define NAUTILUS_IS_DIRECTORY(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_DIRECTORY))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_DIRECTORY))
 #define NAUTILUS_IS_DIRECTORY_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DIRECTORY))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DIRECTORY))
+#define NAUTILUS_DIRECTORY_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_DIRECTORY, NautilusDirectoryClass))
 
 /* NautilusFile is defined both here and in nautilus-file.h. */
 #ifndef NAUTILUS_FILE_DEFINED
diff --git a/libnautilus-private/nautilus-dnd.c b/libnautilus-private/nautilus-dnd.c
index bda0dcc..633ba26 100644
--- a/libnautilus-private/nautilus-dnd.c
+++ b/libnautilus-private/nautilus-dnd.c
@@ -807,9 +807,9 @@ nautilus_drag_drop_action_ask (GtkWidget *widget,
 	gtk_grab_remove (menu);
 	
 	g_main_loop_unref (damd.loop);
-	
-	gtk_object_sink (GTK_OBJECT (menu));
-	
+
+	g_object_ref_sink (menu);	
+
 	return damd.chosen;
 }
 
@@ -860,9 +860,9 @@ nautilus_drag_drop_background_ask (GtkWidget *widget,
 	gtk_grab_remove (menu);
 	
 	g_main_loop_unref (damd.loop);
-	
-	gtk_object_sink (GTK_OBJECT (menu));
-	
+
+	g_object_ref_sink (menu);
+
 	return damd.chosen;	
 }
 
diff --git a/libnautilus-private/nautilus-entry.h b/libnautilus-private/nautilus-entry.h
index 98c1284..784b028 100644
--- a/libnautilus-private/nautilus-entry.h
+++ b/libnautilus-private/nautilus-entry.h
@@ -31,16 +31,17 @@
 
 G_BEGIN_DECLS
 
-#define NAUTILUS_TYPE_ENTRY \
-	(nautilus_entry_get_type ())
+#define NAUTILUS_TYPE_ENTRY nautilus_entry_get_type()
 #define NAUTILUS_ENTRY(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_ENTRY, NautilusEntry))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_ENTRY, NautilusEntry))
 #define NAUTILUS_ENTRY_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_ENTRY, NautilusEntryClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_ENTRY, NautilusEntryClass))
 #define NAUTILUS_IS_ENTRY(obj) \
-        (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_ENTRY))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_ENTRY))
 #define NAUTILUS_IS_ENTRY_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass),	NAUTILUS_TYPE_ENTRY))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_ENTRY))
+#define NAUTILUS_ENTRY_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_ENTRY, NautilusEntryClass))
 
 typedef struct NautilusEntryDetails NautilusEntryDetails;
 
diff --git a/libnautilus-private/nautilus-file.h b/libnautilus-private/nautilus-file.h
index a8d9247..f47fc46 100644
--- a/libnautilus-private/nautilus-file.h
+++ b/libnautilus-private/nautilus-file.h
@@ -41,18 +41,17 @@
 typedef struct NautilusFile NautilusFile;
 #endif
 
-#define NAUTILUS_TYPE_FILE \
-	(nautilus_file_get_type ())
+#define NAUTILUS_TYPE_FILE nautilus_file_get_type()
 #define NAUTILUS_FILE(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_FILE, NautilusFile))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_FILE, NautilusFile))
 #define NAUTILUS_FILE_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_FILE, NautilusFileClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_FILE, NautilusFileClass))
 #define NAUTILUS_IS_FILE(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_FILE))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_FILE))
 #define NAUTILUS_IS_FILE_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_FILE))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_FILE))
 #define NAUTILUS_FILE_GET_CLASS(obj) \
-	(G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_FILE, NautilusFileClass))
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_FILE, NautilusFileClass))
 
 typedef enum {
 	NAUTILUS_FILE_SORT_NONE,
diff --git a/libnautilus-private/nautilus-horizontal-splitter.h b/libnautilus-private/nautilus-horizontal-splitter.h
index ff5e45a..ea0fa28 100644
--- a/libnautilus-private/nautilus-horizontal-splitter.h
+++ b/libnautilus-private/nautilus-horizontal-splitter.h
@@ -29,11 +29,17 @@
 
 G_BEGIN_DECLS
 
-#define NAUTILUS_TYPE_HORIZONTAL_SPLITTER            (nautilus_horizontal_splitter_get_type ())
-#define NAUTILUS_HORIZONTAL_SPLITTER(obj)            (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_HORIZONTAL_SPLITTER, NautilusHorizontalSplitter))
-#define NAUTILUS_HORIZONTAL_SPLITTER_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_HORIZONTAL_SPLITTER, NautilusHorizontalSplitterClass))
-#define NAUTILUS_IS_HORIZONTAL_SPLITTER(obj)         (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_HORIZONTAL_SPLITTER))
-#define NAUTILUS_IS_HORIZONTAL_SPLITTER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_HORIZONTAL_SPLITTER))
+#define NAUTILUS_TYPE_HORIZONTAL_SPLITTER nautilus_horizontal_splitter_get_type()
+#define NAUTILUS_HORIZONTAL_SPLITTER(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_HORIZONTAL_SPLITTER, NautilusHorizontalSplitter))
+#define NAUTILUS_HORIZONTAL_SPLITTER_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_HORIZONTAL_SPLITTER, NautilusHorizontalSplitterClass))
+#define NAUTILUS_IS_HORIZONTAL_SPLITTER(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_HORIZONTAL_SPLITTER))
+#define NAUTILUS_IS_HORIZONTAL_SPLITTER_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_HORIZONTAL_SPLITTER))
+#define NAUTILUS_HORIZONTAL_SPLITTER_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_HORIZONTAL_SPLITTER, NautilusHorizontalSplitterClass))
 
 typedef struct NautilusHorizontalSplitterDetails NautilusHorizontalSplitterDetails;
 
diff --git a/libnautilus-private/nautilus-icon-canvas-item.h b/libnautilus-private/nautilus-icon-canvas-item.h
index aca805b..7a74b7b 100644
--- a/libnautilus-private/nautilus-icon-canvas-item.h
+++ b/libnautilus-private/nautilus-icon-canvas-item.h
@@ -30,16 +30,17 @@
 
 G_BEGIN_DECLS
 
-#define NAUTILUS_TYPE_ICON_CANVAS_ITEM \
-	(nautilus_icon_canvas_item_get_type ())
+#define NAUTILUS_TYPE_ICON_CANVAS_ITEM nautilus_icon_canvas_item_get_type()
 #define NAUTILUS_ICON_CANVAS_ITEM(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_ICON_CANVAS_ITEM, NautilusIconCanvasItem))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_ICON_CANVAS_ITEM, NautilusIconCanvasItem))
 #define NAUTILUS_ICON_CANVAS_ITEM_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_ICON_CANVAS_ITEM, NautilusIconCanvasItemClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_ICON_CANVAS_ITEM, NautilusIconCanvasItemClass))
 #define NAUTILUS_IS_ICON_CANVAS_ITEM(obj) \
-        (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_ICON_CANVAS_ITEM))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_ICON_CANVAS_ITEM))
 #define NAUTILUS_IS_ICON_CANVAS_ITEM_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass),	NAUTILUS_TYPE_ICON_CANVAS_ITEM))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_ICON_CANVAS_ITEM))
+#define NAUTILUS_ICON_CANVAS_ITEM_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_ICON_CANVAS_ITEM, NautilusIconCanvasItemClass))
 
 typedef struct NautilusIconCanvasItem NautilusIconCanvasItem;
 typedef struct NautilusIconCanvasItemClass NautilusIconCanvasItemClass;
diff --git a/libnautilus-private/nautilus-icon-container.h b/libnautilus-private/nautilus-icon-container.h
index 2b958c4..750408c 100644
--- a/libnautilus-private/nautilus-icon-container.h
+++ b/libnautilus-private/nautilus-icon-container.h
@@ -29,22 +29,22 @@
 #include <eel/eel-canvas.h>
 #include <libnautilus-private/nautilus-icon-info.h>
 
-#define NAUTILUS_TYPE_ICON_CONTAINER \
-	(nautilus_icon_container_get_type ())
+#define NAUTILUS_TYPE_ICON_CONTAINER nautilus_icon_container_get_type()
 #define NAUTILUS_ICON_CONTAINER(obj) \
-	GTK_CHECK_CAST (obj, nautilus_icon_container_get_type (), NautilusIconContainer)
-#define NAUTILUS_ICON_CONTAINER_CLASS(k) \
-	GTK_CHECK_CLASS_CAST (k, nautilus_icon_container_get_type (), NautilusIconContainerClass)
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_ICON_CONTAINER, NautilusIconContainer))
+#define NAUTILUS_ICON_CONTAINER_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_ICON_CONTAINER, NautilusIconContainerClass))
 #define NAUTILUS_IS_ICON_CONTAINER(obj) \
-	GTK_CHECK_TYPE (obj, nautilus_icon_container_get_type ())
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_ICON_CONTAINER))
+#define NAUTILUS_IS_ICON_CONTAINER_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_ICON_CONTAINER))
+#define NAUTILUS_ICON_CONTAINER_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_ICON_CONTAINER, NautilusIconContainerClass))
+
 
 #define NAUTILUS_ICON_CONTAINER_ICON_DATA(pointer) \
 	((NautilusIconData *) (pointer))
 
-#define NAUTILUS_ICON_CONTAINER_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS ((object), \
-					           nautilus_icon_container_get_type (), \
-						   NautilusIconContainerClass))
-
 typedef struct NautilusIconData NautilusIconData;
 
 typedef void (* NautilusIconCallback) (NautilusIconData *icon_data,
diff --git a/libnautilus-private/nautilus-keep-last-vertical-box.h b/libnautilus-private/nautilus-keep-last-vertical-box.h
index 9afc008..07c43b6 100644
--- a/libnautilus-private/nautilus-keep-last-vertical-box.h
+++ b/libnautilus-private/nautilus-keep-last-vertical-box.h
@@ -28,11 +28,17 @@
 
 #include <gtk/gtk.h>
 
-#define NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX            (nautilus_keep_last_vertical_box_get_type ())
-#define NAUTILUS_KEEP_LAST_VERTICAL_BOX(obj)            (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX, NautilusKeepLastVerticalBox))
-#define NAUTILUS_KEEP_LAST_VERTICAL_BOX_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX, NautilusKeepLastVerticalBoxClass))
-#define NAUTILUS_IS_KEEP_LAST_VERTICAL_BOX(obj)         (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX))
-#define NAUTILUS_IS_KEEP_LAST_VERTICAL_BOX_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX))
+#define NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX nautilus_keep_last_vertical_box_get_type()
+#define NAUTILUS_KEEP_LAST_VERTICAL_BOX(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX, NautilusKeepLastVerticalBox))
+#define NAUTILUS_KEEP_LAST_VERTICAL_BOX_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX, NautilusKeepLastVerticalBoxClass))
+#define NAUTILUS_IS_KEEP_LAST_VERTICAL_BOX(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX))
+#define NAUTILUS_IS_KEEP_LAST_VERTICAL_BOX_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX))
+#define NAUTILUS_KEEP_LAST_VERTICAL_BOX_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_KEEP_LAST_VERTICAL_BOX, NautilusKeepLastVerticalBoxClass))
 
 typedef struct NautilusKeepLastVerticalBox NautilusKeepLastVerticalBox;
 typedef struct NautilusKeepLastVerticalBoxClass NautilusKeepLastVerticalBoxClass;
diff --git a/libnautilus-private/nautilus-merged-directory.h b/libnautilus-private/nautilus-merged-directory.h
index 01f2f8f..d71a1bc 100644
--- a/libnautilus-private/nautilus-merged-directory.h
+++ b/libnautilus-private/nautilus-merged-directory.h
@@ -29,16 +29,17 @@
 
 #include <libnautilus-private/nautilus-directory.h>
 
-#define NAUTILUS_TYPE_MERGED_DIRECTORY \
-	(nautilus_merged_directory_get_type ())
+#define NAUTILUS_TYPE_MERGED_DIRECTORY nautilus_merged_directory_get_type()
 #define NAUTILUS_MERGED_DIRECTORY(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_MERGED_DIRECTORY, NautilusMergedDirectory))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_MERGED_DIRECTORY, NautilusMergedDirectory))
 #define NAUTILUS_MERGED_DIRECTORY_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_MERGED_DIRECTORY, NautilusMergedDirectoryClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_MERGED_DIRECTORY, NautilusMergedDirectoryClass))
 #define NAUTILUS_IS_MERGED_DIRECTORY(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_MERGED_DIRECTORY))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_MERGED_DIRECTORY))
 #define NAUTILUS_IS_MERGED_DIRECTORY_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_MERGED_DIRECTORY))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_MERGED_DIRECTORY))
+#define NAUTILUS_MERGED_DIRECTORY_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_MERGED_DIRECTORY, NautilusMergedDirectoryClass))
 
 typedef struct NautilusMergedDirectoryDetails NautilusMergedDirectoryDetails;
 
diff --git a/libnautilus-private/nautilus-metafile.h b/libnautilus-private/nautilus-metafile.h
index 54ebda8..b346954 100644
--- a/libnautilus-private/nautilus-metafile.h
+++ b/libnautilus-private/nautilus-metafile.h
@@ -27,11 +27,17 @@
 #include <libnautilus-private/nautilus-directory.h>
 #include <libxml/tree.h>
 
-#define NAUTILUS_TYPE_METAFILE	          (nautilus_metafile_get_type ())
-#define NAUTILUS_METAFILE(obj)	          (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_METAFILE, NautilusMetafile))
-#define NAUTILUS_METAFILE_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_METAFILE, NautilusMetafileClass))
-#define NAUTILUS_IS_METAFILE(obj)         (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_METAFILE))
-#define NAUTILUS_IS_METAFILE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_METAFILE))
+#define NAUTILUS_TYPE_METAFILE nautilus_metafile_get_type()
+#define NAUTILUS_METAFILE(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_METAFILE, NautilusMetafile))
+#define NAUTILUS_METAFILE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_METAFILE, NautilusMetafileClass))
+#define NAUTILUS_IS_METAFILE(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_METAFILE))
+#define NAUTILUS_IS_METAFILE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_METAFILE))
+#define NAUTILUS_METAFILE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_METAFILE, NautilusMetafileClass))
 
 typedef struct _NautilusMetafile NautilusMetafile;
 
diff --git a/libnautilus-private/nautilus-open-with-dialog.c b/libnautilus-private/nautilus-open-with-dialog.c
index a2274fc..a3058ad 100644
--- a/libnautilus-private/nautilus-open-with-dialog.c
+++ b/libnautilus-private/nautilus-open-with-dialog.c
@@ -380,7 +380,7 @@ chooser_response_cb (GtkFileChooser *chooser,
 
 			gtk_entry_set_text (GTK_ENTRY (dialog->details->entry),
 					    quoted_text);
-			gtk_entry_set_position (GTK_ENTRY (dialog->details->entry), -1);
+			gtk_editable_set_position (GTK_EDITABLE (dialog->details->entry), -1);
 			g_free (quoted_text);
 			g_free (filename);
 		}
diff --git a/libnautilus-private/nautilus-search-directory-file.h b/libnautilus-private/nautilus-search-directory-file.h
index e56a79f..f37b1d4 100644
--- a/libnautilus-private/nautilus-search-directory-file.h
+++ b/libnautilus-private/nautilus-search-directory-file.h
@@ -28,16 +28,17 @@
 
 #include <libnautilus-private/nautilus-file.h>
 
-#define NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE \
-	(nautilus_search_directory_file_get_type ())
+#define NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE nautilus_search_directory_file_get_type()
 #define NAUTILUS_SEARCH_DIRECTORY_FILE(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE, NautilusSearchDirectoryFile))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE, NautilusSearchDirectoryFile))
 #define NAUTILUS_SEARCH_DIRECTORY_FILE_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE, NautilusSearchDirectoryFileClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE, NautilusSearchDirectoryFileClass))
 #define NAUTILUS_IS_SEARCH_DIRECTORY_FILE(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE))
 #define NAUTILUS_IS_SEARCH_DIRECTORY_FILE_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE))
+#define NAUTILUS_SEARCH_DIRECTORY_FILE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_SEARCH_DIRECTORY_FILE, NautilusSearchDirectoryFileClass))
 
 typedef struct NautilusSearchDirectoryFileDetails NautilusSearchDirectoryFileDetails;
 
diff --git a/libnautilus-private/nautilus-search-directory.h b/libnautilus-private/nautilus-search-directory.h
index c008692..d8d12d7 100644
--- a/libnautilus-private/nautilus-search-directory.h
+++ b/libnautilus-private/nautilus-search-directory.h
@@ -28,16 +28,17 @@
 #include <libnautilus-private/nautilus-directory.h>
 #include <libnautilus-private/nautilus-query.h>
 
-#define NAUTILUS_TYPE_SEARCH_DIRECTORY \
-	(nautilus_search_directory_get_type ())
+#define NAUTILUS_TYPE_SEARCH_DIRECTORY nautilus_search_directory_get_type()
 #define NAUTILUS_SEARCH_DIRECTORY(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_SEARCH_DIRECTORY, NautilusSearchDirectory))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_SEARCH_DIRECTORY, NautilusSearchDirectory))
 #define NAUTILUS_SEARCH_DIRECTORY_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SEARCH_DIRECTORY, NautilusSearchDirectoryClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SEARCH_DIRECTORY, NautilusSearchDirectoryClass))
 #define NAUTILUS_IS_SEARCH_DIRECTORY(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_SEARCH_DIRECTORY))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_SEARCH_DIRECTORY))
 #define NAUTILUS_IS_SEARCH_DIRECTORY_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SEARCH_DIRECTORY))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SEARCH_DIRECTORY))
+#define NAUTILUS_SEARCH_DIRECTORY_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_SEARCH_DIRECTORY, NautilusSearchDirectoryClass))
 
 typedef struct NautilusSearchDirectoryDetails NautilusSearchDirectoryDetails;
 
diff --git a/libnautilus-private/nautilus-trash-monitor.h b/libnautilus-private/nautilus-trash-monitor.h
index 3704949..8fdce64 100644
--- a/libnautilus-private/nautilus-trash-monitor.h
+++ b/libnautilus-private/nautilus-trash-monitor.h
@@ -33,16 +33,17 @@ typedef struct NautilusTrashMonitor NautilusTrashMonitor;
 typedef struct NautilusTrashMonitorClass NautilusTrashMonitorClass;
 typedef struct NautilusTrashMonitorDetails NautilusTrashMonitorDetails;
 
-#define NAUTILUS_TYPE_TRASH_MONITOR \
-	(nautilus_trash_monitor_get_type ())
+#define NAUTILUS_TYPE_TRASH_MONITOR nautilus_trash_monitor_get_type()
 #define NAUTILUS_TRASH_MONITOR(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_TRASH_MONITOR, NautilusTrashMonitor))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_TRASH_MONITOR, NautilusTrashMonitor))
 #define NAUTILUS_TRASH_MONITOR_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_TRASH_MONITOR, NautilusTrashMonitorClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_TRASH_MONITOR, NautilusTrashMonitorClass))
 #define NAUTILUS_IS_TRASH_MONITOR(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_TRASH_MONITOR))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_TRASH_MONITOR))
 #define NAUTILUS_IS_TRASH_MONITOR_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_TRASH_MONITOR))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_TRASH_MONITOR))
+#define NAUTILUS_TRASH_MONITOR_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_TRASH_MONITOR, NautilusTrashMonitorClass))
 
 struct NautilusTrashMonitor {
 	GObject object;
@@ -56,7 +57,7 @@ struct NautilusTrashMonitorClass {
 				      		 gboolean 		 new_state);
 };
 
-GtkType			nautilus_trash_monitor_get_type				(void);
+GType			nautilus_trash_monitor_get_type				(void);
 
 NautilusTrashMonitor   *nautilus_trash_monitor_get 				(void);
 gboolean		nautilus_trash_monitor_is_empty 			(void);
diff --git a/libnautilus-private/nautilus-undo-manager.h b/libnautilus-private/nautilus-undo-manager.h
index 3bea1a5..5ae0efa 100644
--- a/libnautilus-private/nautilus-undo-manager.h
+++ b/libnautilus-private/nautilus-undo-manager.h
@@ -28,16 +28,17 @@
 
 #include <libnautilus-private/nautilus-undo.h>
 
-#define NAUTILUS_TYPE_UNDO_MANAGER \
-	(nautilus_undo_manager_get_type ())
+#define NAUTILUS_TYPE_UNDO_MANAGER nautilus_undo_manager_get_type()
 #define NAUTILUS_UNDO_MANAGER(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_UNDO_MANAGER, NautilusUndoManager))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_UNDO_MANAGER, NautilusUndoManager))
 #define NAUTILUS_UNDO_MANAGER_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_UNDO_MANAGER, NautilusUndoManagerClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_UNDO_MANAGER, NautilusUndoManagerClass))
 #define NAUTILUS_IS_UNDO_MANAGER(obj) \
-        (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_UNDO_MANAGER))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_UNDO_MANAGER))
 #define NAUTILUS_IS_UNDO_MANAGER_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass),	NAUTILUS_TYPE_UNDO_MANAGER))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_UNDO_MANAGER))
+#define NAUTILUS_UNDO_MANAGER_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_UNDO_MANAGER, NautilusUndoManagerClass))
 	
 typedef struct NautilusUndoManagerDetails NautilusUndoManagerDetails;
 
diff --git a/libnautilus-private/nautilus-undo-transaction.h b/libnautilus-private/nautilus-undo-transaction.h
index 26d4074..2f911dc 100644
--- a/libnautilus-private/nautilus-undo-transaction.h
+++ b/libnautilus-private/nautilus-undo-transaction.h
@@ -29,16 +29,17 @@
 
 #include <libnautilus-private/nautilus-undo.h>
 
-#define NAUTILUS_TYPE_UNDO_TRANSACTION \
-	(nautilus_undo_transaction_get_type ())
+#define NAUTILUS_TYPE_UNDO_TRANSACTION nautilus_undo_transaction_get_type()
 #define NAUTILUS_UNDO_TRANSACTION(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_UNDO_TRANSACTION, NautilusUndoTransaction))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_UNDO_TRANSACTION, NautilusUndoTransaction))
 #define NAUTILUS_UNDO_TRANSACTION_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_UNDO_TRANSACTION, NautilusUndoTransactionClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_UNDO_TRANSACTION, NautilusUndoTransactionClass))
 #define NAUTILUS_IS_UNDO_TRANSACTION(obj) \
-        (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_UNDO_TRANSACTION))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_UNDO_TRANSACTION))
 #define NAUTILUS_IS_UNDO_TRANSACTION_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass),	NAUTILUS_TYPE_UNDO_TRANSACTION))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_UNDO_TRANSACTION))
+#define NAUTILUS_UNDO_TRANSACTION_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_UNDO_TRANSACTION, NautilusUndoTransactionClass))
 
 /* The typedef for NautilusUndoTransaction is in nautilus-undo.h
    to avoid circular deps */
diff --git a/libnautilus-private/nautilus-vfs-directory.h b/libnautilus-private/nautilus-vfs-directory.h
index d17561b..fcfb512 100644
--- a/libnautilus-private/nautilus-vfs-directory.h
+++ b/libnautilus-private/nautilus-vfs-directory.h
@@ -28,16 +28,17 @@
 
 #include <libnautilus-private/nautilus-directory.h>
 
-#define NAUTILUS_TYPE_VFS_DIRECTORY \
-	(nautilus_vfs_directory_get_type ())
+#define NAUTILUS_TYPE_VFS_DIRECTORY nautilus_vfs_directory_get_type()
 #define NAUTILUS_VFS_DIRECTORY(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_VFS_DIRECTORY, NautilusVFSDirectory))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_VFS_DIRECTORY, NautilusVFSDirectory))
 #define NAUTILUS_VFS_DIRECTORY_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_VFS_DIRECTORY, NautilusVFSDirectoryClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_VFS_DIRECTORY, NautilusVFSDirectoryClass))
 #define NAUTILUS_IS_VFS_DIRECTORY(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_VFS_DIRECTORY))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_VFS_DIRECTORY))
 #define NAUTILUS_IS_VFS_DIRECTORY_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_VFS_DIRECTORY))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_VFS_DIRECTORY))
+#define NAUTILUS_VFS_DIRECTORY_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_VFS_DIRECTORY, NautilusVFSDirectoryClass))
 
 typedef struct NautilusVFSDirectoryDetails NautilusVFSDirectoryDetails;
 
diff --git a/libnautilus-private/nautilus-vfs-file.h b/libnautilus-private/nautilus-vfs-file.h
index bedbfb9..aac9371 100644
--- a/libnautilus-private/nautilus-vfs-file.h
+++ b/libnautilus-private/nautilus-vfs-file.h
@@ -28,16 +28,17 @@
 
 #include <libnautilus-private/nautilus-file.h>
 
-#define NAUTILUS_TYPE_VFS_FILE \
-	(nautilus_vfs_file_get_type ())
+#define NAUTILUS_TYPE_VFS_FILE nautilus_vfs_file_get_type()
 #define NAUTILUS_VFS_FILE(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_VFS_FILE, NautilusVFSFile))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_VFS_FILE, NautilusVFSFile))
 #define NAUTILUS_VFS_FILE_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_VFS_FILE, NautilusVFSFileClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_VFS_FILE, NautilusVFSFileClass))
 #define NAUTILUS_IS_VFS_FILE(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_VFS_FILE))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_VFS_FILE))
 #define NAUTILUS_IS_VFS_FILE_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_VFS_FILE))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_VFS_FILE))
+#define NAUTILUS_VFS_FILE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_VFS_FILE, NautilusVFSFileClass))
 
 typedef struct NautilusVFSFileDetails NautilusVFSFileDetails;
 
diff --git a/src/file-manager/fm-desktop-icon-view.c b/src/file-manager/fm-desktop-icon-view.c
index 0bbb78d..25b8561 100644
--- a/src/file-manager/fm-desktop-icon-view.c
+++ b/src/file-manager/fm-desktop-icon-view.c
@@ -780,7 +780,6 @@ fm_desktop_icon_view_create (NautilusWindowSlotInfo *slot)
 			     "window-slot", slot,
 			     NULL);
 	g_object_ref (view);
-	gtk_object_sink (GTK_OBJECT (view));
 	return NAUTILUS_VIEW (view);
 }
 
diff --git a/src/file-manager/fm-desktop-icon-view.h b/src/file-manager/fm-desktop-icon-view.h
index 866278d..e14123c 100644
--- a/src/file-manager/fm-desktop-icon-view.h
+++ b/src/file-manager/fm-desktop-icon-view.h
@@ -27,11 +27,17 @@
 
 #include "fm-icon-view.h"
 
-#define FM_TYPE_DESKTOP_ICON_VIEW		(fm_desktop_icon_view_get_type ())
-#define FM_DESKTOP_ICON_VIEW(obj)		(GTK_CHECK_CAST ((obj), FM_TYPE_DESKTOP_ICON_VIEW, FMDesktopIconView))
-#define FM_DESKTOP_ICON_VIEW_CLASS(klass)	(GTK_CHECK_CLASS_CAST ((klass), FM_TYPE_DESKTOP_ICON_VIEW, FMDesktopIconViewClass))
-#define FM_IS_DESKTOP_ICON_VIEW(obj)		(GTK_CHECK_TYPE ((obj), FM_TYPE_DESKTOP_ICON_VIEW))
-#define FM_IS_DESKTOP_ICON_VIEW_CLASS(klass)	(GTK_CHECK_CLASS_TYPE ((klass), FM_TYPE_DESKTOP_ICON_VIEW))
+#define FM_TYPE_DESKTOP_ICON_VIEW fm_desktop_icon_view_get_type()
+#define FM_DESKTOP_ICON_VIEW(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), FM_TYPE_DESKTOP_ICON_VIEW, FMDesktopIconView))
+#define FM_DESKTOP_ICON_VIEW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), FM_TYPE_DESKTOP_ICON_VIEW, FMDesktopIconViewClass))
+#define FM_IS_DESKTOP_ICON_VIEW(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FM_TYPE_DESKTOP_ICON_VIEW))
+#define FM_IS_DESKTOP_ICON_VIEW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), FM_TYPE_DESKTOP_ICON_VIEW))
+#define FM_DESKTOP_ICON_VIEW_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), FM_TYPE_DESKTOP_ICON_VIEW, FMDesktopIconViewClass))
 
 #define FM_DESKTOP_ICON_VIEW_ID "OAFIID:Nautilus_File_Manager_Desktop_Icon_View"
 
diff --git a/src/file-manager/fm-directory-view.c b/src/file-manager/fm-directory-view.c
index 5024283..1bdaf47 100644
--- a/src/file-manager/fm-directory-view.c
+++ b/src/file-manager/fm-directory-view.c
@@ -1170,8 +1170,8 @@ select_pattern (FMDirectoryView *view)
 	label = gtk_label_new_with_mnemonic (_("_Pattern:"));
 	entry = gtk_entry_new ();
 	gtk_entry_set_activates_default (GTK_ENTRY (entry), TRUE);
-	gtk_box_pack_start_defaults (GTK_BOX (box), label);
-	gtk_box_pack_start_defaults (GTK_BOX (box), entry);
+	gtk_box_pack_start (GTK_BOX (box), label, TRUE, TRUE, 0);
+	gtk_box_pack_start (GTK_BOX (box), entry, TRUE, TRUE, 0);
 	gtk_label_set_mnemonic_widget (GTK_LABEL (label), entry);
 	gtk_widget_show_all (box);
 	gtk_container_add (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), box);
@@ -1282,7 +1282,7 @@ action_save_search_as_callback (GtkAction *action,
 		gtk_container_set_border_width (GTK_CONTAINER (table), 5);
 		gtk_table_set_row_spacings (GTK_TABLE (table), 6);
 		gtk_table_set_col_spacings (GTK_TABLE (table), 12);
-		gtk_box_pack_start_defaults (GTK_BOX (GTK_DIALOG (dialog)->vbox), table);
+		gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), table, TRUE, TRUE, 0);
 		gtk_widget_show (table);
 		
 		label = gtk_label_new_with_mnemonic (_("Search _name:"));
diff --git a/src/file-manager/fm-directory-view.h b/src/file-manager/fm-directory-view.h
index 3dcba25..5a8db15 100644
--- a/src/file-manager/fm-directory-view.h
+++ b/src/file-manager/fm-directory-view.h
@@ -42,11 +42,17 @@
 typedef struct FMDirectoryView FMDirectoryView;
 typedef struct FMDirectoryViewClass FMDirectoryViewClass;
 
-#define FM_TYPE_DIRECTORY_VIEW			(fm_directory_view_get_type ())
-#define FM_DIRECTORY_VIEW(obj)			(GTK_CHECK_CAST ((obj), FM_TYPE_DIRECTORY_VIEW, FMDirectoryView))
-#define FM_DIRECTORY_VIEW_CLASS(klass)		(GTK_CHECK_CLASS_CAST ((klass), FM_TYPE_DIRECTORY_VIEW, FMDirectoryViewClass))
-#define FM_IS_DIRECTORY_VIEW(obj)		(GTK_CHECK_TYPE ((obj), FM_TYPE_DIRECTORY_VIEW))
-#define FM_IS_DIRECTORY_VIEW_CLASS(klass)	(GTK_CHECK_CLASS_TYPE ((klass), FM_TYPE_DIRECTORY_VIEW))
+#define FM_TYPE_DIRECTORY_VIEW fm_directory_view_get_type()
+#define FM_DIRECTORY_VIEW(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), FM_TYPE_DIRECTORY_VIEW, FMDirectoryView))
+#define FM_DIRECTORY_VIEW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), FM_TYPE_DIRECTORY_VIEW, FMDirectoryViewClass))
+#define FM_IS_DIRECTORY_VIEW(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FM_TYPE_DIRECTORY_VIEW))
+#define FM_IS_DIRECTORY_VIEW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), FM_TYPE_DIRECTORY_VIEW))
+#define FM_DIRECTORY_VIEW_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), FM_TYPE_DIRECTORY_VIEW, FMDirectoryViewClass))
 
 typedef struct FMDirectoryViewDetails FMDirectoryViewDetails;
 
diff --git a/src/file-manager/fm-icon-container.h b/src/file-manager/fm-icon-container.h
index c2c9729..ab94e9c 100644
--- a/src/file-manager/fm-icon-container.h
+++ b/src/file-manager/fm-icon-container.h
@@ -31,11 +31,17 @@
 typedef struct FMIconContainer FMIconContainer;
 typedef struct FMIconContainerClass FMIconContainerClass;
 
-#define FM_TYPE_ICON_CONTAINER			(fm_icon_container_get_type ())
-#define FM_ICON_CONTAINER(obj)			(GTK_CHECK_CAST ((obj), FM_TYPE_ICON_CONTAINER, FMIconContainer))
-#define FM_ICON_CONTAINER_CLASS(klass)		(GTK_CHECK_CLASS_CAST ((klass), FM_TYPE_ICON_CONTAINER, FMIconContainerClass))
-#define FM_IS_ICON_CONTAINER(obj)			(GTK_CHECK_TYPE ((obj), FM_TYPE_ICON_CONTAINER))
-#define FM_IS_ICON_CONTAINER_CLASS(klass)		(GTK_CHECK_CLASS_TYPE ((klass), FM_TYPE_ICON_CONTAINER))
+#define FM_TYPE_ICON_CONTAINER fm_icon_container_get_type()
+#define FM_ICON_CONTAINER(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), FM_TYPE_ICON_CONTAINER, FMIconContainer))
+#define FM_ICON_CONTAINER_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), FM_TYPE_ICON_CONTAINER, FMIconContainerClass))
+#define FM_IS_ICON_CONTAINER(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FM_TYPE_ICON_CONTAINER))
+#define FM_IS_ICON_CONTAINER_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), FM_TYPE_ICON_CONTAINER))
+#define FM_ICON_CONTAINER_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), FM_TYPE_ICON_CONTAINER, FMIconContainerClass))
 
 typedef struct FMIconContainerDetails FMIconContainerDetails;
 
diff --git a/src/file-manager/fm-icon-view.c b/src/file-manager/fm-icon-view.c
index ee2d99e..55e90d5 100644
--- a/src/file-manager/fm-icon-view.c
+++ b/src/file-manager/fm-icon-view.c
@@ -2993,7 +2993,6 @@ fm_icon_view_create (NautilusWindowSlotInfo *slot)
 			     "compact", FALSE,
 			     NULL);
 	g_object_ref (view);
-	gtk_object_sink (GTK_OBJECT (view));
 	return NAUTILUS_VIEW (view);
 }
 
@@ -3007,7 +3006,6 @@ fm_compact_view_create (NautilusWindowSlotInfo *slot)
 			     "compact", TRUE,
 			     NULL);
 	g_object_ref (view);
-	gtk_object_sink (GTK_OBJECT (view));
 	return NAUTILUS_VIEW (view);
 }
 
diff --git a/src/file-manager/fm-icon-view.h b/src/file-manager/fm-icon-view.h
index 1288cb3..331e296 100644
--- a/src/file-manager/fm-icon-view.h
+++ b/src/file-manager/fm-icon-view.h
@@ -30,11 +30,17 @@
 typedef struct FMIconView FMIconView;
 typedef struct FMIconViewClass FMIconViewClass;
 
-#define FM_TYPE_ICON_VIEW			(fm_icon_view_get_type ())
-#define FM_ICON_VIEW(obj)			(GTK_CHECK_CAST ((obj), FM_TYPE_ICON_VIEW, FMIconView))
-#define FM_ICON_VIEW_CLASS(klass)		(GTK_CHECK_CLASS_CAST ((klass), FM_TYPE_ICON_VIEW, FMIconViewClass))
-#define FM_IS_ICON_VIEW(obj)			(GTK_CHECK_TYPE ((obj), FM_TYPE_ICON_VIEW))
-#define FM_IS_ICON_VIEW_CLASS(klass)		(GTK_CHECK_CLASS_TYPE ((klass), FM_TYPE_ICON_VIEW))
+#define FM_TYPE_ICON_VIEW fm_icon_view_get_type()
+#define FM_ICON_VIEW(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), FM_TYPE_ICON_VIEW, FMIconView))
+#define FM_ICON_VIEW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), FM_TYPE_ICON_VIEW, FMIconViewClass))
+#define FM_IS_ICON_VIEW(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FM_TYPE_ICON_VIEW))
+#define FM_IS_ICON_VIEW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), FM_TYPE_ICON_VIEW))
+#define FM_ICON_VIEW_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), FM_TYPE_ICON_VIEW, FMIconViewClass))
 
 #define FM_ICON_VIEW_ID "OAFIID:Nautilus_File_Manager_Icon_View"
 #define FM_COMPACT_VIEW_ID "OAFIID:Nautilus_File_Manager_Compact_View"
diff --git a/src/file-manager/fm-list-model.h b/src/file-manager/fm-list-model.h
index fd2a762..d6a6b14 100644
--- a/src/file-manager/fm-list-model.h
+++ b/src/file-manager/fm-list-model.h
@@ -31,11 +31,17 @@
 #ifndef FM_LIST_MODEL_H
 #define FM_LIST_MODEL_H
 
-#define FM_TYPE_LIST_MODEL		(fm_list_model_get_type ())
-#define FM_LIST_MODEL(obj)		(GTK_CHECK_CAST ((obj), FM_TYPE_LIST_MODEL, FMListModel))
-#define FM_LIST_MODEL_CLASS(klass)	(GTK_CHECK_CLASS_CAST ((klass), FM_TYPE_LIST_MODEL, FMListModelClass))
-#define FM_IS_LIST_MODEL(obj)		(GTK_CHECK_TYPE ((obj), FM_TYPE_LIST_MODEL))
-#define FM_IS_LIST_MODEL_CLASS(klass)	(GTK_CHECK_CLASS_TYPE ((klass), FM_TYPE_LIST_MODEL))
+#define FM_TYPE_LIST_MODEL fm_list_model_get_type()
+#define FM_LIST_MODEL(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), FM_TYPE_LIST_MODEL, FMListModel))
+#define FM_LIST_MODEL_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), FM_TYPE_LIST_MODEL, FMListModelClass))
+#define FM_IS_LIST_MODEL(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FM_TYPE_LIST_MODEL))
+#define FM_IS_LIST_MODEL_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), FM_TYPE_LIST_MODEL))
+#define FM_LIST_MODEL_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), FM_TYPE_LIST_MODEL, FMListModelClass))
 
 enum {
 	FM_LIST_MODEL_FILE_COLUMN,
diff --git a/src/file-manager/fm-list-view.c b/src/file-manager/fm-list-view.c
index 16cb498..1f39433 100644
--- a/src/file-manager/fm-list-view.c
+++ b/src/file-manager/fm-list-view.c
@@ -1344,7 +1344,7 @@ create_and_set_up_tree_view (FMListView *view)
 
 	/* Don't handle backspace key. It's used to open the parent folder. */
 	binding_set = gtk_binding_set_by_class (GTK_WIDGET_GET_CLASS (view->details->tree_view));
-	gtk_binding_entry_clear (binding_set, GDK_BackSpace, 0);
+	gtk_binding_entry_remove (binding_set, GDK_BackSpace, 0);
 
 	view->details->drag_dest = 
 		nautilus_tree_view_drag_dest_new (view->details->tree_view);
@@ -1440,7 +1440,6 @@ create_and_set_up_tree_view (FMListView *view)
 			
 			view->details->file_name_column = gtk_tree_view_column_new ();
 			g_object_ref (view->details->file_name_column);
-			gtk_object_sink (GTK_OBJECT (view->details->file_name_column));
 			view->details->file_name_column_num = column_num;
 			
 			g_hash_table_insert (view->details->columns,
@@ -1479,7 +1478,6 @@ create_and_set_up_tree_view (FMListView *view)
 									   "text", column_num,
 									   NULL);
 			g_object_ref (column);
-			gtk_object_sink (GTK_OBJECT (column));
 			gtk_tree_view_column_set_sort_column_id (column, column_num);
 			g_hash_table_insert (view->details->columns, 
 					     g_strdup (name), 
@@ -2892,7 +2890,6 @@ fm_list_view_create (NautilusWindowSlotInfo *slot)
 			     "window-slot", slot,
 			     NULL);
 	g_object_ref (view);
-	gtk_object_sink (GTK_OBJECT (view));
 	return NAUTILUS_VIEW (view);
 }
 
diff --git a/src/file-manager/fm-list-view.h b/src/file-manager/fm-list-view.h
index 72dc077..502a668 100644
--- a/src/file-manager/fm-list-view.h
+++ b/src/file-manager/fm-list-view.h
@@ -29,11 +29,17 @@
 
 #include "fm-directory-view.h"
 
-#define FM_TYPE_LIST_VIEW		(fm_list_view_get_type ())
-#define FM_LIST_VIEW(obj)		(GTK_CHECK_CAST ((obj), FM_TYPE_LIST_VIEW, FMListView))
-#define FM_LIST_VIEW_CLASS(klass)	(GTK_CHECK_CLASS_CAST ((klass), FM_TYPE_LIST_VIEW, FMListViewClass))
-#define FM_IS_LIST_VIEW(obj)		(GTK_CHECK_TYPE ((obj), FM_TYPE_LIST_VIEW))
-#define FM_IS_LIST_VIEW_CLASS(klass)	(GTK_CHECK_CLASS_TYPE ((klass), FM_TYPE_LIST_VIEW))
+#define FM_TYPE_LIST_VIEW fm_list_view_get_type()
+#define FM_LIST_VIEW(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), FM_TYPE_LIST_VIEW, FMListView))
+#define FM_LIST_VIEW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), FM_TYPE_LIST_VIEW, FMListViewClass))
+#define FM_IS_LIST_VIEW(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FM_TYPE_LIST_VIEW))
+#define FM_IS_LIST_VIEW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), FM_TYPE_LIST_VIEW))
+#define FM_LIST_VIEW_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), FM_TYPE_LIST_VIEW, FMListViewClass))
 
 #define FM_LIST_VIEW_ID "OAFIID:Nautilus_File_Manager_List_View"
 
diff --git a/src/file-manager/fm-properties-window.c b/src/file-manager/fm-properties-window.c
index fa5bc59..5d9906b 100644
--- a/src/file-manager/fm-properties-window.c
+++ b/src/file-manager/fm-properties-window.c
@@ -4899,8 +4899,8 @@ append_extension_pages (FMPropertiesWindow *window)
 					   "is-extension-page",
 					   page);
 
-			gtk_widget_unref (page_widget);
-			gtk_widget_unref (label);
+			g_object_unref (page_widget);
+			g_object_unref (label);
 
 			g_object_unref (page);
 		}
diff --git a/src/file-manager/fm-properties-window.h b/src/file-manager/fm-properties-window.h
index aca9102..eab10d5 100644
--- a/src/file-manager/fm-properties-window.h
+++ b/src/file-manager/fm-properties-window.h
@@ -31,16 +31,17 @@
 
 typedef struct FMPropertiesWindow FMPropertiesWindow;
 
-#define FM_TYPE_PROPERTIES_WINDOW \
-	(fm_properties_window_get_type ())
+#define FM_TYPE_PROPERTIES_WINDOW fm_properties_window_get_type()
 #define FM_PROPERTIES_WINDOW(obj) \
-	(GTK_CHECK_CAST ((obj), FM_TYPE_PROPERTIES_WINDOW, FMPropertiesWindow))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), FM_TYPE_PROPERTIES_WINDOW, FMPropertiesWindow))
 #define FM_PROPERTIES_WINDOW_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), FM_TYPE_PROPERTIES_WINDOW, FMPropertiesWindowClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), FM_TYPE_PROPERTIES_WINDOW, FMPropertiesWindowClass))
 #define FM_IS_PROPERTIES_WINDOW(obj) \
-	(GTK_CHECK_TYPE ((obj), FM_TYPE_PROPERTIES_WINDOW))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FM_TYPE_PROPERTIES_WINDOW))
 #define FM_IS_PROPERTIES_WINDOW_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), FM_TYPE_PROPERTIES_WINDOW))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), FM_TYPE_PROPERTIES_WINDOW))
+#define FM_PROPERTIES_WINDOW_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), FM_TYPE_PROPERTIES_WINDOW, FMPropertiesWindowClass))
 
 typedef struct FMPropertiesWindowDetails FMPropertiesWindowDetails;
 
diff --git a/src/file-manager/fm-tree-model.h b/src/file-manager/fm-tree-model.h
index 4d4c3e5..909d299 100644
--- a/src/file-manager/fm-tree-model.h
+++ b/src/file-manager/fm-tree-model.h
@@ -32,11 +32,17 @@
 #include <gio/gio.h>
 #include <libnautilus-private/nautilus-file.h>
 
-#define FM_TYPE_TREE_MODEL	    (fm_tree_model_get_type ())
-#define FM_TREE_MODEL(obj)	    (GTK_CHECK_CAST ((obj), FM_TYPE_TREE_MODEL, FMTreeModel))
-#define FM_TREE_MODEL_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), FM_TYPE_TREE_MODEL, FMTreeModelClass))
-#define FM_IS_TREE_MODEL(obj)	    (GTK_CHECK_TYPE ((obj), FM_TYPE_TREE_MODEL))
-#define FM_IS_TREE_MODEL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), FM_TYPE_TREE_MODEL))
+#define FM_TYPE_TREE_MODEL fm_tree_model_get_type()
+#define FM_TREE_MODEL(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), FM_TYPE_TREE_MODEL, FMTreeModel))
+#define FM_TREE_MODEL_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), FM_TYPE_TREE_MODEL, FMTreeModelClass))
+#define FM_IS_TREE_MODEL(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FM_TYPE_TREE_MODEL))
+#define FM_IS_TREE_MODEL_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), FM_TYPE_TREE_MODEL))
+#define FM_TREE_MODEL_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), FM_TYPE_TREE_MODEL, FMTreeModelClass))
 
 enum {
 	FM_TREE_MODEL_DISPLAY_NAME_COLUMN,
diff --git a/src/file-manager/fm-tree-view.c b/src/file-manager/fm-tree-view.c
index 9c3b4d6..989f3c4 100644
--- a/src/file-manager/fm-tree-view.c
+++ b/src/file-manager/fm-tree-view.c
@@ -1707,7 +1707,6 @@ fm_tree_view_create (NautilusSidebarProvider *provider,
 	sidebar = g_object_new (fm_tree_view_get_type (), NULL);
 	fm_tree_view_set_parent_window (sidebar, window);
 	g_object_ref (sidebar);
-	gtk_object_sink (GTK_OBJECT (sidebar));
 
 	return NAUTILUS_SIDEBAR (sidebar);
 }
diff --git a/src/file-manager/fm-tree-view.h b/src/file-manager/fm-tree-view.h
index 34bc8b4..420c4a7 100644
--- a/src/file-manager/fm-tree-view.h
+++ b/src/file-manager/fm-tree-view.h
@@ -31,11 +31,17 @@
 
 #include <gtk/gtk.h>
 
-#define FM_TYPE_TREE_VIEW	           (fm_tree_view_get_type ())
-#define FM_TREE_VIEW(obj)	           (GTK_CHECK_CAST ((obj), FM_TYPE_TREE_VIEW, FMTreeView))
-#define FM_TREE_VIEW_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), FM_TYPE_TREE_VIEW, FMTreeViewClass))
-#define FM_IS_TREE_VIEW(obj)	   (GTK_CHECK_TYPE ((obj), FM_TYPE_TREE_VIEW))
-#define FM_IS_TREE_VIEW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), FM_TYPE_TREE_VIEW))
+#define FM_TYPE_TREE_VIEW fm_tree_view_get_type()
+#define FM_TREE_VIEW(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), FM_TYPE_TREE_VIEW, FMTreeView))
+#define FM_TREE_VIEW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), FM_TYPE_TREE_VIEW, FMTreeViewClass))
+#define FM_IS_TREE_VIEW(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), FM_TYPE_TREE_VIEW))
+#define FM_IS_TREE_VIEW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), FM_TYPE_TREE_VIEW))
+#define FM_TREE_VIEW_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), FM_TYPE_TREE_VIEW, FMTreeViewClass))
 
 #define TREE_SIDEBAR_ID "NautilusTreeSidebar"
 
diff --git a/src/nautilus-application.h b/src/nautilus-application.h
index ed3fd33..4acfb30 100644
--- a/src/nautilus-application.h
+++ b/src/nautilus-application.h
@@ -35,11 +35,17 @@
 
 #define NAUTILUS_DESKTOP_ICON_VIEW_IID	"OAFIID:Nautilus_File_Manager_Desktop_Icon_View"
 
-#define NAUTILUS_TYPE_APPLICATION	     (nautilus_application_get_type ())
-#define NAUTILUS_APPLICATION(obj)	     (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_APPLICATION, NautilusApplication))
-#define NAUTILUS_APPLICATION_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_APPLICATION, NautilusApplicationClass))
-#define NAUTILUS_IS_APPLICATION(obj)	     (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_APPLICATION))
-#define NAUTILUS_IS_APPLICATION_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_APPLICATION))
+#define NAUTILUS_TYPE_APPLICATION nautilus_application_get_type()
+#define NAUTILUS_APPLICATION(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_APPLICATION, NautilusApplication))
+#define NAUTILUS_APPLICATION_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_APPLICATION, NautilusApplicationClass))
+#define NAUTILUS_IS_APPLICATION(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_APPLICATION))
+#define NAUTILUS_IS_APPLICATION_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_APPLICATION))
+#define NAUTILUS_APPLICATION_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_APPLICATION, NautilusApplicationClass))
 
 #ifndef NAUTILUS_WINDOW_DEFINED
 #define NAUTILUS_WINDOW_DEFINED
diff --git a/src/nautilus-bookmark-list.h b/src/nautilus-bookmark-list.h
index 0f2dd0d..5bcb114 100644
--- a/src/nautilus-bookmark-list.h
+++ b/src/nautilus-bookmark-list.h
@@ -34,16 +34,17 @@
 typedef struct NautilusBookmarkList NautilusBookmarkList;
 typedef struct NautilusBookmarkListClass NautilusBookmarkListClass;
 
-#define NAUTILUS_TYPE_BOOKMARK_LIST \
-	(nautilus_bookmark_list_get_type ())
+#define NAUTILUS_TYPE_BOOKMARK_LIST nautilus_bookmark_list_get_type()
 #define NAUTILUS_BOOKMARK_LIST(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_BOOKMARK_LIST, NautilusBookmarkList))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_BOOKMARK_LIST, NautilusBookmarkList))
 #define NAUTILUS_BOOKMARK_LIST_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_BOOKMARK_LIST, NautilusBookmarkListClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_BOOKMARK_LIST, NautilusBookmarkListClass))
 #define NAUTILUS_IS_BOOKMARK_LIST(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_BOOKMARK_LIST))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_BOOKMARK_LIST))
 #define NAUTILUS_IS_BOOKMARK_LIST_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_BOOKMARK_LIST))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_BOOKMARK_LIST))
+#define NAUTILUS_BOOKMARK_LIST_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_BOOKMARK_LIST, NautilusBookmarkListClass))
 
 struct NautilusBookmarkList {
 	GtkObject object;
diff --git a/src/nautilus-desktop-window.h b/src/nautilus-desktop-window.h
index 826ae45..c01e833 100644
--- a/src/nautilus-desktop-window.h
+++ b/src/nautilus-desktop-window.h
@@ -32,11 +32,17 @@
 #include "nautilus-application.h"
 #include "nautilus-spatial-window.h"
 
-#define NAUTILUS_TYPE_DESKTOP_WINDOW            (nautilus_desktop_window_get_type())
-#define NAUTILUS_DESKTOP_WINDOW(object)         (GTK_CHECK_CAST ((object), NAUTILUS_TYPE_DESKTOP_WINDOW, NautilusDesktopWindow))
-#define NAUTILUS_DESKTOP_WINDOW_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_WINDOW, NautilusDesktopWindowClass))
-#define NAUTILUS_IS_DESKTOP_WINDOW(object)      (GTK_CHECK_TYPE ((object), NAUTILUS_TYPE_DESKTOP_WINDOW))
-#define NAUTILUS_IS_DESKTOP_WINDOW_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_WINDOW))
+#define NAUTILUS_TYPE_DESKTOP_WINDOW nautilus_desktop_window_get_type()
+#define NAUTILUS_DESKTOP_WINDOW(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_DESKTOP_WINDOW, NautilusDesktopWindow))
+#define NAUTILUS_DESKTOP_WINDOW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_DESKTOP_WINDOW, NautilusDesktopWindowClass))
+#define NAUTILUS_IS_DESKTOP_WINDOW(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_DESKTOP_WINDOW))
+#define NAUTILUS_IS_DESKTOP_WINDOW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_DESKTOP_WINDOW))
+#define NAUTILUS_DESKTOP_WINDOW_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_DESKTOP_WINDOW, NautilusDesktopWindowClass))
 
 typedef struct NautilusDesktopWindowDetails NautilusDesktopWindowDetails;
 
diff --git a/src/nautilus-emblem-sidebar.c b/src/nautilus-emblem-sidebar.c
index 240a8c1..6049351 100644
--- a/src/nautilus-emblem-sidebar.c
+++ b/src/nautilus-emblem-sidebar.c
@@ -1077,7 +1077,6 @@ nautilus_emblem_sidebar_create (NautilusSidebarProvider *provider,
 	sidebar = g_object_new (nautilus_emblem_sidebar_get_type (), NULL);
 	nautilus_emblem_sidebar_set_parent_window (sidebar, window);
 	g_object_ref (sidebar);
-	gtk_object_sink (GTK_OBJECT (sidebar));
 
 	return NAUTILUS_SIDEBAR (sidebar);
 }
diff --git a/src/nautilus-emblem-sidebar.h b/src/nautilus-emblem-sidebar.h
index 6e4ea46..2ac73dc 100644
--- a/src/nautilus-emblem-sidebar.h
+++ b/src/nautilus-emblem-sidebar.h
@@ -29,16 +29,17 @@
 
 #include <gtk/gtk.h>
 
-#define NAUTILUS_TYPE_EMBLEM_SIDEBAR \
-	(nautilus_emblem_sidebar_get_type ())
+#define NAUTILUS_TYPE_EMBLEM_SIDEBAR nautilus_emblem_sidebar_get_type()
 #define NAUTILUS_EMBLEM_SIDEBAR(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_EMBLEM_SIDEBAR, NautilusEmblemSidebar))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_EMBLEM_SIDEBAR, NautilusEmblemSidebar))
 #define NAUTILUS_EMBLEM_SIDEBAR_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_EMBLEM_SIDEBAR, NautilusEmblemSidebarClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_EMBLEM_SIDEBAR, NautilusEmblemSidebarClass))
 #define NAUTILUS_IS_EMBLEM_SIDEBAR(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_EMBLEM_SIDEBAR))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_EMBLEM_SIDEBAR))
 #define NAUTILUS_IS_EMBLEM_SIDEBAR_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_EMBLEM_SIDEBAR))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_EMBLEM_SIDEBAR))
+#define NAUTILUS_EMBLEM_SIDEBAR_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_EMBLEM_SIDEBAR, NautilusEmblemSidebarClass))
 
 #define NAUTILUS_EMBLEM_SIDEBAR_ID "NautilusEmblemSidebar"
 
diff --git a/src/nautilus-history-sidebar.c b/src/nautilus-history-sidebar.c
index b3a1a9e..f1c8b5f 100644
--- a/src/nautilus-history-sidebar.c
+++ b/src/nautilus-history-sidebar.c
@@ -119,7 +119,7 @@ update_history (NautilusHistorySidebar *sidebar)
 
 	selection = GTK_TREE_SELECTION (gtk_tree_view_get_selection (sidebar->tree_view));
 
-	if (gtk_tree_model_get_iter_root (GTK_TREE_MODEL (store), &iter)) {
+	if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (store), &iter)) {
 		gtk_tree_selection_select_iter (selection, &iter);
 	}
 }
@@ -381,7 +381,6 @@ nautilus_history_sidebar_create (NautilusSidebarProvider *provider,
 	sidebar = g_object_new (nautilus_history_sidebar_get_type (), NULL);
 	nautilus_history_sidebar_set_parent_window (sidebar, window);
 	g_object_ref (sidebar);
-	gtk_object_sink (GTK_OBJECT (sidebar));
 
 	return NAUTILUS_SIDEBAR (sidebar);
 }
diff --git a/src/nautilus-history-sidebar.h b/src/nautilus-history-sidebar.h
index 784bc43..423f7ea 100644
--- a/src/nautilus-history-sidebar.h
+++ b/src/nautilus-history-sidebar.h
@@ -33,8 +33,9 @@
 
 #define NAUTILUS_HISTORY_SIDEBAR_ID    "NautilusHistorySidebar"
 
-#define NAUTILUS_TYPE_HISTORY_SIDEBAR (nautilus_history_sidebar_get_type ())
-#define NAUTILUS_HISTORY_SIDEBAR(obj) (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_HISTORY_SIDEBAR, NautilusHistorySidebar))
+#define NAUTILUS_TYPE_HISTORY_SIDEBAR nautilus_history_sidebar_get_type()
+#define NAUTILUS_HISTORY_SIDEBAR(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_HISTORY_SIDEBAR, NautilusHistorySidebar))
 
 typedef struct {
 	GtkScrolledWindow parent;
diff --git a/src/nautilus-image-properties-page.h b/src/nautilus-image-properties-page.h
index 826b7d3..0430a22 100644
--- a/src/nautilus-image-properties-page.h
+++ b/src/nautilus-image-properties-page.h
@@ -26,11 +26,17 @@
 
 #include <gtk/gtk.h>
 
-#define NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE	     (nautilus_image_properties_page_get_type ())
-#define NAUTILUS_IMAGE_PROPERTIES_PAGE(obj)	     (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE, NautilusImagePropertiesPage))
-#define NAUTILUS_IMAGE_PROPERTIES_PAGE_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE, NautilusImagePropertiesPageClass))
-#define NAUTILUS_IS_IMAGE_PROPERTIES_PAGE(obj)	     (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE))
-#define NAUTILUS_IS_IMAGE_PROPERTIES_PAGE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE))
+#define NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE nautilus_image_properties_page_get_type()
+#define NAUTILUS_IMAGE_PROPERTIES_PAGE(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE, NautilusImagePropertiesPage))
+#define NAUTILUS_IMAGE_PROPERTIES_PAGE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE, NautilusImagePropertiesPageClass))
+#define NAUTILUS_IS_IMAGE_PROPERTIES_PAGE(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE))
+#define NAUTILUS_IS_IMAGE_PROPERTIES_PAGE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE))
+#define NAUTILUS_IMAGE_PROPERTIES_PAGE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_IMAGE_PROPERTIES_PAGE, NautilusImagePropertiesPageClass))
 
 typedef struct NautilusImagePropertiesPageDetails NautilusImagePropertiesPageDetails;
 
diff --git a/src/nautilus-information-panel.c b/src/nautilus-information-panel.c
index f70f977..5ef238e 100644
--- a/src/nautilus-information-panel.c
+++ b/src/nautilus-information-panel.c
@@ -221,8 +221,8 @@ static void
 make_button_box (NautilusInformationPanel *information_panel)
 {
 	information_panel->details->button_box_centerer = GTK_HBOX (gtk_hbox_new (FALSE, 0));
-	gtk_box_pack_start_defaults (GTK_BOX (information_panel->details->container),
-			    	     GTK_WIDGET (information_panel->details->button_box_centerer));
+	gtk_box_pack_start (GTK_BOX (information_panel->details->container),
+			    GTK_WIDGET (information_panel->details->button_box_centerer), TRUE, TRUE, 0);
 
 	information_panel->details->button_box = GTK_VBOX (nautilus_keep_last_vertical_box_new (4));
 	gtk_container_set_border_width (GTK_CONTAINER (information_panel->details->button_box), 8);				
@@ -1142,7 +1142,6 @@ nautilus_information_panel_create (NautilusSidebarProvider *provider,
 	panel = g_object_new (nautilus_information_panel_get_type (), NULL);
 	nautilus_information_panel_set_parent_window (panel, window);
 	g_object_ref (panel);
-	gtk_object_sink (GTK_OBJECT (panel));
 
 	return NAUTILUS_SIDEBAR (panel);
 }
diff --git a/src/nautilus-information-panel.h b/src/nautilus-information-panel.h
index d3385fb..f326bc2 100644
--- a/src/nautilus-information-panel.h
+++ b/src/nautilus-information-panel.h
@@ -30,16 +30,17 @@
 
 #include <eel/eel-background-box.h>
 
-#define NAUTILUS_TYPE_INFORMATION_PANEL \
-	(nautilus_information_panel_get_type ())
+#define NAUTILUS_TYPE_INFORMATION_PANEL nautilus_information_panel_get_type()
 #define NAUTILUS_INFORMATION_PANEL(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_INFORMATION_PANEL, NautilusInformationPanel))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_INFORMATION_PANEL, NautilusInformationPanel))
 #define NAUTILUS_INFORMATION_PANEL_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_INFORMATION_PANEL, NautilusInformationPanelClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_INFORMATION_PANEL, NautilusInformationPanelClass))
 #define NAUTILUS_IS_INFORMATION_PANEL(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_INFORMATION_PANEL))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_INFORMATION_PANEL))
 #define NAUTILUS_IS_INFORMATION_PANEL_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_INFORMATION_PANEL))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_INFORMATION_PANEL))
+#define NAUTILUS_INFORMATION_PANEL_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_INFORMATION_PANEL, NautilusInformationPanelClass))
 
 typedef struct NautilusInformationPanelDetails NautilusInformationPanelDetails;
 
diff --git a/src/nautilus-location-bar.h b/src/nautilus-location-bar.h
index 6197036..bfcd82c 100644
--- a/src/nautilus-location-bar.h
+++ b/src/nautilus-location-bar.h
@@ -34,13 +34,17 @@
 #include "nautilus-navigation-window.h"
 #include <gtk/gtk.h>
 
-#define NAUTILUS_TYPE_LOCATION_BAR (nautilus_location_bar_get_type ())
+#define NAUTILUS_TYPE_LOCATION_BAR nautilus_location_bar_get_type()
 #define NAUTILUS_LOCATION_BAR(obj) \
-	GTK_CHECK_CAST (obj, NAUTILUS_TYPE_LOCATION_BAR, NautilusLocationBar)
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_LOCATION_BAR, NautilusLocationBar))
 #define NAUTILUS_LOCATION_BAR_CLASS(klass) \
-	GTK_CHECK_CLASS_CAST (klass, NAUTILUS_TYPE_LOCATION_BAR, NautilusLocationBarClass)
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_LOCATION_BAR, NautilusLocationBarClass))
 #define NAUTILUS_IS_LOCATION_BAR(obj) \
-	GTK_CHECK_TYPE (obj, NAUTILUS_TYPE_LOCATION_BAR)
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_LOCATION_BAR))
+#define NAUTILUS_IS_LOCATION_BAR_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_LOCATION_BAR))
+#define NAUTILUS_LOCATION_BAR_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_LOCATION_BAR, NautilusLocationBarClass))
 
 typedef struct NautilusLocationBarDetails NautilusLocationBarDetails;
 
diff --git a/src/nautilus-location-entry.h b/src/nautilus-location-entry.h
index 2869e11..ada0cc3 100644
--- a/src/nautilus-location-entry.h
+++ b/src/nautilus-location-entry.h
@@ -29,13 +29,17 @@
 
 #include <libnautilus-private/nautilus-entry.h>
 
-#define NAUTILUS_TYPE_LOCATION_ENTRY (nautilus_location_entry_get_type ())
+#define NAUTILUS_TYPE_LOCATION_ENTRY nautilus_location_entry_get_type()
 #define NAUTILUS_LOCATION_ENTRY(obj) \
-	GTK_CHECK_CAST (obj, NAUTILUS_TYPE_LOCATION_ENTRY, NautilusLocationEntry)
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_LOCATION_ENTRY, NautilusLocationEntry))
 #define NAUTILUS_LOCATION_ENTRY_CLASS(klass) \
-	GTK_CHECK_CLASS_CAST (klass, NAUTILUS_TYPE_LOCATION_ENTRY, NautilusLocationEntryClass)
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_LOCATION_ENTRY, NautilusLocationEntryClass))
 #define NAUTILUS_IS_LOCATION_ENTRY(obj) \
-	GTK_CHECK_TYPE (obj, NAUTILUS_TYPE_LOCATION_ENTRY)
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_LOCATION_ENTRY))
+#define NAUTILUS_IS_LOCATION_ENTRY_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_LOCATION_ENTRY))
+#define NAUTILUS_LOCATION_ENTRY_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_LOCATION_ENTRY, NautilusLocationEntryClass))
 
 typedef struct NautilusLocationEntryDetails NautilusLocationEntryDetails;
 
diff --git a/src/nautilus-navigation-bar.h b/src/nautilus-navigation-bar.h
index 78e276f..5a23bcc 100644
--- a/src/nautilus-navigation-bar.h
+++ b/src/nautilus-navigation-bar.h
@@ -31,13 +31,17 @@
 
 #include <gtk/gtk.h>
 
-#define NAUTILUS_TYPE_NAVIGATION_BAR (nautilus_navigation_bar_get_type ())
+#define NAUTILUS_TYPE_NAVIGATION_BAR nautilus_navigation_bar_get_type()
 #define NAUTILUS_NAVIGATION_BAR(obj) \
-	GTK_CHECK_CAST (obj, NAUTILUS_TYPE_NAVIGATION_BAR, NautilusNavigationBar)
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_NAVIGATION_BAR, NautilusNavigationBar))
 #define NAUTILUS_NAVIGATION_BAR_CLASS(klass) \
-	GTK_CHECK_CLASS_CAST (klass, NAUTILUS_TYPE_NAVIGATION_BAR, NautilusNavigationBarClass)
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_NAVIGATION_BAR, NautilusNavigationBarClass))
 #define NAUTILUS_IS_NAVIGATION_BAR(obj) \
-	GTK_CHECK_TYPE (obj, NAUTILUS_TYPE_NAVIGATION_BAR)
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_NAVIGATION_BAR))
+#define NAUTILUS_IS_NAVIGATION_BAR_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_NAVIGATION_BAR))
+#define NAUTILUS_NAVIGATION_BAR_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_NAVIGATION_BAR, NautilusNavigationBarClass))
 
 typedef struct {
 	GtkHBox parent;
diff --git a/src/nautilus-navigation-window.h b/src/nautilus-navigation-window.h
index 33b44b3..e34a978 100644
--- a/src/nautilus-navigation-window.h
+++ b/src/nautilus-navigation-window.h
@@ -39,11 +39,17 @@
 #include "nautilus-side-pane.h"
 #include "nautilus-window.h"
 
-#define NAUTILUS_TYPE_NAVIGATION_WINDOW              (nautilus_navigation_window_get_type())
-#define NAUTILUS_NAVIGATION_WINDOW(obj)	          (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_NAVIGATION_WINDOW, NautilusNavigationWindow))
-#define NAUTILUS_NAVIGATION_WINDOW_CLASS(klass)      (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_NAVIGATION_WINDOW, NautilusNavigationWindowClass))
-#define NAUTILUS_IS_NAVIGATION_WINDOW(obj)	          (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_NAVIGATION_WINDOW))
-#define NAUTILUS_IS_NAVIGATION_WINDOW_CLASS(klass)   (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_NAVIGATION_WINDOW))
+#define NAUTILUS_TYPE_NAVIGATION_WINDOW nautilus_navigation_window_get_type()
+#define NAUTILUS_NAVIGATION_WINDOW(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_NAVIGATION_WINDOW, NautilusNavigationWindow))
+#define NAUTILUS_NAVIGATION_WINDOW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_NAVIGATION_WINDOW, NautilusNavigationWindowClass))
+#define NAUTILUS_IS_NAVIGATION_WINDOW(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_NAVIGATION_WINDOW))
+#define NAUTILUS_IS_NAVIGATION_WINDOW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_NAVIGATION_WINDOW))
+#define NAUTILUS_NAVIGATION_WINDOW_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_NAVIGATION_WINDOW, NautilusNavigationWindowClass))
 
 typedef struct _NautilusNavigationWindow        NautilusNavigationWindow;
 typedef struct _NautilusNavigationWindowClass   NautilusNavigationWindowClass;
diff --git a/src/nautilus-notes-viewer.c b/src/nautilus-notes-viewer.c
index 1356789..c2b98a2 100644
--- a/src/nautilus-notes-viewer.c
+++ b/src/nautilus-notes-viewer.c
@@ -449,7 +449,6 @@ nautilus_notes_viewer_create_sidebar (NautilusSidebarProvider *provider,
 	sidebar = g_object_new (nautilus_notes_viewer_get_type (), NULL);
 	nautilus_notes_viewer_set_parent_window (sidebar, window);
 	g_object_ref (sidebar);
-	gtk_object_sink (GTK_OBJECT (sidebar));
 
 	return NAUTILUS_SIDEBAR (sidebar);
 }
diff --git a/src/nautilus-notes-viewer.h b/src/nautilus-notes-viewer.h
index baa9872..a650c7d 100644
--- a/src/nautilus-notes-viewer.h
+++ b/src/nautilus-notes-viewer.h
@@ -32,8 +32,9 @@
 
 #define NAUTILUS_NOTES_SIDEBAR_ID    "NautilusNotesSidebar"
 
-#define NAUTILUS_TYPE_NOTES_VIEWER (nautilus_notes_viewer_get_type ())
-#define NAUTILUS_NOTES_VIEWER(obj) (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_NOTES_VIEWER, NautilusNotesViewer))
+#define NAUTILUS_TYPE_NOTES_VIEWER nautilus_notes_viewer_get_type()
+#define NAUTILUS_NOTES_VIEWER(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_NOTES_VIEWER, NautilusNotesViewer))
 
 typedef struct _NautilusNotesViewerDetails NautilusNotesViewerDetails;
 
diff --git a/src/nautilus-places-sidebar.c b/src/nautilus-places-sidebar.c
index 77d74ec..76353c8 100644
--- a/src/nautilus-places-sidebar.c
+++ b/src/nautilus-places-sidebar.c
@@ -54,10 +54,6 @@
 
 #define EJECT_BUTTON_XPAD 5
 
-#define NAUTILUS_PLACES_SIDEBAR_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_PLACES_SIDEBAR, NautilusPlacesSidebarClass))
-#define NAUTILUS_IS_PLACES_SIDEBAR(obj)         (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_PLACES_SIDEBAR))
-#define NAUTILUS_IS_PLACES_SIDEBAR_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_PLACES_SIDEBAR))
-
 typedef struct {
 	GtkScrolledWindow  parent;
 	GtkTreeView        *tree_view;
@@ -2478,7 +2474,6 @@ nautilus_places_sidebar_create (NautilusSidebarProvider *provider,
 	sidebar = g_object_new (nautilus_places_sidebar_get_type (), NULL);
 	nautilus_places_sidebar_set_parent_window (sidebar, window);
 	g_object_ref (sidebar);
-	gtk_object_sink (GTK_OBJECT (sidebar));
 
 	return NAUTILUS_SIDEBAR (sidebar);
 }
diff --git a/src/nautilus-places-sidebar.h b/src/nautilus-places-sidebar.h
index 6019acb..5f6b855 100644
--- a/src/nautilus-places-sidebar.h
+++ b/src/nautilus-places-sidebar.h
@@ -30,8 +30,18 @@
 
 #define NAUTILUS_PLACES_SIDEBAR_ID    "NautilusPlacesSidebar"
 
-#define NAUTILUS_TYPE_PLACES_SIDEBAR (nautilus_places_sidebar_get_type ())
-#define NAUTILUS_PLACES_SIDEBAR(obj) (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_PLACES_SIDEBAR, NautilusPlacesSidebar))
+#define NAUTILUS_TYPE_PLACES_SIDEBAR nautilus_places_sidebar_get_type()
+#define NAUTILUS_PLACES_SIDEBAR(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_PLACES_SIDEBAR, NautilusPlacesSidebar))
+#define NAUTILUS_PLACES_SIDEBAR_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_PLACES_SIDEBAR, NautilusPlacesSidebarClass))
+#define NAUTILUS_IS_PLACES_SIDEBAR(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_PLACES_SIDEBAR))
+#define NAUTILUS_IS_PLACES_SIDEBAR_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_PLACES_SIDEBAR))
+#define NAUTILUS_PLACES_SIDEBAR_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_PLACES_SIDEBAR, NautilusPlacesSidebarClass))
+
 
 GType nautilus_places_sidebar_get_type (void);
 void nautilus_places_sidebar_register (void);
diff --git a/src/nautilus-property-browser.h b/src/nautilus-property-browser.h
index a6e2ea6..d151272 100644
--- a/src/nautilus-property-browser.h
+++ b/src/nautilus-property-browser.h
@@ -37,16 +37,17 @@
 typedef struct NautilusPropertyBrowser NautilusPropertyBrowser;
 typedef struct NautilusPropertyBrowserClass  NautilusPropertyBrowserClass;
 
-#define NAUTILUS_TYPE_PROPERTY_BROWSER \
-	(nautilus_property_browser_get_type ())
+#define NAUTILUS_TYPE_PROPERTY_BROWSER nautilus_property_browser_get_type()
 #define NAUTILUS_PROPERTY_BROWSER(obj) \
-	(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_PROPERTY_BROWSER, NautilusPropertyBrowser))
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_PROPERTY_BROWSER, NautilusPropertyBrowser))
 #define NAUTILUS_PROPERTY_BROWSER_CLASS(klass) \
-	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_PROPERTY_BROWSER, NautilusPropertyBrowserClass))
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_PROPERTY_BROWSER, NautilusPropertyBrowserClass))
 #define NAUTILUS_IS_PROPERTY_BROWSER(obj) \
-	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_PROPERTY_BROWSER))
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_PROPERTY_BROWSER))
 #define NAUTILUS_IS_PROPERTY_BROWSER_CLASS(klass) \
-	(GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_PROPERTY_BROWSER))
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_PROPERTY_BROWSER))
+#define NAUTILUS_PROPERTY_BROWSER_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_PROPERTY_BROWSER, NautilusPropertyBrowserClass))
 
 typedef struct NautilusPropertyBrowserDetails NautilusPropertyBrowserDetails;
 
diff --git a/src/nautilus-query-editor.h b/src/nautilus-query-editor.h
index 4118991..de06b87 100644
--- a/src/nautilus-query-editor.h
+++ b/src/nautilus-query-editor.h
@@ -29,10 +29,17 @@
 #include <libnautilus-private/nautilus-window-info.h>
 #include <nautilus-search-bar.h>
 
-#define NAUTILUS_TYPE_QUERY_EDITOR (nautilus_query_editor_get_type ())
-#define NAUTILUS_QUERY_EDITOR(obj) GTK_CHECK_CAST (obj, NAUTILUS_TYPE_QUERY_EDITOR, NautilusQueryEditor)
-#define NAUTILUS_QUERY_EDITOR_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, NAUTILUS_TYPE_QUERY_EDITOR, NautilusQueryEditorClass)
-#define NAUTILUS_IS_QUERY_EDITOR(obj) GTK_CHECK_TYPE (obj, NAUTILUS_TYPE_QUERY_EDITOR)
+#define NAUTILUS_TYPE_QUERY_EDITOR nautilus_query_editor_get_type()
+#define NAUTILUS_QUERY_EDITOR(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_QUERY_EDITOR, NautilusQueryEditor))
+#define NAUTILUS_QUERY_EDITOR_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_QUERY_EDITOR, NautilusQueryEditorClass))
+#define NAUTILUS_IS_QUERY_EDITOR(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_QUERY_EDITOR))
+#define NAUTILUS_IS_QUERY_EDITOR_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_QUERY_EDITOR))
+#define NAUTILUS_QUERY_EDITOR_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_QUERY_EDITOR, NautilusQueryEditorClass))
 
 typedef struct NautilusQueryEditorDetails NautilusQueryEditorDetails;
 
diff --git a/src/nautilus-search-bar.c b/src/nautilus-search-bar.c
index f6aa227..d5cd90b 100644
--- a/src/nautilus-search-bar.c
+++ b/src/nautilus-search-bar.c
@@ -156,7 +156,7 @@ nautilus_search_bar_borrow_entry (NautilusSearchBar *bar)
 	bar->details->entry_borrowed = TRUE;
 
 	binding_set = gtk_binding_set_by_class (G_OBJECT_GET_CLASS (bar));
-	gtk_binding_entry_clear	(binding_set, GDK_Escape, 0);
+	gtk_binding_entry_remove (binding_set, GDK_Escape, 0);
 	return bar->details->entry;
 }
 
diff --git a/src/nautilus-search-bar.h b/src/nautilus-search-bar.h
index 81d1171..8b24fba 100644
--- a/src/nautilus-search-bar.h
+++ b/src/nautilus-search-bar.h
@@ -27,13 +27,17 @@
 #include <gtk/gtk.h>
 #include <libnautilus-private/nautilus-query.h>
 
-#define NAUTILUS_TYPE_SEARCH_BAR (nautilus_search_bar_get_type ())
+#define NAUTILUS_TYPE_SEARCH_BAR nautilus_search_bar_get_type()
 #define NAUTILUS_SEARCH_BAR(obj) \
-	GTK_CHECK_CAST (obj, NAUTILUS_TYPE_SEARCH_BAR, NautilusSearchBar)
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_SEARCH_BAR, NautilusSearchBar))
 #define NAUTILUS_SEARCH_BAR_CLASS(klass) \
-	GTK_CHECK_CLASS_CAST (klass, NAUTILUS_TYPE_SEARCH_BAR, NautilusSearchBarClass)
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SEARCH_BAR, NautilusSearchBarClass))
 #define NAUTILUS_IS_SEARCH_BAR(obj) \
-	GTK_CHECK_TYPE (obj, NAUTILUS_TYPE_SEARCH_BAR)
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_SEARCH_BAR))
+#define NAUTILUS_IS_SEARCH_BAR_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SEARCH_BAR))
+#define NAUTILUS_SEARCH_BAR_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_SEARCH_BAR, NautilusSearchBarClass))
 
 typedef struct NautilusSearchBarDetails NautilusSearchBarDetails;
 
diff --git a/src/nautilus-side-pane.h b/src/nautilus-side-pane.h
index fc01ca7..deda665 100644
--- a/src/nautilus-side-pane.h
+++ b/src/nautilus-side-pane.h
@@ -28,11 +28,17 @@
 
 G_BEGIN_DECLS
 
-#define NAUTILUS_TYPE_SIDE_PANE                (nautilus_side_pane_get_type ())
-#define NAUTILUS_SIDE_PANE(obj)                (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_SIDE_PANE, NautilusSidePane))
-#define NAUTILUS_SIDE_PANE_CLASS(klass)        (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SIDE_PANE, NautilusSidePaneClass))
-#define NAUTILUS_IS_SIDE_PANE(obj)             (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_SIDE_PANE))
-#define NAUTILUS_IS_SIDE_PANE_CLASS(klass)     (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SIDE_PANE))
+#define NAUTILUS_TYPE_SIDE_PANE nautilus_side_pane_get_type()
+#define NAUTILUS_SIDE_PANE(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_SIDE_PANE, NautilusSidePane))
+#define NAUTILUS_SIDE_PANE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SIDE_PANE, NautilusSidePaneClass))
+#define NAUTILUS_IS_SIDE_PANE(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_SIDE_PANE))
+#define NAUTILUS_IS_SIDE_PANE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SIDE_PANE))
+#define NAUTILUS_SIDE_PANE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_SIDE_PANE, NautilusSidePaneClass))
 
 typedef struct _NautilusSidePaneDetails NautilusSidePaneDetails;
 
diff --git a/src/nautilus-sidebar-title.h b/src/nautilus-sidebar-title.h
index 030cb64..25e3cdc 100644
--- a/src/nautilus-sidebar-title.h
+++ b/src/nautilus-sidebar-title.h
@@ -33,11 +33,17 @@
 #include <eel/eel-background.h>
 #include <libnautilus-private/nautilus-file.h>
 
-#define NAUTILUS_TYPE_SIDEBAR_TITLE	       (nautilus_sidebar_title_get_type ())
-#define NAUTILUS_SIDEBAR_TITLE(obj)	       (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_SIDEBAR_TITLE, NautilusSidebarTitle))
-#define NAUTILUS_SIDEBAR_TITLE_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SIDEBAR_TITLE, NautilusSidebarTitleClass))
-#define NAUTILUS_IS_SIDEBAR_TITLE(obj)	       (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_SIDEBAR_TITLE))
-#define NAUTILUS_IS_SIDEBAR_TITLE_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SIDEBAR_TITLE))
+#define NAUTILUS_TYPE_SIDEBAR_TITLE nautilus_sidebar_title_get_type()
+#define NAUTILUS_SIDEBAR_TITLE(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_SIDEBAR_TITLE, NautilusSidebarTitle))
+#define NAUTILUS_SIDEBAR_TITLE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SIDEBAR_TITLE, NautilusSidebarTitleClass))
+#define NAUTILUS_IS_SIDEBAR_TITLE(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_SIDEBAR_TITLE))
+#define NAUTILUS_IS_SIDEBAR_TITLE_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SIDEBAR_TITLE))
+#define NAUTILUS_SIDEBAR_TITLE_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_SIDEBAR_TITLE, NautilusSidebarTitleClass))
 
 typedef struct NautilusSidebarTitleDetails NautilusSidebarTitleDetails;
 
diff --git a/src/nautilus-spatial-window.c b/src/nautilus-spatial-window.c
index eabe3fd..1833d0b 100644
--- a/src/nautilus-spatial-window.c
+++ b/src/nautilus-spatial-window.c
@@ -720,7 +720,7 @@ location_button_clicked_callback (GtkWidget             *widget,
 	g_main_loop_run (loop);
 	gtk_grab_remove (popup);
 	g_main_loop_unref (loop);
- 	gtk_object_sink (GTK_OBJECT (popup));
+	g_object_ref_sink (popup);
 }
 
 static int
diff --git a/src/nautilus-spatial-window.h b/src/nautilus-spatial-window.h
index b0cf4dd..d99b7c0 100644
--- a/src/nautilus-spatial-window.h
+++ b/src/nautilus-spatial-window.h
@@ -30,11 +30,17 @@
 #include "nautilus-window.h"
 #include "nautilus-window-private.h"
 
-#define NAUTILUS_TYPE_SPATIAL_WINDOW              (nautilus_spatial_window_get_type())
-#define NAUTILUS_SPATIAL_WINDOW(obj)	          (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_SPATIAL_WINDOW, NautilusSpatialWindow))
-#define NAUTILUS_SPATIAL_WINDOW_CLASS(klass)      (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SPATIAL_WINDOW, NautilusSpatialWindowClass))
-#define NAUTILUS_IS_SPATIAL_WINDOW(obj)	          (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_SPATIAL_WINDOW))
-#define NAUTILUS_IS_SPATIAL_WINDOW_CLASS(klass)   (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SPATIAL_WINDOW))
+#define NAUTILUS_TYPE_SPATIAL_WINDOW nautilus_spatial_window_get_type()
+#define NAUTILUS_SPATIAL_WINDOW(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_SPATIAL_WINDOW, NautilusSpatialWindow))
+#define NAUTILUS_SPATIAL_WINDOW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_SPATIAL_WINDOW, NautilusSpatialWindowClass))
+#define NAUTILUS_IS_SPATIAL_WINDOW(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_SPATIAL_WINDOW))
+#define NAUTILUS_IS_SPATIAL_WINDOW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_SPATIAL_WINDOW))
+#define NAUTILUS_SPATIAL_WINDOW_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_SPATIAL_WINDOW, NautilusSpatialWindowClass))
 
 #ifndef NAUTILUS_SPATIAL_WINDOW_DEFINED
 #define NAUTILUS_SPATIAL_WINDOW_DEFINED
diff --git a/src/nautilus-throbber.h b/src/nautilus-throbber.h
index 22def6d..ab45d2e 100644
--- a/src/nautilus-throbber.h
+++ b/src/nautilus-throbber.h
@@ -32,11 +32,17 @@
 
 G_BEGIN_DECLS
 
-#define NAUTILUS_TYPE_THROBBER		(nautilus_throbber_get_type ())
-#define NAUTILUS_THROBBER(obj)		(GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_THROBBER, NautilusThrobber))
-#define NAUTILUS_THROBBER_CLASS(klass)	(GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_THROBBER, NautilusThrobberClass))
-#define NAUTILUS_IS_THROBBER(obj)	(GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_THROBBER))
-#define NAUTILUS_IS_THROBBER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_THROBBER))
+#define NAUTILUS_TYPE_THROBBER nautilus_throbber_get_type()
+#define NAUTILUS_THROBBER(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_THROBBER, NautilusThrobber))
+#define NAUTILUS_THROBBER_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_THROBBER, NautilusThrobberClass))
+#define NAUTILUS_IS_THROBBER(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_THROBBER))
+#define NAUTILUS_IS_THROBBER_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_THROBBER))
+#define NAUTILUS_THROBBER_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_THROBBER, NautilusThrobberClass))
 
 typedef EphySpinner NautilusThrobber;
 typedef EphySpinnerClass NautilusThrobberClass;
diff --git a/src/nautilus-window.h b/src/nautilus-window.h
index 6d6f90a..2c5e27e 100644
--- a/src/nautilus-window.h
+++ b/src/nautilus-window.h
@@ -38,12 +38,17 @@
 #include "nautilus-information-panel.h"
 #include "nautilus-side-pane.h"
 
-#define NAUTILUS_TYPE_WINDOW              (nautilus_window_get_type())
-#define NAUTILUS_WINDOW(obj)	          (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_WINDOW, NautilusWindow))
-#define NAUTILUS_WINDOW_CLASS(klass)      (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_WINDOW, NautilusWindowClass))
-#define NAUTILUS_WINDOW_GET_CLASS(obj)    (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_WINDOW, NautilusWindowClass))
-#define NAUTILUS_IS_WINDOW(obj)	          (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_WINDOW))
-#define NAUTILUS_IS_WINDOW_CLASS(klass)   (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_WINDOW))
+#define NAUTILUS_TYPE_WINDOW nautilus_window_get_type()
+#define NAUTILUS_WINDOW(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_WINDOW, NautilusWindow))
+#define NAUTILUS_WINDOW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_WINDOW, NautilusWindowClass))
+#define NAUTILUS_IS_WINDOW(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_WINDOW))
+#define NAUTILUS_IS_WINDOW_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_WINDOW))
+#define NAUTILUS_WINDOW_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_WINDOW, NautilusWindowClass))
 
 #ifndef NAUTILUS_WINDOW_DEFINED
 #define NAUTILUS_WINDOW_DEFINED
diff --git a/src/nautilus-zoom-control.h b/src/nautilus-zoom-control.h
index 623d46a..6545725 100644
--- a/src/nautilus-zoom-control.h
+++ b/src/nautilus-zoom-control.h
@@ -31,11 +31,17 @@
 #include <gtk/gtk.h>
 #include <libnautilus-private/nautilus-icon-info.h> /* For NautilusZoomLevel */
 
-#define NAUTILUS_TYPE_ZOOM_CONTROL	      (nautilus_zoom_control_get_type ())
-#define NAUTILUS_ZOOM_CONTROL(obj)	      (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_ZOOM_CONTROL, NautilusZoomControl))
-#define NAUTILUS_ZOOM_CONTROL_CLASS(klass)    (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_ZOOM_CONTROL, NautilusZoomControlClass))
-#define NAUTILUS_IS_ZOOM_CONTROL(obj)	      (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_ZOOM_CONTROL))
-#define NAUTILUS_IS_ZOOM_CONTROL_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_ZOOM_CONTROL))
+#define NAUTILUS_TYPE_ZOOM_CONTROL nautilus_zoom_control_get_type()
+#define NAUTILUS_ZOOM_CONTROL(obj) \
+  (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_ZOOM_CONTROL, NautilusZoomControl))
+#define NAUTILUS_ZOOM_CONTROL_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_ZOOM_CONTROL, NautilusZoomControlClass))
+#define NAUTILUS_IS_ZOOM_CONTROL(obj) \
+  (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_ZOOM_CONTROL))
+#define NAUTILUS_IS_ZOOM_CONTROL_CLASS(klass) \
+  (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_ZOOM_CONTROL))
+#define NAUTILUS_ZOOM_CONTROL_GET_CLASS(obj) \
+  (G_TYPE_INSTANCE_GET_CLASS ((obj), NAUTILUS_TYPE_ZOOM_CONTROL, NautilusZoomControlClass))
 
 typedef struct NautilusZoomControl NautilusZoomControl;
 typedef struct NautilusZoomControlClass NautilusZoomControlClass;
diff --git a/test/test-nautilus-directory-async.c b/test/test-nautilus-directory-async.c
index 49098c4..6fb749b 100644
--- a/test/test-nautilus-directory-async.c
+++ b/test/test-nautilus-directory-async.c
@@ -69,7 +69,7 @@ done_loading (NautilusDirectory *directory)
 	g_print ("done loading\n");
 
 	if (i == 0) {
-		gtk_timeout_add (5000, (GSourceFunc)force_reload, directory);
+		g_timeout_add (5000, (GSourceFunc)force_reload, directory);
 		i++;
 	} else {
 	}
diff --git a/test/test.c b/test/test.c
index 7d1d578..8390960 100644
--- a/test/test.c
+++ b/test/test.c
@@ -9,7 +9,6 @@ test_init (int *argc,
 	   char ***argv)
 {
 	gtk_init (argc, argv);
-	gdk_rgb_init ();
 
 	eel_make_warnings_and_criticals_stop_in_debugger ();
 }
