Index: configure.in
===================================================================
RCS file: /cvs/gnome/goobox/configure.in,v
retrieving revision 1.54
diff -u -p -r1.54 configure.in
--- configure.in	24 Jan 2006 04:19:26 -0000	1.54
+++ configure.in	24 Feb 2006 19:55:47 -0000
@@ -26,7 +26,7 @@ LIBBONOBO_REQUIRED=2.6.0
 GNOME_VFS_REQUIRED=2.6.0
 LIBGLADE_REQUIRED=2.4.0
 GSTREAMER_REQUIRED=0.8.11
-LIBNOTIFY_REQUIRED=0.2.1
+LIBNOTIFY_REQUIRED=0.3.2
 
 AC_SUBST(GLIB_REQUIRED)
 AC_SUBST(GTK_REQUIRED)
Index: src/goo-window.c
===================================================================
RCS file: /cvs/gnome/goobox/src/goo-window.c,v
retrieving revision 1.52
diff -u -p -r1.52 goo-window.c
--- src/goo-window.c	18 Nov 2005 20:24:55 -0000	1.52
+++ src/goo-window.c	24 Feb 2006 19:55:49 -0000
@@ -1374,12 +1374,14 @@ player_start_cb (GooPlayer       *player
 				int        w, h;
 				gdk_window_get_origin (win, &x, &y);
 				gdk_window_get_geometry (win, NULL, NULL, &w, &h, NULL);
-				y += h;
+				y += (h / 2);
 				x += (w / 2);
 			}
 			system_notify (priv->current_song->title,
 				       info->str,
-				       x, y);
+				       x,
+				       y,
+				       priv->tray_icon);
 
 			g_string_free (info, TRUE);
 			priv->notify_action = FALSE;
Index: src/main.c
===================================================================
RCS file: /cvs/gnome/goobox/src/main.c,v
retrieving revision 1.15
diff -u -p -r1.15 main.c
--- src/main.c	5 Jan 2006 16:01:12 -0000	1.15
+++ src/main.c	24 Feb 2006 19:55:49 -0000
@@ -47,7 +47,7 @@
 
 #ifdef HAVE_LIBNOTIFY
 #include <libnotify/notify.h>
-static NotifyHandle *notify_h = NULL;
+static NotifyNotification *notify_n = NULL;
 #endif /* HAVE_LIBNOTIFY */
 
 GtkWindow *main_window = NULL;
@@ -554,33 +554,24 @@ void 
 system_notify (const char *title,
 	       const char *msg,
 	       int         x,
-	       int         y)
+	       int         y,
+	       GtkWidget *widget)
 {
 #ifdef HAVE_LIBNOTIFY
 	if(!notify_is_initted())
 		return;
 
-	NotifyIcon  *icon = notify_icon_new_from_uri("goobox");
-	NotifyHints *hints = NULL;
+	notify_n = notify_notification_new (title, msg, "goobox", widget);
+	notify_notification_set_urgency (notify_n, NOTIFY_URGENCY_NORMAL);
+	notify_notification_set_timeout (notify_n, NOTIFY_EXPIRES_DEFAULT);
 
 	if ((x >= 0) && (y >= 0)) {
-		hints = notify_hints_new ();
-		notify_hints_set_int (hints, "x", x);
-		notify_hints_set_int (hints, "y", y);
+		notify_notification_set_hint_int32 (notify_n, "x", x);
+		notify_notification_set_hint_int32 (notify_n, "y", y);
 	}
-
-	notify_h = notify_send_notification (notify_h,
-					     "device",
-					     NOTIFY_URGENCY_NORMAL,
-					     title,
-					     msg,
-					     icon,
-					     TRUE, 0, 
-					     hints, // no hints
-					     NULL, // no user data
-					     0);
 	
-	if (icon != NULL)
-		notify_icon_destroy (icon);
+	notify_notification_show (notify_n, NULL);
+	g_object_unref (G_OBJECT (notify_n));
+	
 #endif /* HAVE_LIBNOTIFY */
 }
Index: src/main.h
===================================================================
RCS file: /cvs/gnome/goobox/src/main.h,v
retrieving revision 1.6
diff -u -p -r1.6 main.h
--- src/main.h	18 Nov 2005 20:24:55 -0000	1.6
+++ src/main.h	24 Feb 2006 19:55:49 -0000
@@ -32,6 +32,7 @@ extern int HideShow;
 void system_notify (const char *title,
 		    const char *msg,
 		    int         x,
-		    int         y);
+		    int         y,
+		    GtkWidget *widget);
 
 #endif /* MAIN_H */
