From 2e909b0cb5143683c8f2c73ad642d07656568eb7 Mon Sep 17 00:00:00 2001 From: Kiet Ho Date: Tue, 17 Feb 2026 10:34:10 -0800 Subject: [PATCH] fix(desktop): prevent webview from capturing drag events during pane rearrangement Electron webviews render in a separate compositing layer and capture drag events, breaking React Mosaic pane drag-and-drop when the cursor moves over a browser pane. Disable pointer events on pane content during drag so the mosaic drop targets receive events correctly. --- .../TabView/components/BasePaneWindow/BasePaneWindow.tsx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/apps/desktop/src/renderer/screens/main/components/WorkspaceView/ContentView/TabsContent/TabView/components/BasePaneWindow/BasePaneWindow.tsx b/apps/desktop/src/renderer/screens/main/components/WorkspaceView/ContentView/TabsContent/TabView/components/BasePaneWindow/BasePaneWindow.tsx index 0993cc67288..e7bf067b5f1 100644 --- a/apps/desktop/src/renderer/screens/main/components/WorkspaceView/ContentView/TabsContent/TabView/components/BasePaneWindow/BasePaneWindow.tsx +++ b/apps/desktop/src/renderer/screens/main/components/WorkspaceView/ContentView/TabsContent/TabView/components/BasePaneWindow/BasePaneWindow.tsx @@ -56,6 +56,7 @@ export function BasePaneWindow({ }: BasePaneWindowProps) { const containerRef = useRef(null); const splitOrientation = useSplitOrientation(containerRef); + const isDragging = useDragPaneStore((s) => s.draggingPaneId !== null); const setDragging = useDragPaneStore((s) => s.setDragging); const clearDragging = useDragPaneStore((s) => s.clearDragging); @@ -105,6 +106,7 @@ export function BasePaneWindow({
{children}