Skip to content

Version history submenu caps its height and scrolls - #7852

Merged
harshithmullapudi merged 1 commit into
mainfrom
harshithmullapudi/super-2451-version-history-isnt-scrollable
Sep 28, 2026
Merged

harshithmullapudi merged 1 commit into
mainfrom
harshithmullapudi/super-2451-version-history-isnt-scrollable

Conversation

@harshithmullapudi

@harshithmullapudi harshithmullapudi commented Sep 25, 2026 •

Copy link
Copy Markdown
Collaborator

Fixes SUPER-2451.

A page's Version history submenu rendered every version at full height and ran off the bottom of the screen, with no way to reach the older entries.

Root cause

DropdownMenuContent already caps itself and scrolls:

max-h-(--radix-dropdown-menu-content-available-height) overflow-x-hidden overflow-y-auto

DropdownMenuSubContent had neither � just overflow-hidden. Radix sets the same --radix-dropdown-menu-content-available-height custom property on SubContent (confirmed in @radix-ui/react-dropdown-menu@2.1.16 dist), so mirroring the root content's treatment is the entire fix. One class string, no call-site changes.

Verification

Measured with 62 versions in a 1280x720 viewport:

rendered height overflow-y scrollable fits viewport
before 3730px hidden no no
after 720px auto yes yes

Blast radius

This touches the shared primitive, so every dropdown submenu gets the cap. Seven call sites already pass their own max-h-80 / max-h-[60vh]; tailwind-merge@3.5.0 dedupes the max-h-* group, so those keep winning � verified directly:

twMerge("max-h-(--radix-...-available-height) overflow-x-hidden overflow-y-auto", "w-40 max-h-80 overflow-y-auto")
// => "overflow-x-hidden w-40 max-h-80 overflow-y-auto"

Follow-up, deliberately not in this PR

ContextMenuSubContent has the identical asymmetry, and three uncapped call sites there map over user-created sections with no bound (WorkspaceContextMenu.tsx:179, DashboardSidebarWorkspaceContextMenu.tsx:213, DashboardSidebarWorkspaceBulkContextMenu.tsx:65 � all "Move to Section"/"Move to group"). Same one-line fix, kept out to hold this PR to the reported bug.

Summary by CodeRabbit

  • Bug Fixes
    • Dropdown submenus now scroll vertically when their content exceeds the available height, while continuing to clip horizontal overflow.

…t menu does

A page's Version history submenu listed every version at full height: 62
entries rendered 3730px tall in a 720px viewport, with the overflow simply
off-screen and unreachable.

DropdownMenuContent already caps itself at
--radix-dropdown-menu-content-available-height and scrolls; SubContent had
neither the cap nor overflow-y, only overflow-hidden. Radix exposes the same
custom property on SubContent, so mirroring the root content's treatment is
the whole fix.

Measured in a Radix harness with the same 62-row submenu: before, 3730px tall
and canScroll false; after, 720px and scrollable, fitting the viewport exactly.

tailwind-merge dedupes max-h-*, so the five call sites that already pass their
own max-h-80 / max-h-[60vh] keep winning.

Fixes SUPER-2451
@coderabbitai

coderabbitai Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Advanced

Run ID: cecfe592-f877-48b2-82d4-d69aab2e413c

📥 Commits

Reviewing files that changed from the base of the PR and between 216a091 and 21dd3fc.

📒 Files selected for processing (1)
  • packages/ui/src/components/ui/dropdown-menu.tsx

Included review availability: Your plan provides up to 10 included reviews per hour; 8 remain after this review.


📝 Walkthrough

Walkthrough

DropdownMenuSubContent now uses Radix’s available content height as its maximum height. It clips horizontal overflow and scrolls vertically.

Changes

Dropdown submenu overflow

Layer / File(s) Summary
Submenu content sizing
packages/ui/src/components/ui/dropdown-menu.tsx
DropdownMenuSubContent now limits its height to Radix’s available content height, clips horizontal overflow, and scrolls vertically.

Priority: ➖ Normal

Estimated code review effort: 2 (Simple) | ~5 minutes

Change: Bug fix

Merge Risk: ⚪ Minimal · up to 21dd3

The submenu now caps its height to the available space and scrolls vertically, helping keep older history entries reachable. No concrete merge-blocking issue is established.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly and concisely describes the primary change: the Version history submenu now limits its height and supports scrolling.
Description check ✅ Passed The description explains the problem, root cause, implementation, verification results, blast radius, and follow-up scope. It is mostly complete, although it does not include the repository checklist …
  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@harshithmullapudi harshithmullapudi changed the title Version history submenu caps its height and scrolls Dropdown and context submenus cap their height and scroll Sep 25, 2026
@github-actions

github-actions Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

🧹 Preview Cleanup Complete

The following preview resources have been cleaned up:

  • ✅ Neon database branch

Thank you for your contribution! 🎉

@harshithmullapudi
harshithmullapudi force-pushed the harshithmullapudi/super-2451-version-history-isnt-scrollable branch from b57fd5f to 21dd3fc Compare September 25, 2026 13:05
@harshithmullapudi harshithmullapudi changed the title Dropdown and context submenus cap their height and scroll Version history submenu caps its height and scrolls Sep 25, 2026
@harshithmullapudi
harshithmullapudi merged commit f0996fc into main Sep 28, 2026
33 of 38 checks passed
Kitenite added a commit that referenced this pull request Oct 1, 2026
* docs: weekly update for PRs merged 2026-09-23 to 2026-09-30

Source of truth: live Notion SOP "Weekly Docs Update (automation SOP)".
Window: merged:>=2026-09-23 (139 PRs). PRs through the morning of 09-23
were covered by #7771.

Changes
- Pages: no auto-open on publish (#7790); page links and URL links split
  into their own settings (#7916, #7962, #7946); Listening agents menu with
  per-row stop and Add listening agent (#7724, #7820, #7919); globe on the
  Share button (#7766); Report on public pages (#7886); agents offer a page
  (#7759). Files: pages.mdx, cli/cli-reference.mdx.
- Settings moves: Links replaced by Browser and Files & Editor (#7916,
  #7962). Files: editor.mdx, terminal-integration.mdx, customization.mdx.
- Editor: inline rename and drag to move (#7692), Auto Save (#7693, #7916),
  open and save files outside the workspace (#7897, #7982), Copy as Markdown
  (#7591), per-pane error screen (#7983). File: editor.mdx.
- Terminal copy follows Ghostty's whitespace rules (#7868).
  File: terminal-integration.mdx.
- Agents: UFO (#7898); GPT-6 Astra, Sonnet 5.5, retiring GPT-5.5, retired
  GPT-5.4/5.3 Codex (#7783, #7894, #7935). Files: agent-integration.mdx,
  cli/cli-reference.mdx.
- Host: superset start --daemon --auto-update and update-lock permission
  errors (#7735, #7952). Files: cli/host-server.mdx, cli/cli-reference.mdx.
- Removed the mcp CLI section and the Connected Service Plugins section:
  #7776 made plugins/mcp internal, the Plugins page is staff-flagged, and
  apps/docs/AGENTS.md keeps internal commands out. Files: skills.mdx,
  cli/cli-reference.mdx.
- Slack page unfurls and details panel (#7817, #7821, #7914, #7957).
  File: use-with-slack.mdx.
- Workspaces: instant creation with background naming (#7518); recoverable
  project deletion (#7896). File: workspaces.mdx.
- Shortcuts: prev/next workspace includes Pinned and wraps (#7851); ⌘B
  collapses the sidebar to a rail (#7964). File: keyboard-shortcuts.mdx.
- Ship controls and open-in button moved to the right sidebar strip (#7958).
  Files: diff-viewer.mdx, use-with-ide.mdx.

Deliberately skipped
- Cloud workspaces/environments/sandboxes (flag-gated, AGENTS.md rule):
  #7784 #7795 #7824 #7840 #7844 #7845 #7847 #7849 #7850 #7858 #7861 #7863
  #7874 #7911 #7913 #7918 #7922 #7931 #7932 #7937 #7956 #7961 #7969 #7981
  #7637 #7794 #7789 #7838 (its CLI docs already shipped in the PR).
- Staff-only plugins: #7912 Sentry plugin, #7716, #7727, #7955.
- Already documented in their own PRs: #7917, #7921.
- Removed feature never documented: #7796 Google Calendar triggers.
- Agents chip remove/revert/default-off, never documented: #7870 #7871 #7872.
- Billing/backend policy with no docs surface: #7947, #7812, #7786, #7792,
  #7798, #7761, #7948, #7949, #7951, #7827.
- Reverted security trio: #7828 #7829 #7830 (reverted by #7834).
- Fixes restoring expected behavior: #7683 #7696 #7707 #7743 #7751 #7756
  #7764 #7765 #7781 #7788 #7791 #7823 #7825 #7833 #7837 #7852 #7857 #7860
  #7864 #7865 #7869 #7873 #7897-covered #7903 #7938 #7980 #7943 #7964-chrome.
- Mobile (no docs page): #7746 #7747 #7748 #7749 #7750 #7782 #7793 #7810
  #7814 #7816 #7889 #7968.
- Marketing, internal docs, CI, version bumps: #7651 #7744 #7752 #7771 #7774
  #7776-infra #7777 #7785 #7811 #7818 #7822 #7826 #7834 #7884 #7885 #7895
  #7909 #7933 #7934 #7942 #7944 #7965 #7966.

Validation: bun run --cwd apps/docs typecheck, bun run lint:fix,
bun run lint (exit 0), Vale on 13 changed files (0 errors, 0 warnings),
git diff --check.

* chore: log weekly docs update follow-ups

* docs: tighten review findings in the weekly update

Only the page creator can stop or add listening agents. On focus change also
saves on window blur, and Auto Save pauses on conflicts. Taken-down pages do
not unfurl. Model picker coverage matches agent-models.ts.

This branch was previously deployed

1 inactive deployment
preview — 21dd3fcb Deployed Sep 25, 2026 by harshithmullapudi via Deploy Docs #10400
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