Behavior's still a little wonky but positioning is there.
7L3TU7JVWPBPHN7WF4TJ263BZ6BC3AYRRW6PULFUP5JZUGWWNUSAC CJH33PU2NGWN3E6HQQ3QE6PB25JVMXWJXZTSP4ZGPU4TZRZGNLYAC HW2YJWC6AUWHZBS7KHF3PAWN44XGWSJ5WU47MCHTDCH32L5JN7EQC FNGIZYDU5274CDE27IONZBA4JMXI4SQXEDIVTMVESK7A44XIJ7FAC 6LVZRZGDURMWBUBXHFGV4HGB7L5M2FKCYGJCAU3X2PK74VJQ6RCAC TZP6PT5SUMQJO4YUGALUU3R4RYQREDLZXWAOKD6N3QDROICWHRBAC 7B74AT3BXYB7PVW4F6SGQNPMHOU5TEV5TZ54CG6VSQI46XSEKWXQC J6OSBEBQXZR5JZ5TOCCUPELBPUVEQULGCXURXLPY7WFYTDEQOU2AC 2ZRKX4A24W4WNSLJNPKP3FWB3Y3UCYLWWESTC65P45BQFSJKS4PQC 7JQD43QS55Q2YI6OQ6BGVAHSHKQHI3TKD6PXIKYKJZXOVOWFHMWAC D425ND7AT3F7QJ3CCSESMVDOC3J5C5P32M5SJDBHECZJXLHNQ2FAC S7RXJJZG4IEIVLPHEWFT5M2T3SRRO5US5SYBPXSYSWJJLXAKNNPAC E7UO6NRGXFDMBU3BSJYRDNOA3Y7VHD7NWPHI5PHCPHQF6ZNOPZLQC ZOOCZQBGZ4PCOU54EPPUPWNOIFWCM5RMZ4EFL2WFR7LFJTAMHZGAC 6XZIQSMIVP2GZ5S3UCKEVNDSLTHSQEVSXLV4UIFF3G3SRCGJPXYAC tile(Monitor *m){unsigned int i, n = 0, h, mw, my, ty;Client *c;struct wlr_box ca;wl_list_for_each(c, &clients, link) {if (VISIBLEON(c, m))n++;}if (n == 0)return;if (n > m->nmaster)mw = m->nmaster ? m->ww * m->mfact : 0;elsemw = m->ww;i = my = ty = 0;wl_list_for_each(c, &clients, link) {if (!VISIBLEON(c, m))continue;wlr_xdg_surface_get_geometry(c->xdg_surface, &ca);if (i < m->nmaster) {h = (m->wh - my) / (MIN(n, m->nmaster) - i);resize(c, m->wx, m->wy + my, mw, h);my += ca.height;} else {h = (m->wh - ty) / (n - i);resize(c, m->wx + mw, m->wy + ty, m->ww - mw, h);ty += ca.height;}i++;}}void
/* name scale */{ "X11-1", 1 },{ "eDP-1", 2 },{ "HDMI-A-1", 1 },/* defaults */{ NULL, 1 },
/* name mfact nmaster scale layout */{ "X11-1", 0.5, 1, 1, &layouts[0] },{ "eDP-1", 0.5, 1, 2, &layouts[0] },{ "HDMI-A-1", 0.5, 1, 1, &layouts[0] },/* defaults (required) */{ NULL, 0.5, 1, 1, &layouts[0] },