diff options
author | Zandr Martin <zandrmartin+git@gmail.com> | 2016-06-02 15:48:14 -0500 |
---|---|---|
committer | Zandr Martin <zandrmartin+git@gmail.com> | 2016-06-02 15:48:14 -0500 |
commit | 9ccc92705ef428d6486fd9173e5029c594798919 (patch) | |
tree | 6ccc4143129cdfe354aa01f80c80deff1cca4ca4 /sway | |
parent | 09670fc1a7485d75774c184fcbf8e907b9481aaa (diff) | |
download | sway-9ccc92705ef428d6486fd9173e5029c594798919.tar.xz |
implement stable sort for lists
also change sort_workspaces() to use it
Diffstat (limited to 'sway')
-rw-r--r-- | sway/output.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sway/output.c b/sway/output.c index 53b24232..d56a2f30 100644 --- a/sway/output.c +++ b/sway/output.c @@ -3,6 +3,7 @@ #include <stdlib.h> #include "output.h" #include "log.h" +#include "list.h" swayc_t *output_by_name(const char* name, const struct wlc_point *abs_pos) { if (strcasecmp(name, "left") == 0) { @@ -180,7 +181,7 @@ void get_absolute_center_position(swayc_t *container, struct wlc_point *point) { point->y += container->height/2; } -int sort_workspace_cmp_qsort(const void *_a, const void *_b) { +static int sort_workspace_cmp_qsort(const void *_a, const void *_b) { swayc_t *a = *(void **)_a; swayc_t *b = *(void **)_b; int retval = 0; @@ -199,5 +200,5 @@ int sort_workspace_cmp_qsort(const void *_a, const void *_b) { } void sort_workspaces(swayc_t *output) { - list_qsort(output->children, sort_workspace_cmp_qsort); + list_stable_sort(output->children, sort_workspace_cmp_qsort); } |