Skip to content

fix(webapp): keep select dropdowns usable inside dialogs#147

Merged
dev-jodee merged 1 commit into
mainfrom
fix/webapp-dialog-selects
Jun 2, 2026
Merged

fix(webapp): keep select dropdowns usable inside dialogs#147
dev-jodee merged 1 commit into
mainfrom
fix/webapp-dialog-selects

Conversation

@dev-jodee
Copy link
Copy Markdown
Collaborator

Summary

  • Modal dialogs (Radix react-remove-scroll + pointer-events lockout) broke the portaled base-ui Select popups inside them: options weren't clickable, the list couldn't wheel-scroll, and clicking an option dismissed the dialog.
  • Mark dialogs that contain Selects as non-modal (create-delegation, edit-plan, create-plan, time-travel) so the popup scrolls and stays interactive.
  • Re-enable pointer-events on listbox popups and ignore outside-interactions originating from a select popup (shared DialogContent) so the dialog stays open on selection.
  • Keeps the design-system Select everywhere (no native fallback); hour pickers stay hour-only (no minutes).

Test Plan

  • pnpm --filter webapp build — clean.
  • Manual: open Create Delegation → expiry hour dropdown scrolls, selects, dialog stays open. Same for Edit Plan (hour + icon), Create Plan (token/period), and the Time Travel dialog.

Notes

  • Tradeoff of non-modal: the background isn't scroll-locked/focus-trapped while these dialogs are open.

Modal dialogs (Radix react-remove-scroll + pointer-events lockout) broke
the portaled base-ui Select popups: options weren't clickable, the list
couldn't wheel-scroll, and clicking an option dismissed the dialog.

Mark dialogs that contain Selects as non-modal, re-enable pointer events
on listbox popups, and ignore outside-interactions that originate from a
select popup so the dialog stays open on selection.
@vercel
Copy link
Copy Markdown

vercel Bot commented Jun 2, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
solana-subscriptions-program Ready Ready Preview, Comment Jun 2, 2026 1:00pm

Request Review

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 2, 2026

Compute Unit Report

Instruction Samples Min CUs Max CUs Avg CUs Est Cost (Low) [SOL] Est Cost (Med) [SOL] Est Cost (High) [SOL]
cancel_subscription 22 1720 2030 1919 0.000005000 0.000005076 0.000005959
close_subscription_authority 10 1803 1833 1806 0.000005000 0.000005072 0.000005903
create_fixed_delegation 41 3517 9522 4789 0.000005001 0.000005191 0.000007394
create_plan 97 3436 12449 4923 0.000005001 0.000005196 0.000007461
create_recurring_delegation 29 3550 11055 5729 0.000005001 0.000005229 0.000007864
delete_plan 9 359 359 359 0.000005000 0.000005014 0.000005179
init_subscription_authority 173 6226 24226 9274 0.000005002 0.000005370 0.000009637
resume_subscription 3 1723 1723 1723 0.000005000 0.000005068 0.000005861
revoke_delegation 19 255 519 353 0.000005000 0.000005014 0.000005176
subscribe 32 6485 12509 8132 0.000005002 0.000005325 0.000009066
transfer_fixed 9 5479 8466 6531 0.000005001 0.000005261 0.000008265
transfer_recurring 19 5591 13091 7229 0.000005002 0.000005289 0.000008614
transfer_subscription 10 5799 7338 6293 0.000005001 0.000005251 0.000008146
update_plan 22 424 503 477 0.000005000 0.000005019 0.000005238

Generated: 2026-06-02

@dev-jodee dev-jodee merged commit ddaebad into main Jun 2, 2026
13 checks passed
@dev-jodee dev-jodee deleted the fix/webapp-dialog-selects branch June 2, 2026 13:08
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