mirror of
https://github.com/block/buzz.git
synced 2026-11-05 00:41:28 +00:00
The short-channel topPad bottom-align was doubly broken. First, the pad was set as the spacer's paddingTop, but an absolutely-positioned virtual row resolves top:0 against the padding box inner edge — padding inflated the box without moving the rows, so they pinned to the top with dead space below (the inverse of bottom-align). Fold topPad into each row's translateY instead. Second, the pad ignored the non-row scroll chrome (the channel-header padding above the spacer and composer padding below), so the spacer over-padded by exactly that chrome and a short channel became scrollable. Subtract the measured chrome (scrollHeight minus spacer height, which is pad-invariant). Adds a fail-first e2e asserting a short channel bottom-aligns against the content-box floor and is not scrollable. Co-authored-by: Will Pfleger <pfleger.will@gmail.com> Signed-off-by: Will Pfleger <pfleger.will@gmail.com>