diff --git a/src/renderer/extensions/vueNodes/composables/useNodePointerInteractions.ts b/src/renderer/extensions/vueNodes/composables/useNodePointerInteractions.ts index 295dea61f..61ca6dcf2 100644 --- a/src/renderer/extensions/vueNodes/composables/useNodePointerInteractions.ts +++ b/src/renderer/extensions/vueNodes/composables/useNodePointerInteractions.ts @@ -32,17 +32,8 @@ watch(space, (isPressed) => { if (activeElement.value === canvas.canvas) return if (isEditableElement(activeElement.value || null)) return - // Mirror litegraph's processKey behavior for spacebar - if (isPressed) { - canvas.read_only = true - // Set dragging_canvas based on current pointer state - if (canvas.pointer?.isDown) { - canvas.dragging_canvas = true - } - } else { - canvas.read_only = false - canvas.dragging_canvas = false - } + // pointer events will bubble to litegraph + canvas.read_only = isPressed }) export function useNodePointerInteractions( diff --git a/src/renderer/extensions/vueNodes/composables/useSlotLinkInteraction.ts b/src/renderer/extensions/vueNodes/composables/useSlotLinkInteraction.ts index 14a9ec005..1e4539d0d 100644 --- a/src/renderer/extensions/vueNodes/composables/useSlotLinkInteraction.ts +++ b/src/renderer/extensions/vueNodes/composables/useSlotLinkInteraction.ts @@ -410,13 +410,8 @@ export function useSlotLinkInteraction({ const handlePointerMove = (event: PointerEvent) => { if (!pointerSession.matches(event)) return - const canvas = app.canvas - // When spacebar is held (read_only=true) and left mouse button is down, - // delegate to litegraph's processMouseMove for panning - const isLeftButtonDown = (event.buttons & 1) !== 0 - if (canvas?.read_only && isLeftButtonDown) { - canvas.processMouseMove(event) - } + // When in panning mode (read_only), let events bubble to litegraph + if (app.canvas?.read_only) return event.stopPropagation()