Skip to content

fix: Pin onboarding modal navigation buttons for 13-inch displays#32

Open
kushvinth wants to merge 1 commit intovirtualcell:mainfrom
kushvinth:fix/onboarding-modal-nav-buttons-visibility
Open

fix: Pin onboarding modal navigation buttons for 13-inch displays#32
kushvinth wants to merge 1 commit intovirtualcell:mainfrom
kushvinth:fix/onboarding-modal-nav-buttons-visibility

Conversation

@kushvinth
Copy link

@kushvinth kushvinth commented Mar 4, 2026

Description

On 13-inch devices (viewport height ~900px), the onboarding modal's Previous/Next navigation buttons were not visible on the first two steps (Natural Language Queries & Available Tools). Users had to scroll the entire modal to find the buttons, which made the onboarding experience confusing many users wouldn't even realise the buttons existed.

Problem

The DialogContent container had overflow-y-auto applied to the entire modal, meaning the header, content, and footer (navigation buttons) all scrolled together as one block. On smaller screens where max-h-[70vh] (~630px on a 13-inch display) wasn't tall enough to fit all the content, the Previous/Next buttons were pushed below the visible area.

Steps to reproduce:

  1. Open the app on a 13-inch MacBooks (1440×900 resolution) or resize Chrome DevTools to that viewport
  2. Navigate to /chat
  3. Click "How to Use" to open the onboarding modal
  4. Observe that on Step 1 and Step 2, the Previous/Next buttons are hidden below the fold

Solution

Restructured the modal layout from a single scrollable container to a flex column layout with three distinct sections:

Section Behavior Classes Added
Header (title, progress bar) Fixed/pinned at top flex-shrink-0
Content (step content) Scrollable independently flex-1 min-h-0 overflow-y-auto
Footer (Previous/Next buttons) Fixed/pinned at bottom flex-shrink-0

Testing

Tested on 1440×900 viewport (13-inch MacBook simulation). Previous and Next buttons are visible on all 4 steps without scrolling. Content area scrolls independently when needed and No visual regression on larger displays

Before

CleanShot.2026-03-05.at.00.49.16.mp4
CleanShot.2026-03-05.at.00.54.44.mp4

After

CleanShot.2026-03-05.at.00.48.29.mp4
CleanShot.2026-03-05.at.00.59.37.mp4

Related Issues

@kushvinth
Copy link
Author

PTAL @KacemMathlouthi @Ezequiel-Valencia and @vcellmike, ones this gets through as explained my mike on nrnb/GoogleSummerOfCode#282 (comment)

i will start working on more core features like the UV CI/CD which i proposed here #30

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant