On Tuesday 15 December 2009 17:17:25 Roger Oberholtzer wrote:
On Tue, 2009-12-15 at 10:09 -0600, David C. Rankin wrote:
On 12/15/2009 06:33 AM, Will Stephenson wrote:
Was the presence of this dynamic menu cache an interesting feature for you compared to other WMs/lightweight DEs or also compared to KDE/GNOME?
Will, yes it was and you can tell the difference immediately in the crispness of the menus. This is especially true in a lot of the lightweight desktop using xdg-menu, dmenu, wall-menu or the like. With the number of packages installed today, without a cache, you have a lot of perceptible "lag" time between clicking on the menu and the menu appearing. Anything over a 1/4 second and you really notice, you get to 1/2 and you find yourself waiting...
I have a generous number of packages installed on my openSUSE system, and I have always felt that their presence in the KDE menu is incredibly incomplete (not to mention poorly organized). I would guess that maybe 5% of the GUI apps are in the menu system.
This is broadly how the menu is put together: 1) The freedesktop.org menu spec [1] defines the tree of menu folders (as categories), and a set of directories to search for desktop files. 2) Each package contains desktop files for each app/menu entry. These contain a list of categories. 3) The desktop files are combined into the tree by matching categories. 4) OnlyShowIn=<desktopname> fields in the desktop files prevent desktop specific apps from appearing in other desktops 5) The KDE menus trim folders containing only one entry by merging the entry back into the parent menu Example: /-Graphics |-Image viewers | |-Digikam | |-Gwenview |-Drawing |-Kolourpaint would become: /-Graphics |-Image viewers | |-Digikam | |-Gwenview |-Kolourpaint So if apps are missing from the menu, it either means: 1) No desktop file is installed 2) The categories in the desktop file do not match up with those defined in the menu 3) OnlyShowIn prevents the app being shown 4) A bug in the menu prevents the app being shown 1) is easy to check, 2) is checked at package build time by a brp script (the build fails) but perhaps the category match is putting the app in an unexpected place. 4) would be very interesting. You can see what KDE thinks the populated menu tree should look like with "kbuildsycoca4 --menutest", and compare it with the actual menu. I'm sure performance improvements are also possible. Will -- Will Stephenson, openSUSE Team SUSE LINUX Products GmbH - Nürnberg - AG Nürnberg - HRB 16746 - GF: Markus Rex -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org