This is an automated email from the git hooks/post-receive script. nick pushed a commit to branch master in repository xfce/garcon.
commit 65a793cf40a262b313803e37dcddeb509c1e5ae1 Author: Nick Schermer <[email protected]> Date: Mon Jul 28 18:31:18 2014 +0200 Add case insensitive sorting to the menu (bug #10594). The function is called multiple times for each element, so its probably wise to cache the casefolded names at some point if it turns out to be a performance issue. --- garcon/garcon-menu.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/garcon/garcon-menu.c b/garcon/garcon-menu.c index e23e268..ac7cdcc 100644 --- a/garcon/garcon-menu.c +++ b/garcon/garcon-menu.c @@ -1627,8 +1627,20 @@ static gint garcon_menu_compare_items (gconstpointer *a, gconstpointer *b) { - return g_utf8_collate (garcon_menu_element_get_name (GARCON_MENU_ELEMENT (a)), - garcon_menu_element_get_name (GARCON_MENU_ELEMENT (b))); + gchar *casefold_a, *casefold_b; + gint result; + + /* do case insensitive sorting, see bug #10594 */ + /* TODO: this function is called often, maybe catch the casefolded name */ + casefold_a = g_utf8_casefold (garcon_menu_element_get_name (GARCON_MENU_ELEMENT (a)), -1); + casefold_b = g_utf8_casefold (garcon_menu_element_get_name (GARCON_MENU_ELEMENT (b)), -1); + + result = g_utf8_collate (casefold_a, casefold_b); + + g_free (casefold_a); + g_free (casefold_b); + + return result; } -- To stop receiving notification emails like this one, please contact the administrator of this repository. _______________________________________________ Xfce4-commits mailing list [email protected] https://mail.xfce.org/mailman/listinfo/xfce4-commits
