Fix #282: jumpnav visible on mobile initial load #285

Merged
fen merged 1 commits from fix-282 into dev 2026-09-18 01:35:16 +00:00
Collaborator

Ref #282

At 375x812 on a long paste, #jumpnav kept .hidden on initial load because the visibility check ran before the mobile layout settled and no later event corrected it. A manual resize flipped it visible.

Fix: re-run the visibility check after layout settles — double requestAnimationFrame, window load, a 300ms fallback timer, and a ResizeObserver on document.body for late content growth. Existing scroll/resize/input paths and the editor-side textarea scroller are unchanged.

Verified with rendered CDP probes:

  • 375x812 initial load, no resize: #jumpnav visible (hidden=false, display=flex, scrollHeight 9125 in 812px viewport)
  • 1400x900: visible, no regression
  • /new editor: nav hidden for short textarea, appears on input growth
Ref #282 At 375x812 on a long paste, #jumpnav kept .hidden on initial load because the visibility check ran before the mobile layout settled and no later event corrected it. A manual resize flipped it visible. Fix: re-run the visibility check after layout settles — double requestAnimationFrame, window load, a 300ms fallback timer, and a ResizeObserver on document.body for late content growth. Existing scroll/resize/input paths and the editor-side textarea scroller are unchanged. Verified with rendered CDP probes: - 375x812 initial load, no resize: #jumpnav visible (hidden=false, display=flex, scrollHeight 9125 in 812px viewport) - 1400x900: visible, no regression - /new editor: nav hidden for short textarea, appears on input growth
fen added 1 commit 2026-09-18 01:30:23 +00:00
Fix #282: re-evaluate jumpnav visibility after layout settles on load
CI / docker (pull_request) Skipped
CI / test (pull_request) Successful in 25s
3460d54fce
The initial refresh() ran before the mobile layout settled (media queries,
fonts, async highlighting) and under-measured the content, leaving #jumpnav
hidden on long pastes at 375x812 until a resize event. Re-check after a
double rAF, on window load, after 300ms, and via a ResizeObserver on
document.body for late content growth. Editor textarea scroller unchanged.
fen merged commit ed435c5e13 into dev 2026-09-18 01:35:16 +00:00
Sign in to join this conversation.