degesch: sort modes on change

This commit is contained in:
Přemysl Eric Janouch 2015-06-07 05:23:31 +02:00
parent de2eff7399
commit 5bc259e388
1 changed files with 7 additions and 1 deletions

View File

@ -4000,6 +4000,12 @@ mode_processor_run (struct mode_processor *self,
}
}
static int
mode_char_cmp (const void *a, const void *b)
{
return *(const char *) a - *(const char *) b;
}
static void
mode_processor_toggle (struct mode_processor *self, struct str *modes)
{
@ -4010,7 +4016,7 @@ mode_processor_toggle (struct mode_processor *self, struct str *modes)
if (self->adding)
{
str_append_c (modes, self->mode_char);
// TODO: sort the modes
qsort (modes->str, modes->len, 1, mode_char_cmp);
}
else
str_remove_slice (modes, pos - modes->str, 1);