diff --git a/browser_tests/interaction.spec.ts b/browser_tests/interaction.spec.ts index 6730bf50c..4893adcce 100644 --- a/browser_tests/interaction.spec.ts +++ b/browser_tests/interaction.spec.ts @@ -469,6 +469,43 @@ test.describe('Canvas Interaction', () => { expect(await getCursorStyle()).toBe('default') }) + // https://github.com/Comfy-Org/litegraph.js/pull/424 + test('Properly resets dragging state after pan mode sequence', async ({ + comfyPage + }) => { + const getCursorStyle = async () => { + return await comfyPage.page.evaluate(() => { + return ( + document.getElementById('graph-canvas')!.style.cursor || 'default' + ) + }) + } + + // Initial state check + await comfyPage.page.mouse.move(10, 10) + expect(await getCursorStyle()).toBe('default') + + // Click and hold + await comfyPage.page.mouse.down() + expect(await getCursorStyle()).toBe('grabbing') + + // Press space while holding click + await comfyPage.page.keyboard.down('Space') + expect(await getCursorStyle()).toBe('grabbing') + + // Release click while space is still down + await comfyPage.page.mouse.up() + expect(await getCursorStyle()).toBe('grab') + + // Release space + await comfyPage.page.keyboard.up('Space') + expect(await getCursorStyle()).toBe('default') + + // Move mouse - cursor should remain default + await comfyPage.page.mouse.move(20, 20) + expect(await getCursorStyle()).toBe('default') + }) + test('Can pan when dragging a link', async ({ comfyPage }) => { const posSlot1 = comfyPage.clipTextEncodeNode1InputSlot await comfyPage.page.mouse.move(posSlot1.x, posSlot1.y) diff --git a/package-lock.json b/package-lock.json index ac478d95d..ce408c341 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@atlaskit/pragmatic-drag-and-drop": "^1.3.1", "@comfyorg/comfyui-electron-types": "^0.4.3", - "@comfyorg/litegraph": "^0.8.59", + "@comfyorg/litegraph": "^0.8.60", "@primevue/themes": "^4.0.5", "@tiptap/core": "^2.10.4", "@tiptap/extension-link": "^2.10.4", @@ -1940,9 +1940,9 @@ "license": "GPL-3.0-only" }, "node_modules/@comfyorg/litegraph": { - "version": "0.8.59", - "resolved": "https://registry.npmjs.org/@comfyorg/litegraph/-/litegraph-0.8.59.tgz", - "integrity": "sha512-/qyTsI+NIiMU7Ie8kJMvX+TL/axkX7wCurxjxODSdrmh9mb8eq4DfOLqRVbnCsLYEYmRlc5eBhTqp/q8zQRF5Q==", + "version": "0.8.60", + "resolved": "https://registry.npmjs.org/@comfyorg/litegraph/-/litegraph-0.8.60.tgz", + "integrity": "sha512-LkZalBcka1xVxkL7JnkF/1EzyvspLyrSthzyN9ZumWJw7kAaZkO9omraXv2t/UiFsqwMr5M/AV5UY915Vq8cxQ==", "license": "MIT" }, "node_modules/@cspotcode/source-map-support": { diff --git a/package.json b/package.json index 0d66e9cef..d675130c0 100644 --- a/package.json +++ b/package.json @@ -82,7 +82,7 @@ "dependencies": { "@atlaskit/pragmatic-drag-and-drop": "^1.3.1", "@comfyorg/comfyui-electron-types": "^0.4.3", - "@comfyorg/litegraph": "^0.8.59", + "@comfyorg/litegraph": "^0.8.60", "@primevue/themes": "^4.0.5", "@tiptap/core": "^2.10.4", "@tiptap/extension-link": "^2.10.4",