diff options
author | Abigail Brady <morwen@evilmagic.org> | 2002-11-18 03:43:53 +0000 |
---|---|---|
committer | Robert Brady <rbrady@src.gnome.org> | 2002-11-18 03:43:53 +0000 |
commit | 3e576ed83287a623cf4fe76989794256e6775b4a (patch) | |
tree | 76f2d545414f9fcb518d6875168abfad303c110b /gtk/gtkimmodule.c | |
parent | a0fdf99106a7bb725611827e08ccb8cbea281fc7 (diff) | |
download | gtk+-3e576ed83287a623cf4fe76989794256e6775b4a.tar.gz |
Sort the list of Input Modules by name, keeping Default at top.
2002-11-18 Abigail Brady <morwen@evilmagic.org>
* gtk/gtkimmodule.c: (_gtk_im_module_list): Sort the list of Input
Modules by name, keeping Default at top.
Diffstat (limited to 'gtk/gtkimmodule.c')
-rw-r--r-- | gtk/gtkimmodule.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/gtk/gtkimmodule.c b/gtk/gtkimmodule.c index 6d5a9176c4..90193cfab4 100644 --- a/gtk/gtkimmodule.c +++ b/gtk/gtkimmodule.c @@ -388,6 +388,13 @@ gtk_im_module_init () g_free (filename); } +static gint +compare_gtkimcontextinfo_name(const GtkIMContextInfo **a, + const GtkIMContextInfo **b) +{ + return g_utf8_collate ((*a)->context_name, (*b)->context_name); +} + /** * _gtk_im_module_list: * @contexts: location to store an array of pointers to #GtkIMContextInfo @@ -437,6 +444,9 @@ _gtk_im_module_list (const GtkIMContextInfo ***contexts, tmp_list = tmp_list->next; } + + /* fisrt element (Default) should always be at top */ + qsort ((*contexts)+1, n-1, sizeof (GtkIMContextInfo *), (GCompareFunc)compare_gtkimcontextinfo_name); } } |