From 9ccc92705ef428d6486fd9173e5029c594798919 Mon Sep 17 00:00:00 2001 From: Zandr Martin Date: Thu, 2 Jun 2016 15:48:14 -0500 Subject: implement stable sort for lists also change sort_workspaces() to use it --- include/list.h | 3 ++- include/output.h | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/list.h b/include/list.h index b2e26f95..f478b6bb 100644 --- a/include/list.h +++ b/include/list.h @@ -20,5 +20,6 @@ void list_qsort(list_t *list, int compare(const void *left, const void *right)); // Return index for first item in list that returns 0 for given compare // function or -1 if none matches. int list_seq_find(list_t *list, int compare(const void *item, const void *cmp_to), const void *cmp_to); - +// stable sort since qsort is not guaranteed to be stable +void list_stable_sort(list_t *list, int compare(const void *a, const void *b)); #endif diff --git a/include/output.h b/include/output.h index 12bc478f..10c5bb53 100644 --- a/include/output.h +++ b/include/output.h @@ -16,7 +16,7 @@ void get_absolute_position(swayc_t *container, struct wlc_point *point); // given wlc_point. void get_absolute_center_position(swayc_t *container, struct wlc_point *point); -int sort_workspace_cmp_qsort(const void *a, const void *b); +// stable sort workspaces on this output void sort_workspaces(swayc_t *output); #endif -- cgit v1.2.3