fix: fit view — defer layout measurement to rAF, stretch pre to fill tile

Bug 1: applyFitLayout measured parentElement.clientHeight before the
browser reflowed the DOM — returned 0 on first render. Fix: wrap in
requestAnimationFrame so measurement happens after layout pass.
Applies to all three call sites: renderGrid(), applyDisplaySettings(),
and the window resize handler.

Bug 2: .tile-body pre had position:absolute bottom:0 but no top:0.
In fit mode (taller tiles), content sat at the bottom with a gap above.
Fix: .session-grid--fit .tile-body pre { top: 0; overflow-y: auto }
This commit is contained in:
Brian Krabach
2026-03-31 03:19:37 -07:00
parent fe5337840d
commit ebec7c3625
4 changed files with 40 additions and 3 deletions
+6
View File
@@ -1380,6 +1380,12 @@ body {
overflow: hidden;
}
/* In fit mode, stretch pre to fill the full tile body height (not just bottom-anchor) */
.session-grid--fit .tile-body pre {
top: 0; /* stretch to fill full tile body height in fit mode */
overflow-y: auto; /* scroll if content exceeds the tile */
}
/* ============================================================
Responsive overlay sidebar at <960px
============================================================ */