From: anselm@garbe.us Date: Wed, 8 Feb 2012 18:54:05 +0000 (+0100) Subject: applied Eckehard Berns fix fix, sorry that this took so long X-Git-Url: https://git.danieliu.xyz/?a=commitdiff_plain;h=51336aa4a38e82cc796edce790a989298e817a5a;p=dwm.git applied Eckehard Berns fix fix, sorry that this took so long --- diff --git a/dwm.c b/dwm.c index 0f946a6..d39f11f 100644 --- a/dwm.c +++ b/dwm.c @@ -397,9 +397,10 @@ arrange(Monitor *m) { showhide(m->stack); else for(m = mons; m; m = m->next) showhide(m->stack); - if(m) + if(m) { arrangemon(m); - else for(m = mons; m; m = m->next) + restack(m); + } else for(m = mons; m; m = m->next) arrangemon(m); } @@ -408,7 +409,6 @@ arrangemon(Monitor *m) { strncpy(m->ltsymbol, m->lt[m->sellt]->symbol, sizeof m->ltsymbol); if(m->lt[m->sellt]->arrange) m->lt[m->sellt]->arrange(m); - restack(m); } void @@ -1420,6 +1420,8 @@ restack(Monitor *m) { drawbar(m); if(!m->sel) return; + if(m->sel->isfloating || !m->lt[m->sellt]->arrange) + XRaiseWindow(dpy, m->sel->win); if(m->lt[m->sellt]->arrange) { wc.stack_mode = Below; wc.sibling = m->barwin;