X-Git-Url: https://git.danieliu.xyz/?a=blobdiff_plain;ds=sidebyside;f=client.c;h=8ec8ffb6836c8e69cd0877d68629a87b7b6a8be2;hb=9fce8215b7c1b95903adbfd0cb7d6e2822ea063f;hp=653141076c3d138ea0f63229b1d534b948f9d1f4;hpb=f4208e7cacd56de70d50218a0b5ace83e39b76a6;p=dwm.git diff --git a/client.c b/client.c index 6531410..8ec8ffb 100644 --- a/client.c +++ b/client.c @@ -49,6 +49,8 @@ ban(Client *c) void focus(Client *c) { + if (!issel) + return; Client *old = sel; XEvent ev; @@ -196,13 +198,6 @@ killclient(Arg *arg) XKillClient(dpy, sel->win); } -void -lower(Client *c) -{ - XLowerWindow(dpy, c->title); - XLowerWindow(dpy, c->win); -} - void manage(Window w, XWindowAttributes *wa) { @@ -416,7 +411,7 @@ togglemax(Arg *arg) sel->h = sh - 2 - bh; higher(sel); - resize(sel, False, TopLeft); + resize(sel, arrange == dofloat, TopLeft); sel->x = ox; sel->y = oy; @@ -466,12 +461,14 @@ zoom(Arg *arg) { Client *c; - if(!sel || (arrange != dotile) || sel->isfloat) + if(!sel || (arrange != dotile) || sel->isfloat || sel->ismax) return; - if(sel == getnext(clients) && sel->next) { + if(sel == getnext(clients)) { if((c = getnext(sel->next))) sel = c; + else + return; } /* pop */