summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--client.c7
-rw-r--r--view.c15
2 files changed, 11 insertions, 11 deletions
diff --git a/client.c b/client.c
index 45cb3a36..586a87f6 100644
--- 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);
diff --git a/view.c b/view.c
index e74d4bc9..eddf2dad 100644
--- 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);
}