hermes-agent/web/src/components
Brian D. Evans 6a20ad6c0a
fix(dashboard): constrain theme picker dropdown height so themes are scrollable (#25213) (#25220)
The header theme picker (`ThemeSwitcher`) renders a `role="listbox"` popup
with no `max-height` or overflow. With 20+ community themes installed under
`~/.hermes/dashboard-themes/`, the list extends past the viewport and themes
at the top or bottom are unreachable — the user reports only 15 of 26 themes
visible, with no scrollbar to access the rest.

Sibling switchers (`LanguageSwitcher`, `SlashPopover`) already cap their
listboxes (`max-h-80 overflow-y-auto` / `max-h-64 overflow-y-auto`); this
just brings the theme picker into line. Scoped to the component instead of
a global `div[role="listbox"]` CSS rule so other dropdowns aren't affected.

`70dvh` matches the user's tested workaround and the `dvh` unit handles
mobile browser UI chrome correctly (unlike `vh`).

Fixes #25213.

Co-authored-by: briandevans <252620095+briandevans@users.noreply.github.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-18 10:23:03 -04:00
..
ui fix(dashboard): UI polish — modals, layout, consistency, test fixes 2026-05-12 13:59:22 -04:00
AutoField.tsx fix(web): render object config values structurally (#10949) 2026-05-18 10:03:25 -04:00
Backdrop.tsx chore: remove comments 2026-04-28 12:28:08 -04:00
ChatSidebar.tsx fix(dashboard): respect HERMES_BASE_PATH in WebSocket URLs (#25547) 2026-05-17 11:39:37 -07:00
DeleteConfirmDialog.tsx feat: add sidebar 2026-04-24 00:56:19 -04:00
LanguageSwitcher.tsx feat(i18n): localize all gateway commands + web dashboard, add 8 new locales (16 total) (#22914) 2026-05-10 07:14:14 -07:00
Markdown.tsx feat(web): add /api/pty WebSocket bridge to embed TUI in dashboard 2026-04-24 10:51:49 -04:00
ModelInfoCard.tsx fix(dashboard): keep ui imports browser-safe after rebase 2026-04-29 01:47:13 -04:00
ModelPickerDialog.tsx Merge upstream/main and address Copilot review feedback 2026-04-30 06:43:22 -04:00
NouiTypography.tsx Merge upstream/main and address Copilot review feedback 2026-04-30 06:43:22 -04:00
OAuthLoginModal.tsx fix(dashboard): avoid node-only ui imports in browser 2026-04-29 01:42:50 -04:00
OAuthProvidersCard.tsx fix(dashboard): UI polish — modals, layout, consistency, test fixes 2026-05-12 13:59:22 -04:00
PlatformsCard.tsx fix(dashboard): keep ui imports browser-safe after rebase 2026-04-29 01:47:13 -04:00
SidebarFooter.tsx fix(dashboard): avoid node-only ui imports in browser 2026-04-29 01:42:50 -04:00
SidebarStatusStrip.tsx feat: add sidebar 2026-04-24 00:56:19 -04:00
SlashPopover.tsx fix(dashboard): keep ui imports browser-safe after rebase 2026-04-29 01:47:13 -04:00
ThemeSwitcher.tsx fix(dashboard): constrain theme picker dropdown height so themes are scrollable (#25213) (#25220) 2026-05-18 10:23:03 -04:00
Toast.tsx feat: dashboard OAuth provider management 2026-04-13 11:18:18 -07:00
ToolCall.tsx fix(dashboard): keep ui imports browser-safe after rebase 2026-04-29 01:47:13 -04:00