summaryrefslogtreecommitdiff
path: root/patch/sortscreens.c
blob: 538e2c1c6ef00f6ab02be283dc967fcd17383237 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
void
sortscreens(XineramaScreenInfo *screens, int n)
{
       int i, j;
       XineramaScreenInfo *screen = ecalloc(1, sizeof(XineramaScreenInfo));

       for (i = 0; i < n; i++)
               for (j = i + 1; j < n; j++)
                       if (RIGHTOF(screens[i], screens[j])) {
                               memcpy(&screen[0], &screens[i], sizeof(XineramaScreenInfo));
                               memcpy(&screens[i], &screens[j], sizeof(XineramaScreenInfo));
                               memcpy(&screens[j], &screen[0], sizeof(XineramaScreenInfo));
                       }
       XFree(screen);
}