Created attachment 5291
Case insensitive sort of menu items
Currently, garcon sorts the menu items in a case sensitive way. This makes it so that applications with names like "jEdit", "mtPaint" and "qGo" are placed at the bottom of the menu, instead of in alphabetical order.
The attached patch (output from "git diff") fixes this by calling the g_utf8_casefold function, which is suitable for this use according to the documentation (https://developer.gnome.org/glib/2.30/glib-Unicode-Manipulation.html#g-utf8-casefold).
I tested the patch on Arch Linux and it works perfectly fine here.
I see that two spaces (blanks) are missing in front of the second call to g_utf8_casefold. I can resubmit the patch, if so desired.
Will this patch be included in the next version of Garcon?
Sure, but beside that fact that the patch leaks all the casefolded names, we might want to cache them somehow since sorting it taking quite some time when building the menu.
Fixed in 65a793c.
Absolutely, caching would speed things up. However, the sorting is normally done on extremely few elements at a time, which leads me to wonder if anyone would notice a difference if the sorting itself was cached. It would have to be measured.
What I think could really have the potential for speeding things up, is the caching of .desktop files, as mentioned in this bug report: https://bugzilla.xfce.org/show_bug.cgi?id=10607
Thanks for accepting the patch. Looking forward to the 4.12 release.