diff options
Diffstat (limited to 'patch/transferall.c')
| -rw-r--r-- | patch/transferall.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/patch/transferall.c b/patch/transferall.c new file mode 100644 index 0000000..ee823b1 --- /dev/null +++ b/patch/transferall.c @@ -0,0 +1,26 @@ +void +transferall(const Arg *arg) +{ + Client *c, *n = selmon->clients, *attachfrom = NULL; + int i = 0, nstackclients = 0; + while (n) { + c = n; + n = c->next; + if (!ISVISIBLE(c) || c->isfloating) continue; + if (i >= selmon->nmaster) { + detach(c); + if (!attachfrom) { + attach(c); + } else { + c->next = attachfrom->next; + attachfrom->next = c; + } + attachfrom = c; + nstackclients++; + } + i++; + } + selmon->nmaster = nstackclients; + arrange(selmon); +} + |
