fix(page-nav): hold min-height:0 on scrolling middle and shrink-no on Direct bottom rows so flex pressure no longer squashes them below their NavItem floor

This commit is contained in:
v.lagerev 2026-05-14 01:05:21 +03:00
parent 15b5fb3a28
commit ba33c9e463
3 changed files with 8 additions and 1 deletions

View file

@ -384,7 +384,12 @@ export function PageNavContent({
scrollRef?: MutableRefObject<HTMLDivElement | null>;
}) {
return (
<Box grow="Yes" direction="Column">
// `minHeight: 0` is the canonical flexbox fix for a scroll child inside
// a flex column: without it the Scroll's intrinsic content height pushes
// the wrapper to that height, the column overflows the viewport, and
// every sibling with default `flex-shrink: 1` (header / footer rows)
// gets squashed below its natural height.
<Box grow="Yes" direction="Column" style={{ minHeight: 0 }}>
<Scroll
ref={scrollRef}
variant="Background"

View file

@ -15,6 +15,7 @@ export function DirectNewChatRow() {
return (
<Box
shrink="No"
style={{
padding: `${toRem(6)} ${config.space.S100}`,
borderTop: `${config.borderWidth.B300} solid ${color.Surface.ContainerLine}`,

View file

@ -57,6 +57,7 @@ export function DirectSelfRow() {
// free to fire when there's no movement (tap → openSheet).
return (
<Box
shrink="No"
{...{ [SETTINGS_SHEET_DRAG_ORIGIN_ATTR]: true }}
style={{
padding: `${toRem(6)} ${config.space.S100}`,