diff --git a/capplets/appearance/ChangeLog b/capplets/appearance/ChangeLog index 9b3ab57b1..51e85e879 100644 --- a/capplets/appearance/ChangeLog +++ b/capplets/appearance/ChangeLog @@ -1,3 +1,9 @@ +2007-11-18 Jens Granseuer + + * appearance-desktop.c: (desktop_init): add shortcut for + /usr/share/backgrounds to background file chooser and also consider it + when setting the initial directory (bug #497807) + 2007-11-11 Jens Granseuer * appearance-style.c: (changed_on_disk_cb): diff --git a/capplets/appearance/appearance-desktop.c b/capplets/appearance/appearance-desktop.c index c0b0c58ae..648d6a8ce 100644 --- a/capplets/appearance/appearance-desktop.c +++ b/capplets/appearance/appearance-desktop.c @@ -944,6 +944,7 @@ desktop_init (AppearanceData *data, GtkCellRenderer *cr; GtkFileFilter *filter; const gchar *pictures; + const gchar *start_dir; g_object_set (gtk_settings_get_default (), "gtk-tooltip-timeout", 500, NULL); @@ -1077,12 +1078,22 @@ desktop_init (AppearanceData *data, gtk_file_chooser_set_select_multiple (data->wp_filesel, TRUE); gtk_file_chooser_set_use_preview_label (data->wp_filesel, FALSE); + start_dir = g_get_home_dir (); + + if (g_file_test ("/usr/share/backgrounds", G_FILE_TEST_IS_DIR)) { + gtk_file_chooser_add_shortcut_folder (data->wp_filesel, + "/usr/share/backgrounds", NULL); + start_dir = "/usr/share/backgrounds"; + } + pictures = g_get_user_special_dir (G_USER_DIRECTORY_PICTURES); if (pictures != NULL && g_file_test (pictures, G_FILE_TEST_IS_DIR)) { gtk_file_chooser_add_shortcut_folder (data->wp_filesel, pictures, NULL); - gtk_file_chooser_set_current_folder (data->wp_filesel, pictures); + start_dir = pictures; } + gtk_file_chooser_set_current_folder (data->wp_filesel, start_dir); + filter = gtk_file_filter_new (); gtk_file_filter_add_pixbuf_formats (filter); gtk_file_filter_set_name (filter, _("Images"));