From c19d3053f6458227fd8cf8238497ced2cab6c139 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Sun, 17 Jun 2007 21:26:18 +0000 Subject: 2.19.4 --- .cvsignore | 2 +- gnome-panel-xdg-user-dirs.patch | 240 ---------------------------------------- gnome-panel.spec | 3 - sources | 2 +- 4 files changed, 2 insertions(+), 245 deletions(-) delete mode 100644 gnome-panel-xdg-user-dirs.patch diff --git a/.cvsignore b/.cvsignore index 5542111..4f454ac 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -gnome-panel-2.19.3.tar.bz2 +gnome-panel-2.19.4.tar.bz2 diff --git a/gnome-panel-xdg-user-dirs.patch b/gnome-panel-xdg-user-dirs.patch deleted file mode 100644 index cb8eefe..0000000 --- a/gnome-panel-xdg-user-dirs.patch +++ /dev/null @@ -1,240 +0,0 @@ -Index: gnome-panel/menu.c -=================================================================== ---- gnome-panel/menu.c (revision 10283) -+++ gnome-panel/menu.c (working copy) -@@ -617,6 +617,91 @@ add_app_to_panel (GtkWidget *item, - gmenu_tree_entry_get_desktop_file_path (entry)); - } - -+static char * -+lookup_desktop_dir (void) -+{ -+ FILE *file; -+ char *config_file; -+ char buffer[512]; -+ char *user_dir; -+ char *p, *d; -+ int len; -+ int relative; -+ -+ config_file = g_build_filename (g_get_user_config_dir (), "user-dirs.dirs", NULL); -+ file = fopen (config_file, "r"); -+ free (config_file); -+ if (file == NULL) -+ goto error; -+ -+ user_dir = NULL; -+ while (fgets (buffer, sizeof (buffer), file)) -+ { -+ /* Remove newline at end */ -+ len = strlen (buffer); -+ if (len > 0 && buffer[len-1] == '\n') -+ buffer[len-1] = 0; -+ -+ p = buffer; -+ while (*p == ' ' || *p == '\t') -+ p++; -+ -+ if (!g_str_has_prefix (p, "XDG_DESKTOP_DIR")) -+ continue; -+ p += strlen ("XDG_DESKTOP_DIR"); -+ -+ while (*p == ' ' || *p == '\t') -+ p++; -+ -+ if (*p != '=') -+ continue; -+ p++; -+ -+ while (*p == ' ' || *p == '\t') -+ p++; -+ -+ if (*p != '"') -+ continue; -+ p++; -+ -+ relative = 0; -+ if (strncmp (p, "$HOME/", 6) == 0) -+ { -+ p += 6; -+ relative = 1; -+ } -+ else if (*p != '/') -+ continue; -+ -+ if (relative) -+ { -+ user_dir = g_malloc (strlen (g_get_home_dir()) + 1 + strlen (p) + 1); -+ strcpy (user_dir, g_get_home_dir ()); -+ strcat (user_dir, "/"); -+ } -+ else -+ { -+ user_dir = g_malloc (strlen (p) + 1); -+ *user_dir = 0; -+ } -+ -+ d = user_dir + strlen (user_dir); -+ while (*p && *p != '"') -+ { -+ if ((*p == '\\') && (*(p+1) != 0)) -+ p++; -+ *d++ = *p++; -+ } -+ *d = 0; -+ } -+ fclose (file); -+ -+ if (user_dir) -+ return user_dir; -+ -+ error: -+ return g_build_filename (g_get_home_dir (), "Desktop", NULL); -+} - - static void - add_app_to_desktop (GtkWidget *item, -@@ -640,7 +725,7 @@ add_app_to_desktop (GtkWidget *item - if (desktop_is_home_dir ()) { - target_dir = g_build_filename (g_get_home_dir (), NULL); - } else { -- target_dir = g_build_filename (g_get_home_dir (), "Desktop", NULL); -+ target_dir = lookup_desktop_dir (); - } - - target_uri = panel_make_unique_desktop_uri (target_dir, source_uri); -Index: gnome-panel/panel-menu-items.c -=================================================================== ---- gnome-panel/panel-menu-items.c (revision 10283) -+++ gnome-panel/panel-menu-items.c (working copy) -@@ -119,7 +119,104 @@ activate_uri (GtkWidget *menuitem, - } - g_free (url); - } -- -+ -+static char * -+lookup_desktop_dir (void) -+{ -+ FILE *file; -+ char *config_file; -+ char buffer[512]; -+ char *user_dir; -+ char *p, *d; -+ int len; -+ int relative; -+ -+ config_file = g_build_filename (g_get_user_config_dir (), "user-dirs.dirs", NULL); -+ file = fopen (config_file, "r"); -+ free (config_file); -+ if (file == NULL) -+ goto error; -+ -+ user_dir = NULL; -+ while (fgets (buffer, sizeof (buffer), file)) -+ { -+ /* Remove newline at end */ -+ len = strlen (buffer); -+ if (len > 0 && buffer[len-1] == '\n') -+ buffer[len-1] = 0; -+ -+ p = buffer; -+ while (*p == ' ' || *p == '\t') -+ p++; -+ -+ if (!g_str_has_prefix (p, "XDG_DESKTOP_DIR")) -+ continue; -+ p += strlen ("XDG_DESKTOP_DIR"); -+ -+ while (*p == ' ' || *p == '\t') -+ p++; -+ -+ if (*p != '=') -+ continue; -+ p++; -+ -+ while (*p == ' ' || *p == '\t') -+ p++; -+ -+ if (*p != '"') -+ continue; -+ p++; -+ -+ relative = 0; -+ if (strncmp (p, "$HOME/", 6) == 0) -+ { -+ p += 6; -+ relative = 1; -+ } -+ else if (*p != '/') -+ continue; -+ -+ if (relative) -+ { -+ user_dir = g_malloc (strlen (g_get_home_dir()) + 1 + strlen (p) + 1); -+ strcpy (user_dir, g_get_home_dir ()); -+ strcat (user_dir, "/"); -+ } -+ else -+ { -+ user_dir = g_malloc (strlen (p) + 1); -+ *user_dir = 0; -+ } -+ -+ d = user_dir + strlen (user_dir); -+ while (*p && *p != '"') -+ { -+ if ((*p == '\\') && (*(p+1) != 0)) -+ p++; -+ *d++ = *p++; -+ } -+ *d = 0; -+ } -+ fclose (file); -+ -+ if (user_dir) -+ return user_dir; -+ -+ error: -+ return g_build_filename (g_get_home_dir (), "Desktop", NULL); -+} -+ -+ -+static void -+activate_desktop_uri (GtkWidget *menuitem) -+{ -+ char *path; -+ -+ path = lookup_desktop_dir (); -+ activate_uri (menuitem, path); -+ g_free (path); -+} -+ - static void - panel_menu_items_append_from_desktop (GtkWidget *menu, - char *path, -@@ -584,11 +681,6 @@ panel_place_menu_item_create_menu (Panel - if (!gconf_client_get_bool (panel_gconf_get_client (), - DESKTOP_IS_HOME_DIR_KEY, - NULL)) { -- char *uri; -- -- uri = gnome_vfs_make_uri_from_input_with_dirs ("Desktop", -- GNOME_VFS_MAKE_URI_DIR_HOMEDIR); -- - panel_menu_items_append_place_item ( - "gnome-fs-desktop", - /* Translators: Desktop is used here as in -@@ -598,10 +690,8 @@ panel_place_menu_item_create_menu (Panel - Q_("Desktop Folder|Desktop"), - _("Open the contents of your desktop in a folder"), - places_menu, -- G_CALLBACK (activate_uri), -- uri); -- -- g_free (uri); -+ G_CALLBACK (activate_desktop_uri), -+ NULL); - } - - panel_place_menu_item_append_gtk_bookmarks (places_menu); diff --git a/gnome-panel.spec b/gnome-panel.spec index 1b1c5b4..65dbaf0 100644 --- a/gnome-panel.spec +++ b/gnome-panel.spec @@ -92,8 +92,6 @@ Patch9: gnome-panel-2.13.91-ignore-unknown-options.patch Patch12: gnome-panel-2.14.2-xio-error.patch Patch13: gnome-panel-2.19.2-move-suspend-to-menu.patch Patch15: gnome-panel-2.16.0-compiz-support.patch -# http://bugzilla.gnome.org/show_bug.cgi?id=395416 -Patch17: gnome-panel-xdg-user-dirs.patch # http://bugzilla.gnome.org/show_bug.cgi?id=424545 Patch18: gnome-panel-2.18.0-hide-menu-if-root.patch @@ -132,7 +130,6 @@ Panel Applets using the libpanel-applet library. %patch12 -p1 -b .xio-error %patch13 -p1 -b .move-suspend-to-menu %patch15 -p0 -b .compiz-support -%patch17 -p0 -b .xdg-user-dirs %patch18 -p1 -b .hide-lock-menu-if-root %patch20 -p1 -b .fix-name-too-long-error diff --git a/sources b/sources index 65375e0..2016157 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -05364128b48723a413ab5bd41b69da59 gnome-panel-2.19.3.tar.bz2 +2d401c18ffa0ee3308a0a687da5713ec gnome-panel-2.19.4.tar.bz2 -- cgit