relayout on recalc