fix: replace DialogOverlay with plain div to unblock onboarding scroll

Radix's DialogOverlay wraps content in RemoveScroll, which blocks wheel
events on elements not registered as DialogPrimitive.Content. Since the
onboarding wizard uses a custom layout (not DialogContent), scroll events
on the form container were being swallowed. Replacing with a plain div
preserves the background appearance without the scroll-locking behavior.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Dotta
2026-03-03 13:21:37 -06:00
parent 778fc3416f
commit 510a5ee1a7

View File

@@ -9,7 +9,7 @@ import { goalsApi } from "../api/goals";
import { agentsApi } from "../api/agents";
import { issuesApi } from "../api/issues";
import { queryKeys } from "../lib/queryKeys";
import { Dialog, DialogOverlay, DialogPortal } from "@/components/ui/dialog";
import { Dialog, DialogPortal } from "@/components/ui/dialog";
import {
Popover,
PopoverContent,
@@ -374,7 +374,10 @@ export function OnboardingWizard() {
}}
>
<DialogPortal>
<DialogOverlay className="bg-background" />
{/* Plain div instead of DialogOverlay — Radix's overlay wraps in
RemoveScroll which blocks wheel events on our custom (non-DialogContent)
scroll container. A plain div preserves the background without scroll-locking. */}
<div className="fixed inset-0 z-50 bg-background" />
<div className="fixed inset-0 z-50 flex" onKeyDown={handleKeyDown}>
{/* Close button */}
<button