diff --git a/src/client.c b/src/client.c index 7f7d4a0..bd704de 100644 --- a/src/client.c +++ b/src/client.c @@ -888,8 +888,6 @@ client_manage(Window w, XWindowAttributes *wa, Bool ar) c->free_geo = c->pgeo = c->geo; c->tag = seltag[c->screen]; c->focusontag = -1; - - tags[c->screen][c->tag].cleanfact = True; client_clean_tile_fact(c); at.event_mask = PropertyChangeMask; @@ -920,6 +918,9 @@ client_manage(Window w, XWindowAttributes *wa, Bool ar) client_attach(c); client_set_rules(c); + + tags[c->screen][c->tag].cleanfact = True; + client_get_name(c); if(c->tag == (uint)seltag[selscreen]) { diff --git a/src/layout.c b/src/layout.c index 7dde55f..884fe4a 100644 --- a/src/layout.c +++ b/src/layout.c @@ -54,10 +54,7 @@ arrange(int screen, Bool update_layout) if(tags[screen][seltag[screen]].layout.func) { if(update_layout) - { - tags[screen][seltag[screen]].cleanfact = True; - tags[screen][seltag[screen]].layout.func(screen); - } + tags[screen][seltag[screen]].layout.func(screen); infobar_draw(screen); } @@ -841,6 +838,7 @@ uicb_set_layout(uicb_t cmd) if(layout_list[i].func == conf.layout[j].func) tags[selscreen][seltag[selscreen]].layout = conf.layout[j]; + tags[selscreen][seltag[selscreen]].cleanfact = True; arrange(selscreen, True); return;