no this is better - dwm - dynamic window manager HTML git clone https://git.parazyd.org/dwm DIR Log DIR Files DIR Refs DIR README DIR LICENSE --- DIR commit a33150eb4b041b243d0493cd4b53bfbcace3299e DIR parent fd00b3a18620c70721c4c4d9f0169e06b9ce4437 HTML Author: Anselm R. Garbe <arg@10kloc.org> Date: Wed, 6 Sep 2006 15:36:42 +0200 no this is better Diffstat: M client.c | 7 ------- M view.c | 15 +++++++++++---- 2 files changed, 11 insertions(+), 11 deletions(-) --- DIR diff --git a/client.c b/client.c @@ -99,13 +99,6 @@ focus(Client *c) } } if(c) { - if(c->isfloat || arrange == dofloat) { - detach(c); - if(clients) - clients->prev = c; - c->next = clients; - clients = c; - } grabbuttons(c, True); drawtitle(c); XSetInputFocus(dpy, c->win, RevertToPointerRoot, CurrentTime); DIR diff --git a/view.c b/view.c @@ -18,6 +18,15 @@ minclient() return min; } +static void +pop(Client *c) +{ + detach(c); + if(clients) + clients->prev = c; + c->next = clients; + clients = c; +} static void reorder() @@ -223,6 +232,7 @@ restack() return; } if(sel->isfloat || arrange == dofloat) { + pop(sel); XRaiseWindow(dpy, sel->win); XRaiseWindow(dpy, sel->twin); } @@ -297,10 +307,7 @@ zoom(Arg *arg) if((c = sel) == nexttiled(clients)) if(!(c = nexttiled(c->next))) return; - detach(c); - c->next = clients; - clients->prev = c; - clients = c; + pop(c); focus(c); arrange(NULL); }