When I remove an entry in xfce-applications.menu (see diff below). It always appears in menu. --- /usr/local/etc/xdg/menus/xfce-applications.menu 2010-12-27 15:43:13.000000000 +0100 +++ /home/olivier/.config/menus/xfce-applications.menu 2010-12-27 17:51:34.000000000 +0100 @@ -16,7 +16,6 @@ <Separator/> <Filename>exo-terminal-emulator.desktop</Filename> <Filename>exo-file-manager.desktop</Filename> - <Filename>exo-mail-reader.desktop</Filename> <Filename>exo-web-browser.desktop</Filename> <Separator/> <Menuname>Settings</Menuname>
Created attachment 3308 menu: default and custom
As I understand it, you removed it from the layout only, but it is still matched by: <Include> <Category>X-Xfce-Toplevel</Category> </Include> That's why it is still inserted somewhere. If you really want to hide it, you have to exclude this specific file.
I also believe this is a bug, i noticed it yesterday when trying to edit the menu. Removing: <Include> <Category>X-Xfce-Toplevel</Category> </Include> is not a solution because all the entries like <Filename>exo-terminal-emulator.desktop</Filename> <Filename>exo-file-manager.desktop</Filename> will not be shown.
From exo-mail-reader.desktop: Categories=Network;X-XFCE;X-Xfce-Toplevel; It's in several categories, so I think you have to exclude it from the top menu (so X-Xfce-Toplevel), and from each matched category (so Network, and probably Other). (In reply to comment #3) > I also believe this is a bug, i noticed it yesterday when trying to edit the > menu. > Removing: > <Include> > <Category>X-Xfce-Toplevel</Category> > </Include> > is not a solution because all the entries like > <Filename>exo-terminal-emulator.desktop</Filename> > <Filename>exo-file-manager.desktop</Filename> > will not be shown. You can still include them manually: <Include> <Filename>exo-terminal-emulator.desktop</Filename> <Filename>exo-file-manager.desktop</Filename> </Include> Imho, there's no bug here.
Well i followed more or less what is in this page http://wiki.xfce.org/howto/customize-menu about customizing the menu and somewhat did what i wanted. Copied the .desktop files i wanted removed from the menu changed the .desktop files to remove the X-Xfce-Toplevel; from the Categories section and edited the menu like this: diff -u /etc/xdg/menus/xfce-applications.menu ~/.config/menus/xfce-applications.menu --- /etc/xdg/menus/xfce-applications.menu 2011-01-16 16:08:06.000000000 +0000 +++ /home/ndiaz/.config/menus/xfce-applications.menu 2011-02-22 02:02:55.519790975 +0000 @@ -12,19 +12,14 @@ </Include> <Layout> - <Filename>xfrun4.desktop</Filename> - <Separator/> <Filename>exo-terminal-emulator.desktop</Filename> <Filename>exo-file-manager.desktop</Filename> - <Filename>exo-mail-reader.desktop</Filename> <Filename>exo-web-browser.desktop</Filename> <Separator/> <Menuname>Settings</Menuname> <Separator/> <Merge type="all"/> <Separator/> - <Filename>xfhelp4.desktop</Filename> - <Filename>xfce4-about.desktop</Filename> <Filename>xfce4-session-logout.desktop</Filename> </Layout> @@ -67,6 +62,7 @@ <Filename>exo-terminal-emulator.desktop</Filename> <Filename>xfce4-about.desktop</Filename> <Filename>xfrun4.desktop</Filename> + <Filename>xfhelp4.desktop</Filename> </Or> </Exclude> </Menu> @@ -166,6 +162,14 @@ <Include> <All/> </Include> + <Exclude> + <Or> + <Filename>exo-mail-reader.desktop</Filename> + <Filename>xfrun4.desktop</Filename> + <Filename>xfce4-about.desktop</Filename> + <Filename>xfhelp4.desktop</Filename> + </Or> + </Exclude> </Menu> </Menu> I still think it is a little weird doing this this way, but at least i understand now why it is like that.
You need to alter the desktop file to hide it (Hidden=TRUE).