Skip to content

Commit a426d4a

Browse files
committed
fix: prevent horizontal scroll in RTL drag-and-drop
1 parent dcda5e5 commit a426d4a

File tree

2 files changed

+23
-2
lines changed

2 files changed

+23
-2
lines changed

dashboard/src/components/ui/accordion.tsx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,10 @@ const AccordionTrigger = React.forwardRef<React.ElementRef<typeof AccordionPrimi
1818
<AccordionPrimitive.Header className="flex">
1919
<AccordionPrimitive.Trigger
2020
ref={ref}
21-
className={cn('flex flex-1 items-center justify-between py-4 text-sm font-medium transition-all hover:underline text-left [&[data-state=open]>svg]:rotate-180', className)}
21+
className={cn(
22+
'flex flex-1 items-center justify-between rounded-sm py-4 text-left text-sm font-medium ring-offset-background transition-all placeholder:text-muted-foreground hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 [&[data-state=open]>svg]:rotate-180',
23+
className,
24+
)}
2225
{...props}
2326
>
2427
{children}
@@ -38,4 +41,4 @@ const AccordionContent = React.forwardRef<React.ElementRef<typeof AccordionPrimi
3841
)
3942
AccordionContent.displayName = AccordionPrimitive.Content.displayName
4043

41-
export { Accordion, AccordionItem, AccordionTrigger, AccordionContent }
44+
export { Accordion, AccordionItem, AccordionTrigger, AccordionContent }

dashboard/src/index.css

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,7 @@
125125

126126
body {
127127
@apply bg-background text-foreground font-body;
128+
overflow-x: hidden; /* Prevent horizontal scroll from drag-and-drop elements */
128129
}
129130

130131
/* Enhanced shadcn-style scrollbar */
@@ -191,6 +192,23 @@
191192
.scrollbar-muted::-webkit-scrollbar-thumb:hover {
192193
background: hsl(var(--muted-foreground) / 0.5);
193194
}
195+
196+
/* Fix for drag-and-drop elements causing horizontal overflow in RTL */
197+
[data-rbd-draggable-id],
198+
[data-rbd-drag-handle-draggable-id],
199+
[data-dnd-kit-drag-overlay] {
200+
max-width: 100vw !important;
201+
left: 0 !important;
202+
right: auto !important;
203+
}
204+
205+
/* Ensure drag overlay elements don't extend beyond viewport */
206+
[data-dnd-kit-drag-overlay] {
207+
position: fixed !important;
208+
z-index: 9999 !important;
209+
max-width: calc(100vw - 20px) !important;
210+
max-height: calc(100vh - 20px) !important;
211+
}
194212
}
195213

196214
@layer utilities {

0 commit comments

Comments
 (0)