Skip to content

Commit a9bf335

Browse files
committed
Fix for resizeable handle z-index
1 parent eda3380 commit a9bf335

File tree

1 file changed

+17
-11
lines changed

1 file changed

+17
-11
lines changed

apps/webapp/app/components/primitives/Resizable.tsx

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -25,36 +25,42 @@ const ResizableHandle = ({
2525
withHandle?: boolean;
2626
}) => (
2727
<PanelResizer
28+
onMouseDown={(e: React.MouseEvent) => {
29+
e.preventDefault();
30+
}}
2831
className={cn(
29-
// Base styles
3032
"group relative flex items-center justify-center focus-custom",
31-
// Horizontal orientation (default)
32-
"w-0.75 after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2",
33-
// Vertical orientation
33+
// Horizontal size
34+
"w-0.75",
35+
// Vertical size
3436
"data-[handle-orientation=vertical]:h-0.75 data-[handle-orientation=vertical]:w-full",
37+
// Normal-state line (::before) — 1px, centered in the 3px handle
38+
"before:absolute before:left-px before:top-0 before:h-full before:w-px before:bg-grid-bright",
39+
"data-[handle-orientation=vertical]:before:left-0 data-[handle-orientation=vertical]:before:top-px data-[handle-orientation=vertical]:before:h-px data-[handle-orientation=vertical]:before:w-full",
40+
// Hit area (::after pseudo) for easier grabbing
41+
"after:absolute after:inset-y-0 after:left-1/2 after:w-3 after:-translate-x-1/2",
3542
"data-[handle-orientation=vertical]:after:inset-x-0 data-[handle-orientation=vertical]:after:inset-y-auto",
3643
"data-[handle-orientation=vertical]:after:left-0 data-[handle-orientation=vertical]:after:top-1/2",
37-
"data-[handle-orientation=vertical]:after:h-1 data-[handle-orientation=vertical]:after:w-full",
44+
"data-[handle-orientation=vertical]:after:h-3 data-[handle-orientation=vertical]:after:w-full",
3845
"data-[handle-orientation=vertical]:after:-translate-y-1/2 data-[handle-orientation=vertical]:after:translate-x-0",
3946
className
4047
)}
4148
size="3px"
4249
{...props}
4350
>
44-
{/* Horizontal orientation line indicator */}
45-
<div className="absolute left-[0.0625rem] top-0 z-20 h-full w-px bg-grid-bright transition group-hover:left-0 group-hover:w-0.75 group-hover:bg-indigo-500 group-data-[handle-orientation=vertical]:hidden" />
46-
{/* Vertical orientation line indicator */}
47-
<div className="absolute left-0 top-[0.0625rem] z-20 hidden h-px w-full bg-grid-bright transition group-hover:top-0 group-hover:h-0.75 group-hover:bg-indigo-500 group-data-[handle-orientation=vertical]:block" />
51+
{/* Indigo hover overlay — absolutely positioned on top of everything */}
52+
<div className="pointer-events-none absolute left-0 top-0 z-10 h-full w-0.75 bg-indigo-500 opacity-0 transition-opacity group-hover:opacity-100 group-data-[handle-orientation=vertical]:hidden" />
53+
<div className="pointer-events-none absolute left-0 top-0 z-10 hidden h-0.75 w-full bg-indigo-500 opacity-0 transition-opacity group-hover:opacity-100 group-data-[handle-orientation=vertical]:block" />
4854
{withHandle && (
4955
<>
5056
{/* Horizontal orientation dots (vertical arrangement) */}
51-
<div className="z-10 flex h-5 w-0.75 flex-col items-center justify-center gap-[0.1875rem] bg-background-dimmed group-hover:hidden group-data-[handle-orientation=vertical]:hidden">
57+
<div className="relative z-[1] flex h-5 w-0.75 flex-col items-center justify-center gap-[0.1875rem] bg-background-dimmed transition-opacity group-hover:opacity-0 group-data-[handle-orientation=vertical]:hidden">
5258
{Array.from({ length: 3 }).map((_, index) => (
5359
<div key={index} className="h-[0.1875rem] w-0.75 rounded-full bg-charcoal-600" />
5460
))}
5561
</div>
5662
{/* Vertical orientation dots (horizontal arrangement) */}
57-
<div className="z-10 hidden h-0.75 w-5 flex-row items-center justify-center gap-[0.1875rem] bg-background-dimmed group-hover:hidden group-data-[handle-orientation=vertical]:flex">
63+
<div className="relative z-[1] hidden h-0.75 w-5 flex-row items-center justify-center gap-[0.1875rem] bg-background-dimmed transition-opacity group-hover:opacity-0 group-data-[handle-orientation=vertical]:flex">
5864
{Array.from({ length: 3 }).map((_, index) => (
5965
<div key={index} className="h-0.75 w-[0.1875rem] rounded-full bg-charcoal-600" />
6066
))}

0 commit comments

Comments
 (0)