diff -up gnome-control-center-2.23.4/capplets/appearance/appearance-themes.c.notification-theme gnome-control-center-2.23.4/capplets/appearance/appearance-themes.c --- gnome-control-center-2.23.4/capplets/appearance/appearance-themes.c.notification-theme 2008-07-14 17:10:31.000000000 -0400 +++ gnome-control-center-2.23.4/capplets/appearance/appearance-themes.c 2008-07-14 17:13:40.000000000 -0400 @@ -249,6 +249,8 @@ theme_load_from_gconf (GConfClient *clie if (theme->icon_theme_name == NULL) theme->icon_theme_name = g_strdup ("gnome"); + theme->notification_theme_name = gconf_client_get_string (client, NOTIFICATION_THEME_KEY, NULL); + theme->cursor_theme_name = gconf_client_get_string (client, CURSOR_THEME_KEY, NULL); #ifdef HAVE_XCURSOR theme->cursor_size = gconf_client_get_int (client, CURSOR_SIZE_KEY, NULL); diff -up gnome-control-center-2.23.4/capplets/appearance/theme-save.c.notification-theme gnome-control-center-2.23.4/capplets/appearance/theme-save.c --- gnome-control-center-2.23.4/capplets/appearance/theme-save.c.notification-theme 2008-05-08 08:31:29.000000000 -0400 +++ gnome-control-center-2.23.4/capplets/appearance/theme-save.c 2008-07-14 17:03:58.000000000 -0400 @@ -234,6 +234,12 @@ write_theme_to_disk (GnomeThemeMetaInfo g_free (str); } + if (theme_info->notification_theme_name) { + str = g_strdup_printf ("NotificationTheme=%s\n", theme_info->notification_theme_name); + g_output_stream_write (output, str, strlen (str), NULL, NULL); + g_free (str); + } + if (save_background) { client = gconf_client_get_default (); current_background = gconf_client_get_string (client, BACKGROUND_KEY, NULL); diff -up gnome-control-center-2.23.4/capplets/appearance/theme-util.h.notification-theme gnome-control-center-2.23.4/capplets/appearance/theme-util.h --- gnome-control-center-2.23.4/capplets/appearance/theme-util.h.notification-theme 2008-07-14 17:12:31.000000000 -0400 +++ gnome-control-center-2.23.4/capplets/appearance/theme-util.h 2008-07-14 17:12:48.000000000 -0400 @@ -21,6 +21,7 @@ #define GTK_THEME_KEY "/desktop/gnome/interface/gtk_theme" #define METACITY_THEME_KEY "/apps/metacity/general/theme" #define ICON_THEME_KEY "/desktop/gnome/interface/icon_theme" +#define NOTIFICATION_THEME_KEY "/apps/notification-daemon/theme" #define COLOR_SCHEME_KEY "/desktop/gnome/interface/gtk_color_scheme" #define LOCKDOWN_KEY "/desktop/gnome/lockdown/disable_theme_settings" #define BACKGROUND_KEY "/desktop/gnome/background/picture_filename" diff -up gnome-control-center-2.23.4/capplets/common/gnome-theme-apply.c.notification-theme gnome-control-center-2.23.4/capplets/common/gnome-theme-apply.c --- gnome-control-center-2.23.4/capplets/common/gnome-theme-apply.c.notification-theme 2008-05-08 08:31:40.000000000 -0400 +++ gnome-control-center-2.23.4/capplets/common/gnome-theme-apply.c 2008-07-14 17:03:58.000000000 -0400 @@ -34,6 +34,7 @@ #define CURSOR_FONT_KEY "/desktop/gnome/peripherals/mouse/cursor_font" #define CURSOR_THEME_KEY "/desktop/gnome/peripherals/mouse/cursor_theme" #define CURSOR_SIZE_KEY "/desktop/gnome/peripherals/mouse/cursor_size" +#define NOTIFICATION_THEME_KEY "/apps/notification-daemon/theme" #define compare(x,y) (!x && y) || (x && !y) || (x && y && strcmp (x, y)) @@ -42,6 +43,7 @@ gnome_meta_theme_set (GnomeThemeMetaInfo { GConfClient *client; gchar *old_key; + gchar *new_key; gint old_key_int; GnomeWindowManager *window_manager; GnomeWMSettings wm_settings; @@ -98,6 +100,17 @@ gnome_meta_theme_set (GnomeThemeMetaInfo } g_free (old_key); + /* set the notification theme */ + old_key = gconf_client_get_string (client, NOTIFICATION_THEME_KEY, NULL); + new_key = meta_theme_info->notification_theme_name; + if (new_key == NULL) + new_key = "standard"; + if (compare (old_key, new_key)) + { + gconf_client_set_string (client, NOTIFICATION_THEME_KEY, new_key, NULL); + } + g_free (old_key); + /* Set the cursor theme key */ #ifdef HAVE_XCURSOR old_key = gconf_client_get_string (client, CURSOR_THEME_KEY, NULL); diff -up gnome-control-center-2.23.4/capplets/common/gnome-theme-info.c.notification-theme gnome-control-center-2.23.4/capplets/common/gnome-theme-info.c --- gnome-control-center-2.23.4/capplets/common/gnome-theme-info.c.notification-theme 2008-06-16 06:52:24.000000000 -0400 +++ gnome-control-center-2.23.4/capplets/common/gnome-theme-info.c 2008-07-14 17:03:58.000000000 -0400 @@ -25,6 +25,7 @@ #define METACITY_THEME_KEY "X-GNOME-Metatheme/MetacityTheme" #define ICON_THEME_KEY "X-GNOME-Metatheme/IconTheme" #define CURSOR_THEME_KEY "X-GNOME-Metatheme/CursorTheme" +#define NOTIFICATION_THEME_KEY "X-GNOME-Metatheme/NotificationTheme" #define CURSOR_SIZE_KEY "X-GNOME-Metatheme/CursorSize" #define SOUND_THEME_KEY "X-GNOME-Metatheme/SoundTheme" #define APPLICATION_FONT_KEY "X-GNOME-Metatheme/ApplicationFont" @@ -335,6 +336,10 @@ gnome_theme_read_meta_theme (GFile *meta } meta_theme_info->icon_theme_name = g_strdup (str); + str = gnome_desktop_item_get_string (meta_theme_ditem, NOTIFICATION_THEME_KEY); + if (str != NULL) + meta_theme_info->notification_theme_name = g_strdup (str); + str = gnome_desktop_item_get_string (meta_theme_ditem, CURSOR_THEME_KEY); if (str != NULL) { meta_theme_info->cursor_theme_name = g_strdup (str); @@ -1593,6 +1598,7 @@ gnome_theme_meta_info_free (GnomeThemeMe g_free (meta_theme_info->gtk_color_scheme); g_free (meta_theme_info->icon_theme_name); g_free (meta_theme_info->metacity_theme_name); + g_free (meta_theme_info->notification_theme_name); g_free (meta_theme_info); } @@ -1694,6 +1700,9 @@ gnome_theme_meta_info_compare (GnomeThem cmp = safe_strcmp (a->icon_theme_name, b->icon_theme_name); if (cmp != 0) return cmp; + cmp = safe_strcmp (a->notification_theme_name, b->notification_theme_name); + if (cmp != 0) return cmp; + cmp = safe_strcmp (a->sound_theme_name, b->sound_theme_name); if (cmp != 0) return cmp; diff -up gnome-control-center-2.23.4/capplets/common/gnome-theme-info.h.notification-theme gnome-control-center-2.23.4/capplets/common/gnome-theme-info.h --- gnome-control-center-2.23.4/capplets/common/gnome-theme-info.h.notification-theme 2008-05-08 08:31:40.000000000 -0400 +++ gnome-control-center-2.23.4/capplets/common/gnome-theme-info.h 2008-07-14 17:03:58.000000000 -0400 @@ -100,6 +100,7 @@ struct _GnomeThemeMetaInfo gchar *gtk_color_scheme; gchar *metacity_theme_name; gchar *icon_theme_name; + gchar *notification_theme_name; gchar *sound_theme_name; gchar *cursor_theme_name; guint cursor_size;