2003-08-02 Glynn Foster <[email protected]>
authorgman
Sat, 02 Aug 2003 11:10:01 +0000
changeset 922 4b8cda960509
parent 921 26020d05e68a
child 923 1d1a7b732387
2003-08-02 Glynn Foster <[email protected]> * gnome-vfs.spec: Bump version, create new extras:/// URI. Man, this is evil stuff. * patches/gnome-panel-03-menu-changes.diff: Add Extras into the menu. Lovely. * patches/gnome-vfs-01-no-menu-preferences.diff: Make p1 patch. * patches/gnome-vfs-02-favorites.diff: Make p1 patch. * patches/gnome-vfs-25-extras-menu.diff: Evil extras:/// patch.
ChangeLog
gnome-vfs.spec
patches/gnome-panel-03-menu-changes.diff
patches/gnome-vfs-01-no-menu-preferences.diff
patches/gnome-vfs-02-favorites.diff
patches/gnome-vfs-25-extras-menu.diff
--- a/ChangeLog	Fri Aug 01 17:32:21 2003 +0000
+++ b/ChangeLog	Sat Aug 02 11:10:01 2003 +0000
@@ -1,3 +1,15 @@
+2003-08-02  Glynn Foster  <[email protected]>
+
+	* gnome-vfs.spec: Bump version, create new extras:///
+	URI. Man, this is evil stuff.
+	* patches/gnome-panel-03-menu-changes.diff: Add Extras 
+	into the menu. Lovely.
+	* patches/gnome-vfs-01-no-menu-preferences.diff: Make 
+	p1 patch.
+	* patches/gnome-vfs-02-favorites.diff: Make p1 patch.
+	* patches/gnome-vfs-25-extras-menu.diff: Evil extras:///
+	patch.
+
 2003-08-01  Glynn Foster  <[email protected]>
 
 	* gnome-pilot.spec: Add menu categorization patch.
--- a/gnome-vfs.spec	Fri Aug 01 17:32:21 2003 +0000
+++ b/gnome-vfs.spec	Sat Aug 02 11:10:01 2003 +0000
@@ -2,7 +2,7 @@
 License:      LGPL
 Group:        System/Libraries/GNOME
 Version:      2.2.5
-Release:      1
+Release:      2
 Distribution: Mercury
 Vendor:       Sun Microsystems, Inc.
 Summary:      Virtual File System Library for GNOME
@@ -30,6 +30,7 @@
 Patch21:      gnome-vfs-22-quick-start-uri.diff
 Patch22:      gnome-vfs-23-vfolder-permissions.diff
 Patch23:      gnome-vfs-24-system-settings-vfolder.diff
+Patch24:      gnome-vfs-25-extras-menu.diff
 
 URL:          http://www.gnome.org/
 BuildRoot:    %{_tmppath}/%{name}-%{version}-build
@@ -73,8 +74,8 @@
 
 %prep
 %setup -q
-%patch0
-%patch1
+%patch0 -p1
+%patch1 -p1
 %patch4 -p1
 %patch5 -p1
 %patch6 -p1
@@ -96,6 +97,7 @@
 %patch21 -p1
 %patch22 -p1
 %patch23 -p1
+%patch24 -p1
 
 %build
 libtoolize --force
@@ -154,6 +156,8 @@
 %{_datadir}/gtk-doc/html/gnome-vfs-2.0
 
 %changelog
+* Fri Aug 01 2003 - [email protected]
+- New extras:///. Woo.
 * Wed Jul 30 2003 - [email protected]
 - New tarball. Bump version, reset release.
 * Fri Jul 25 2003 - [email protected]
--- a/patches/gnome-panel-03-menu-changes.diff	Fri Aug 01 17:32:21 2003 +0000
+++ b/patches/gnome-panel-03-menu-changes.diff	Sat Aug 02 11:10:01 2003 +0000
@@ -1,7 +1,7 @@
-diff -urNp ../gnome-panel-2.3.4.1.old/gnome-panel/menu-util.c ./gnome-panel/menu-util.c
---- ../gnome-panel-2.3.4.1.old/gnome-panel/menu-util.c	2003-07-24 14:05:32.000000000 +0100
-+++ ./gnome-panel/menu-util.c	2003-07-24 14:24:16.000000000 +0100
-@@ -184,16 +184,7 @@ panel_position_applet_menu (GtkMenu   *m
+diff -urN ../gnome-panel-2.3.4.1/gnome-panel/menu-util.c gnome-panel/menu-util.c
+--- ../gnome-panel-2.3.4.1/gnome-panel/menu-util.c	2003-07-24 03:14:33.000000000 -0700
++++ gnome-panel/menu-util.c	2003-08-01 11:57:36.000000000 -0700
+@@ -184,16 +184,7 @@
  int
  get_default_menu_flags (void)
  {
@@ -19,10 +19,81 @@
  }
  
  gboolean
-diff -urNp ../gnome-panel-2.3.4.1.old/gnome-panel/menu.c ./gnome-panel/menu.c
---- ../gnome-panel-2.3.4.1.old/gnome-panel/menu.c	2003-07-24 14:05:32.000000000 +0100
-+++ ./gnome-panel/menu.c	2003-07-24 14:45:29.000000000 +0100
-@@ -2851,11 +2851,6 @@ create_add_launcher_menu (GtkWidget *men
+diff -urN ../gnome-panel-2.3.4.1/gnome-panel/panel-menu-bar.c gnome-panel/panel-menu-bar.c
+--- ../gnome-panel-2.3.4.1/gnome-panel/panel-menu-bar.c	2003-07-24 03:10:10.000000000 -0700
++++ gnome-panel/panel-menu-bar.c	2003-08-01 11:57:36.000000000 -0700
+@@ -39,7 +39,7 @@
+ #include "panel-globals.h"
+ #include "panel-profile.h"
+ 
+-#define MENU_FLAGS (MAIN_MENU_SYSTEM | MAIN_MENU_DISTRIBUTION_SUB)
++#define MENU_FLAGS (MAIN_MENU_SYSTEM) 
+ 
+ enum {
+ 	PROP_0,
+@@ -121,32 +121,18 @@
+ 	item = gtk_separator_menu_item_new ();
+ 	gtk_menu_shell_append (GTK_MENU_SHELL (menubar->priv->actions_menu), item);
+ 
++	panel_recent_append_documents_menu (menubar->priv->actions_menu);
++
+ 	if (panel_is_program_in_path  ("gnome-search-tool"))
+ 		panel_menu_bar_append_action_item (
+ 			menubar,
+ 			menubar->priv->actions_menu,
+-			_("Search for Files..."),
++			_("Find Files..."),
+ 			PANEL_STOCK_SEARCHTOOL,
+ 			_("Find files, folders, and documents on your computer"),
+ 			"ACTION:search:NEW",
+ 			G_CALLBACK (panel_action_search));
+ 
+-	panel_recent_append_documents_menu (menubar->priv->actions_menu);
+-
+-	if (panel_is_program_in_path ("gnome-panel-screenshot")) {
+-		item = gtk_separator_menu_item_new ();
+-		gtk_menu_shell_append (GTK_MENU_SHELL (menubar->priv->actions_menu), item);
+-
+-		panel_menu_bar_append_action_item (
+-			menubar,
+-			menubar->priv->actions_menu,
+-			_("Take Screenshot..."),
+-			PANEL_STOCK_SCREENSHOT,
+-			_("Take a screenshot of your desktop"),
+-			"ACTION:screenshot:NEW",
+-			G_CALLBACK (panel_action_screenshot));
+-	}
+-
+ 	item = gtk_separator_menu_item_new ();
+ 	gtk_menu_shell_append (GTK_MENU_SHELL (menubar->priv->actions_menu), item);
+ 
+diff -urN ../gnome-panel-2.3.4.1/gnome-panel/panel-stock-icons.c gnome-panel/panel-stock-icons.c
+--- ../gnome-panel-2.3.4.1/gnome-panel/panel-stock-icons.c	2003-07-21 05:28:31.000000000 -0700
++++ gnome-panel/panel-stock-icons.c	2003-08-01 11:57:36.000000000 -0700
+@@ -87,6 +87,8 @@
+ 	{ PANEL_STOCK_DRAWER,              "panel-drawer" },
+ 	{ PANEL_STOCK_APPLETS,             "gnome-applets" },
+ 	{ PANEL_STOCK_DESKTOP,             "gnome-ccdesktop" },
++	{ PANEL_STOCK_FAVORITES,           "gnome-favorites" },
++	{ PANEL_STOCK_CONTROL_PANEL,       "gnome-desktop-config" },
+ };
+ 
+ static void
+diff -urN ../gnome-panel-2.3.4.1/gnome-panel/panel-stock-icons.h gnome-panel/panel-stock-icons.h
+--- ../gnome-panel-2.3.4.1/gnome-panel/panel-stock-icons.h	2003-07-21 05:28:31.000000000 -0700
++++ gnome-panel/panel-stock-icons.h	2003-08-01 11:57:36.000000000 -0700
+@@ -61,6 +61,8 @@
+ #define PANEL_STOCK_DRAWER              "panel-drawer"
+ #define PANEL_STOCK_APPLETS             "panel-applet"
+ #define PANEL_STOCK_DESKTOP             "panel-desktop"
++#define PANEL_STOCK_FAVORITES           "panel-favorites"
++#define PANEL_STOCK_CONTROL_PANEL	"panel-control-panel"
+ 
+ /* stock items  - no point in theme the icons one these,
+  * they use stock gtk icons and just modify the text
+--- ../gnome-panel-2.3.4.1/gnome-panel/menu.c	2003-07-24 03:12:28.000000000 -0700
++++ gnome-panel/menu.c	2003-08-02 05:00:54.000000000 -0700
+@@ -2850,11 +2850,6 @@
  			    FALSE /* fake */,
  			    TRUE /* launcher_add */);
  
@@ -34,7 +105,7 @@
  	return menu;
  }
  		
-@@ -3235,105 +3230,83 @@ add_distribution_submenu (GtkWidget *roo
+@@ -3234,105 +3229,85 @@
  			  NULL);
  }
  
@@ -68,6 +139,9 @@
 -		has_inline |= (flags & (MAIN_MENU_DISTRIBUTION));
 -		has_subs |= (flags & (MAIN_MENU_DISTRIBUTION_SUB));
 -	}
+-
+-	if (!root_menu)
+-		root_menu = menu_new ();
 +	GdkScreen *screen;
 +	char      *argv[2] = {"yelp", NULL};
 +	
@@ -81,57 +155,60 @@
 +				    argv [0]);
 +}
  
--	if (!root_menu)
--		root_menu = menu_new ();
+-	g_object_set_data (G_OBJECT (root_menu), "menu_panel", panel);
 +static void
-+add_favorites_submenu (GtkWidget *menu)
++add_uri_submenu (GtkWidget *menu, const char *uri, const char *description, const char *stock_id)
 +{
-+	GtkWidget *submenu;
-+	GtkWidget *menuitem;
- 
--	g_object_set_data (G_OBJECT (root_menu), "menu_panel", panel);
-+	submenu = create_menu_at (NULL,
-+				  "favorites:///",
-+				  FALSE,
-+			          _("Favorites"),
-+			          TRUE,
-+			          FALSE);
++        GtkWidget *submenu;
++        GtkWidget *menuitem;
++                                                                                                                             
++        submenu = create_menu_at (NULL,
++                                  uri,
++                                  FALSE,
++                                  description,
++                                  TRUE,
++                                  FALSE);
++                                                                                                                             
++        menuitem = gtk_image_menu_item_new ();
++                                                                                                                             
++        panel_load_menu_image_deferred (
++                menuitem, panel_menu_icon_get_size (), stock_id, NULL, NULL, FALSE);
++                                                                                                                             
++        setup_menuitem (menuitem, panel_menu_icon_get_size (), NULL, description, TRUE);
++        gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
++        gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), submenu);
++        g_signal_connect (G_OBJECT(submenu),"show",
++                          G_CALLBACK (submenu_to_display), NULL);
++}
  
 -	if (flags & MAIN_MENU_SYSTEM)
 -		create_system_menu(root_menu, fake_submenus,
 -				   FALSE /* fake */,
 -				   FALSE /* launcher_add */);
-+	menuitem = gtk_image_menu_item_new ();
- 
--	if (flags & MAIN_MENU_DISTRIBUTION &&
--	    distribution_info != NULL) {
--		if (distribution_info->menu_show_func)
--			distribution_info->menu_show_func(NULL,NULL);
-+	panel_load_menu_image_deferred (
-+		menuitem, panel_menu_icon_get_size (), PANEL_STOCK_FAVORITES, NULL, NULL, FALSE);
- 
--		create_distribution_menu(root_menu, fake_submenus, FALSE,
--					 FALSE /* launcher_add */);
--	}
-+	setup_menuitem (menuitem, panel_menu_icon_get_size (), NULL, _("Favorites"), TRUE);
-+	gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
-+	gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), submenu);
-+	g_signal_connect (G_OBJECT(submenu),"show",
-+			  G_CALLBACK (submenu_to_display), NULL);
-+}
 +static void
 +append_random_unrelated_items (GtkWidget *menu)
 +{
 +	GtkWidget *submenu;
 +	GtkWidget *menuitem;
  
+-	if (flags & MAIN_MENU_DISTRIBUTION &&
+-	    distribution_info != NULL) {
+-		if (distribution_info->menu_show_func)
+-			distribution_info->menu_show_func(NULL,NULL);
++	/* Settings Sub-menu */
+ 
+-		create_distribution_menu(root_menu, fake_submenus, FALSE,
+-					 FALSE /* launcher_add */);
+-	}
++	add_uri_submenu (menu, "extras:///", _("Extras"), GTK_STOCK_DIALOG_ERROR);
++	add_uri_submenu (menu, "favorites:///", _("Favorites"), PANEL_STOCK_FAVORITES);
+ 
 -	/*others here*/
-+	/* Settings Sub-menu */
++	/* Run Application */
  
 -	if (has_subs && has_inline)
 -		add_menu_separator (root_menu);
-+	add_favorites_submenu (menu);
- 
+-
 -	
 -	if (flags & MAIN_MENU_SYSTEM_SUB) {
 -		menu = create_system_menu(NULL, fake_submenus, TRUE,
@@ -149,12 +226,6 @@
 -					  NULL);
 -		}
 -	}
-+	/* Run Application */
- 
--	if (flags & MAIN_MENU_DISTRIBUTION_SUB) {
--		add_distribution_submenu (root_menu, fake_submenus,
--					  FALSE /*launcher_add */);
--	}
 +	menuitem = gtk_image_menu_item_new ();
 +	setup_stock_menu_item (
 +		menuitem, panel_menu_icon_get_size (),
@@ -167,6 +238,12 @@
 +	gtk_tooltips_set_tip (panel_tooltips, menuitem,
 +			      _("Run an Application by entering a command"), NULL);
  
+-	if (flags & MAIN_MENU_DISTRIBUTION_SUB) {
+-		add_distribution_submenu (root_menu, fake_submenus,
+-					  FALSE /*launcher_add */);
+-	}
++	add_menu_separator (menu);
+ 
 -	if ( ! no_run_box && extra_items) {
 -		add_menu_separator (root_menu);
 -		menuitem = gtk_image_menu_item_new ();
@@ -181,8 +258,6 @@
 -		gtk_tooltips_set_tip (panel_tooltips, menuitem,
 -				      _("Run an Application by entering a command"), NULL);
 -	}
-+	add_menu_separator (menu);
-+
 +	/* Open Recent Files */
 +	panel_recent_append_documents_menu (menu);
  
@@ -201,7 +276,7 @@
  		gtk_tooltips_set_tip (panel_tooltips, menuitem,
  				      _("Find files, folders, and documents "
  					"on your computer"),
-@@ -3341,41 +3314,101 @@ create_root_menu (GtkWidget   *root_menu
+@@ -3340,41 +3315,101 @@
  		g_signal_connect (menuitem, "activate",
  				  G_CALLBACK (panel_action_search), NULL);
  		setup_internal_applet_drag (menuitem, "ACTION:search:NEW");
@@ -321,73 +396,3 @@
  
  	return root_menu;
  }
-diff -urNp ../gnome-panel-2.3.4.1.old/gnome-panel/panel-menu-bar.c ./gnome-panel/panel-menu-bar.c
---- ../gnome-panel-2.3.4.1.old/gnome-panel/panel-menu-bar.c	2003-07-24 14:05:32.000000000 +0100
-+++ ./gnome-panel/panel-menu-bar.c	2003-07-24 14:29:44.000000000 +0100
-@@ -40,7 +40,7 @@
- #include "panel-profile.h"
- #include "panel-menu.h"
- 
--#define MENU_FLAGS (MAIN_MENU_SYSTEM | MAIN_MENU_DISTRIBUTION_SUB)
-+#define MENU_FLAGS (MAIN_MENU_SYSTEM) 
- 
- enum {
- 	PROP_0,
-@@ -122,32 +122,18 @@ panel_menu_bar_append_actions_menu (Pane
- 	item = gtk_separator_menu_item_new ();
- 	gtk_menu_shell_append (GTK_MENU_SHELL (menubar->priv->actions_menu), item);
- 
-+	panel_recent_append_documents_menu (menubar->priv->actions_menu);
-+
- 	if (panel_is_program_in_path  ("gnome-search-tool"))
- 		panel_menu_bar_append_action_item (
- 			menubar,
- 			menubar->priv->actions_menu,
--			_("Search for Files..."),
-+			_("Find Files..."),
- 			PANEL_STOCK_SEARCHTOOL,
- 			_("Find files, folders, and documents on your computer"),
- 			"ACTION:search:NEW",
- 			G_CALLBACK (panel_action_search));
- 
--	panel_recent_append_documents_menu (menubar->priv->actions_menu);
--
--	if (panel_is_program_in_path ("gnome-panel-screenshot")) {
--		item = gtk_separator_menu_item_new ();
--		gtk_menu_shell_append (GTK_MENU_SHELL (menubar->priv->actions_menu), item);
--
--		panel_menu_bar_append_action_item (
--			menubar,
--			menubar->priv->actions_menu,
--			_("Take Screenshot..."),
--			PANEL_STOCK_SCREENSHOT,
--			_("Take a screenshot of your desktop"),
--			"ACTION:screenshot:NEW",
--			G_CALLBACK (panel_action_screenshot));
--	}
--
- 	item = gtk_separator_menu_item_new ();
- 	gtk_menu_shell_append (GTK_MENU_SHELL (menubar->priv->actions_menu), item);
- 
---- ../gnome-panel-2.3.4.1/gnome-panel/panel-stock-icons.h	2003-07-21 12:28:31.000000000 +0000
-+++ gnome-panel/panel-stock-icons.h	2003-07-24 18:47:49.000000000 +0000
-@@ -61,6 +61,8 @@
- #define PANEL_STOCK_DRAWER              "panel-drawer"
- #define PANEL_STOCK_APPLETS             "panel-applet"
- #define PANEL_STOCK_DESKTOP             "panel-desktop"
-+#define PANEL_STOCK_FAVORITES           "panel-favorites"
-+#define PANEL_STOCK_CONTROL_PANEL	"panel-control-panel"
- 
- /* stock items  - no point in theme the icons one these,
-  * they use stock gtk icons and just modify the text
---- ../gnome-panel-2.3.4.1/gnome-panel/panel-stock-icons.c	2003-07-21 12:28:31.000000000 +0000
-+++ gnome-panel/panel-stock-icons.c	2003-07-24 18:48:21.000000000 +0000
-@@ -87,6 +87,8 @@
- 	{ PANEL_STOCK_DRAWER,              "panel-drawer" },
- 	{ PANEL_STOCK_APPLETS,             "gnome-applets" },
- 	{ PANEL_STOCK_DESKTOP,             "gnome-ccdesktop" },
-+	{ PANEL_STOCK_FAVORITES,           "gnome-favorites" },
-+	{ PANEL_STOCK_CONTROL_PANEL,       "gnome-desktop-config" },
- };
- 
- static void
--- a/patches/gnome-vfs-01-no-menu-preferences.diff	Fri Aug 01 17:32:21 2003 +0000
+++ b/patches/gnome-vfs-01-no-menu-preferences.diff	Sat Aug 02 11:10:01 2003 +0000
@@ -1,5 +1,5 @@
 --- ../gnome-vfs-2.2.3/modules/vfolder/applications-all-users.vfolder-info.in	2002-11-04 10:18:47.000000000 +0000
-+++ modules/vfolder/applications-all-users.vfolder-info.in	2003-05-15 18:57:19.000000000 +0100
++++ gnome-vfs-2.2.3/modules/vfolder/applications-all-users.vfolder-info.in	2003-05-15 18:57:19.000000000 +0100
 @@ -167,12 +167,6 @@
        <DontShowIfEmpty/>
      </Folder>
--- a/patches/gnome-vfs-02-favorites.diff	Fri Aug 01 17:32:21 2003 +0000
+++ b/patches/gnome-vfs-02-favorites.diff	Sat Aug 02 11:10:01 2003 +0000
@@ -1,6 +1,6 @@
 diff -ur ../gnome-vfs-2.2.3/modules/vfolder/favorites.vfolder-info.in ./modules/vfolder/favorites.vfolder-info.in
 --- ../gnome-vfs-2.2.3/modules/vfolder/favorites.vfolder-info.in	2002-09-27 17:12:59.000000000 +0100
-+++ ./modules/vfolder/favorites.vfolder-info.in	2003-05-30 12:28:35.000000000 +0100
++++ gnome-vfs-2.2.3/modules/vfolder/favorites.vfolder-info.in	2003-05-30 12:28:35.000000000 +0100
 @@ -1,6 +1,21 @@
  <VFolderInfo>
 +  <!-- Write changes here, instead of to the original files -->
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/gnome-vfs-25-extras-menu.diff	Sat Aug 02 11:10:01 2003 +0000
@@ -0,0 +1,242 @@
+diff -ur gnome-vfs-2.2.5/modules/default-modules.conf gnome-vfs-2.2.5-hacked/modules/default-modules.conf
+--- gnome-vfs-2.2.5/modules/default-modules.conf	2003-08-01 11:42:49.000000000 -0700
++++ gnome-vfs-2.2.5-hacked/modules/default-modules.conf	2003-08-01 11:48:29.000000000 -0700
+@@ -49,5 +49,6 @@
+ system-settings:        libvfolder-desktop.so
+ server-settings:        libvfolder-desktop.so
+ quick-start:		libvfolder-desktop.so
++extras:			libvfolder-desktop.so
+ 
+ tar: tar
+--- gnome-vfs-2.2.5/modules/vfolder/Makefile.am	2003-08-01 11:42:49.000000000 -0700
++++ gnome-vfs-2.2.5-hacked/modules/vfolder/Makefile.am	2003-08-01 12:04:54.000000000 -0700
+@@ -23,6 +23,7 @@
+ 
+ EXTRA_DIST =					\
+ 	applications-all-users.vfolder-info.in	\
++	extras-all-users.vfolder-info.in	\
+ 	preferences-all-users.vfolder-info.in	\
+ 	favorites.vfolder-info.in		\
+ 	network-all-users.vfolder-info.in	\
+@@ -58,6 +59,7 @@
+ vfolderdir = $(sysconfdir)/gnome-vfs-2.0/vfolders
+ vfolder_DATA = 					\
+ 	applications-all-users.vfolder-info 	\
++	extras-all-users.vfolder-info		\
+ 	network-all-users.vfolder-info		\
+ 	quick-start.vfolder-info		\
+ 	preferences-all-users.vfolder-info	\
+--- /dev/null	2003-05-07 12:19:55.000000000 -0700
++++ gnome-vfs-2.2.5-hacked/modules/vfolder/extras-all-users.vfolder-info.in	2003-08-01 11:52:34.000000000 -0700
+@@ -0,0 +1,211 @@
++<VFolderInfo>
++  <!-- Write changes here, instead of to the original files -->
++  <WriteDir>@vfolderdir@/extras-all-users/</WriteDir>
++
++  <!-- Load the GNOME2 applications from our prefix -->
++  <ItemDir>@datadir@/extras/</ItemDir>
++
++  <!-- Add main GNOME2 entries if you build into a non-default prefix -->
++  <ItemDir>/usr/share/applications/</ItemDir>
++
++  <!-- Default .directory location -->
++  <DesktopDir>@datadir@/gnome/vfolders/</DesktopDir>
++
++  <!-- Root folder -->
++  <Folder>
++    <Name>Applications</Name>
++    <Desktop>Applications.directory</Desktop>
++
++    <Exclude>gnome-search-tool.desktop</Exclude>
++    <Exclude>Gmc.desktop</Exclude>
++    <Exclude>nautilus-help.desktop</Exclude>
++    <Exclude>gnome-help.desktop</Exclude>
++
++    <!-- Accesories -->
++    <Folder>
++      <Name>Accessories</Name>
++      <Desktop>Accessories.directory</Desktop>
++      <Query>
++	<And>
++	  <Keyword>Application</Keyword>
++	  <Keyword>Utility</Keyword>
++	  <Not>
++	    <Keyword>System</Keyword>
++	    <Keyword>X-Sun-Supported</Keyword>
++	  </Not>
++	</And>
++      </Query>
++      <DontShowIfEmpty/>
++    </Folder>
++
++    <!-- Other, catch-all unmatched folder -->
++    <Folder>
++      <Name>Other</Name>
++      <Desktop>Other.directory</Desktop>
++      <OnlyUnallocated/>
++      <Query>
++	<And>
++          <Keyword>Application</Keyword>
++          <Not>
++	    <Keyword>X-Sun-Supported</Keyword>
++            <Keyword>Settings</Keyword>
++            <Keyword>X-Sun-Quick-Start</Keyword>
++          </Not>
++          <Not>
++            <Keyword>Core</Keyword>
++	    <Keyword>X-Sun-Supported</Keyword>
++          </Not>
++        </And>
++      </Query>
++      
++      <Exclude>vumeter.desktop</Exclude>
++      <Exclude>reclevel.desktop</Exclude>
++      <Exclude>gnome-search-tool.desktop</Exclude>
++      <Exclude>gnomecc.desktop</Exclude>
++
++      <DontShowIfEmpty/>
++    </Folder>
++
++    <!-- Development Tools -->
++    <Folder>
++      <Name>Programming</Name>
++      <Desktop>Development.directory</Desktop>
++      <Query>
++        <And>
++          <Keyword>Application</Keyword>
++	  <Keyword>Development</Keyword>
++	<Not>
++	    <Keyword>X-Sun-Supported</Keyword>
++	</Not>
++        </And>
++      </Query>
++      <DontShowIfEmpty/>
++    </Folder>
++
++    <!-- Games -->
++    <Folder>
++      <Name>Games</Name>
++      <Desktop>Games.directory</Desktop>
++      <Query>
++        <And>
++          <Keyword>Application</Keyword>
++	  <Keyword>Game</Keyword>
++	<Not>
++	    <Keyword>X-Sun-Supported</Keyword>
++	</Not>
++        </And>
++      </Query>
++      <DontShowIfEmpty/>
++    </Folder>
++
++    <!-- Graphics -->
++    <Folder>
++      <Name>Graphics</Name>
++      <Desktop>Graphics.directory</Desktop>
++      <Query>
++        <And>
++          <Keyword>Application</Keyword>
++	  <Keyword>Graphics</Keyword>
++	<Not>
++	    <Keyword>X-Sun-Supported</Keyword>
++	</Not>
++        </And>
++      </Query>
++      <DontShowIfEmpty/>
++    </Folder>
++
++    <!-- Internet -->
++    <Folder>
++      <Name>Internet</Name>
++      <Desktop>Internet.directory</Desktop>
++      <Query>
++        <And>
++          <Keyword>Application</Keyword>
++	  <Keyword>Network</Keyword>
++	<Not>
++	    <Keyword>X-Sun-Supported</Keyword>
++	</Not>
++        </And>
++      </Query>
++      <DontShowIfEmpty/>
++    </Folder>
++
++    <!-- Multimedia -->
++    <Folder>
++      <Name>Multimedia</Name>
++      <Desktop>Multimedia.directory</Desktop>
++      <Query>
++        <And>
++          <Keyword>Application</Keyword>
++	  <Keyword>AudioVideo</Keyword>
++	<Not>
++	    <Keyword>X-Sun-Supported</Keyword>
++	</Not>
++        </And>
++      </Query>
++
++      <Exclude>vumeter.desktop</Exclude>
++      <Exclude>reclevel.desktop</Exclude>
++
++      <DontShowIfEmpty/>
++    </Folder>
++
++    <!-- Office -->
++    <Folder>
++      <Name>Office</Name>
++      <Desktop>Office.directory</Desktop>
++      <Query>
++	<And>
++	  <Keyword>Application</Keyword>
++	  <Or>
++	    <Keyword>Office</Keyword>
++	    <Keyword>Spreadsheet</Keyword>
++	    <Keyword>WordProcessor</Keyword>
++	    <Keyword>Calendar</Keyword>
++	    <Keyword>ProjectManagement</Keyword>
++	  </Or>
++	<Not>
++	    <Keyword>X-Sun-Supported</Keyword>
++	</Not>
++	</And>
++      </Query>
++
++      <Exclude>star.desktop</Exclude>
++
++      <DontShowIfEmpty/>
++    </Folder>
++
++    <!-- System Tools-->
++    <Folder>
++      <Name>System</Name>
++      <Desktop>System.directory</Desktop>
++      <Query>
++        <And>
++          <Keyword>Application</Keyword>
++          <Not>
++            <Keyword>Settings</Keyword>
++	    <Keyword>X-Sun-Supported</Keyword>
++          </Not>
++          <Keyword>System</Keyword>
++        </And>
++      </Query>
++      <DontShowIfEmpty/>
++    </Folder>
++
++   <!-- Control Panel -->
++   <Folder>
++      <Name>Control Panel</Name>
++      <Desktop>Settings.directory</Desktop>    
++      <Query>
++        <And>
++           <Keyword>Settings</Keyword>
++           <Not>
++              <Keyword>X-Sun-Supported</Keyword>
++           </Not>
++        </And>
++      <Query>
++      <DontShowIfEmpty/>
++   </Folder>
++
++  </Folder>
++</VFolderInfo>