? cdplayer.schemas
? inlinepixbufs.h
? docs/C/cdplayer-C.omf.out
? docs/de/cdplayer-de.omf.out
? docs/es/cdplayer-es.omf.out
? docs/fr/cdplayer-fr.omf.out
? docs/it/cdplayer-it.omf.out
? docs/ja/cdplayer-ja.omf.out
? docs/ko/cdplayer-ko.omf.out
? docs/sv/cdplayer-sv.omf.out
? docs/zh_CN/cdplayer-zh_CN.omf.out
? docs/zh_TW/cdplayer-zh_TW.omf.out
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/gnome-applets/cdplayer/ChangeLog,v
retrieving revision 1.78
diff -u -r1.78 ChangeLog
--- ChangeLog	16 Jan 2004 14:13:58 -0000	1.78
+++ ChangeLog	18 Jan 2004 09:27:58 -0000
@@ -1,3 +1,10 @@
+2004-10-18  Michael Terry  <mterry@fastmail.fm>
+
+	* cdplayer.c, cdplayer.h: Use /apps/gnome-cd/device as
+	default cdrom device instead of our own home-brewed gconf key.  Fixes
+	bug 93620.
+	* Makefile.am: Remove references to now-unused schema file.
+
 2004-01-16  Archana Shah <archana.shah@wipro.com>
 
 	* cdplayer.h: Added a member in the structure CDPlayerData for
Index: Makefile.am
===================================================================
RCS file: /cvs/gnome/gnome-applets/cdplayer/Makefile.am,v
retrieving revision 1.59
diff -u -r1.59 Makefile.am
--- Makefile.am	13 Jan 2004 02:27:31 -0000	1.59
+++ Makefile.am	18 Jan 2004 09:27:59 -0000
@@ -48,11 +48,6 @@
 
 @INTLTOOL_SERVER_RULE@
 
-schemasdir   = @GCONF_SCHEMA_FILE_DIR@
-schemas_in_files = cdplayer.schemas.in
-schemas_DATA = $(schemas_in_files:.schemas.in=.schemas)
-
-@INTLTOOL_SCHEMAS_RULE@
 uidir = $(datadir)/gnome-2.0/ui
 ui_DATA = GNOME_CDPlayerApplet.xml
 
@@ -89,9 +84,5 @@
 reader-solaris.c \
 writer-solaris.c \
 GNOME_CDPlayerApplet.server.in.in \
-$(schemas_in_files)	\
 $(ui_DATA) \
 $(IMAGES)
-
-install-data-local:
-	GCONF_CONFIG_SOURCE=$(GCONF_SCHEMA_CONFIG_SOURCE) $(GCONFTOOL) --makefile-install-rule $(srcdir)/$(schemas_DATA);
Index: cdplayer.c
===================================================================
RCS file: /cvs/gnome/gnome-applets/cdplayer/cdplayer.c,v
retrieving revision 1.111
diff -u -r1.111 cdplayer.c
--- cdplayer.c	16 Jan 2004 14:13:58 -0000	1.111
+++ cdplayer.c	18 Jan 2004 09:28:01 -0000
@@ -52,6 +52,8 @@
 #define CDPLAYER_NEXT           "media-next"
 #define CDPLAYER_EJECT          "media-eject"
 
+#define GCONF_DEVICE_KEY        "/apps/gnome-cd/device"
+
 /* Function prototypes */
 static gboolean cdplayer_applet_factory (PanelApplet *applet, const gchar *iid, gpointer data);
 static gboolean applet_fill (PanelApplet *applet);
@@ -156,6 +158,7 @@
     cdplayer_init_stock_icons ();
       
     cd = g_new0(CDPlayerData, 1);
+    cd->gconf_client = gconf_client_get_default ();
     cd->panel.applet = GTK_WIDGET (applet);
 
     cd->about_dialog = NULL;
@@ -263,41 +266,29 @@
     gtk_widget_show (dialog);
 }
 
-static gboolean
-key_writable (PanelApplet *applet, const char *key)
-{
-	gboolean writable;
-	char *fullkey;
-	static GConfClient *client = NULL;
-	if (client == NULL)
-		client = gconf_client_get_default ();
-
-	fullkey = panel_applet_gconf_get_full_key (applet, key);
-
-	writable = gconf_client_key_is_writable (client, fullkey, NULL);
-
-	g_free (fullkey);
-
-	return writable;
-}
-
 static void
 cdplayer_load_config(CDPlayerData *cd)
 {
+    GConfClient *gconf_client;
+
+    gconf_client = gconf_client_get_default ();
+
     g_free(cd->devpath);
-    cd->devpath = panel_applet_gconf_get_string(PANEL_APPLET(cd->panel.applet), "device_path", NULL);
+    cd->devpath = gconf_client_get_string(gconf_client, GCONF_DEVICE_KEY, NULL);
     if (!cd->devpath || !strcmp(cd->devpath, "none"))
     {
         g_free(cd->devpath);
         cd->devpath = g_strdup(DEV_PATH);
     }
+
+    g_object_unref (gconf_client);
 }
 
 static void
 cdplayer_save_config(CDPlayerData *cd)
 {
-    if (key_writable (PANEL_APPLET (cd->panel.applet), "device_path"))
-        panel_applet_gconf_set_string(PANEL_APPLET(cd->panel.applet), "device_path", cd->devpath, NULL);
+    if (gconf_client_key_is_writable (cd->gconf_client, GCONF_DEVICE_KEY, NULL))
+        gconf_client_set_string (cd->gconf_client, GCONF_DEVICE_KEY, cd->devpath, NULL);
 }
 
 static void
@@ -339,6 +330,8 @@
     if (cd->prefs_dialog)
       gtk_widget_destroy (cd->prefs_dialog);
 
+    g_object_unref (cd->gconf_client);
+
     cd->devpath = NULL;
     g_free(cd);
 }
@@ -535,7 +528,7 @@
     g_object_set_data (G_OBJECT (button), "entry", entry);
     gtk_widget_show (button);
 
-    if ( ! key_writable (PANEL_APPLET (cd->panel.applet), "device_path")) {
+    if ( ! gconf_client_key_is_writable (cd->gconf_client, GCONF_DEVICE_KEY, NULL)) {
 	    gtk_widget_set_sensitive (label, FALSE);
 	    gtk_widget_set_sensitive (entry, FALSE);
 	    gtk_widget_set_sensitive (button, FALSE);
Index: cdplayer.h
===================================================================
RCS file: /cvs/gnome/gnome-applets/cdplayer/cdplayer.h,v
retrieving revision 1.12
diff -u -r1.12 cdplayer.h
--- cdplayer.h	16 Jan 2004 14:13:58 -0000	1.12
+++ cdplayer.h	18 Jan 2004 09:28:02 -0000
@@ -21,6 +21,7 @@
 
 #include <glib.h>
 #include <gtk/gtk.h>
+#include <gconf/gconf-client.h>
 #include <panel-applet.h>
 #include "cdrom-interface.h"
 
@@ -45,6 +46,7 @@
     GtkWidget *about_dialog;
     GtkWidget *play_image, *pause_image, *current_image;
     GtkWidget *prefs_dialog;
+    GConfClient *gconf_client;
     struct
     {
         GtkWidget *applet;
