diff --git a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-node-chromium-2x-linux.png b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-node-chromium-2x-linux.png index bed523b29..1cc2c41c3 100644 Binary files a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-node-chromium-2x-linux.png and b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-node-chromium-2x-linux.png differ diff --git a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-node-chromium-linux.png b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-node-chromium-linux.png index 13eb42680..6e8e19c12 100644 Binary files a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-node-chromium-linux.png and b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-node-chromium-linux.png differ diff --git a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-pinned-node-chromium-2x-linux.png b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-pinned-node-chromium-2x-linux.png index ea2d05707..a7d47069a 100644 Binary files a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-pinned-node-chromium-2x-linux.png and b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-pinned-node-chromium-2x-linux.png differ diff --git a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-pinned-node-chromium-linux.png b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-pinned-node-chromium-linux.png index 3efee6da9..8bb023ff7 100644 Binary files a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-pinned-node-chromium-linux.png and b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-pinned-node-chromium-linux.png differ diff --git a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-unpinned-node-chromium-2x-linux.png b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-unpinned-node-chromium-2x-linux.png index bed523b29..1cc2c41c3 100644 Binary files a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-unpinned-node-chromium-2x-linux.png and b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-unpinned-node-chromium-2x-linux.png differ diff --git a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-unpinned-node-chromium-linux.png b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-unpinned-node-chromium-linux.png index 13eb42680..6e8e19c12 100644 Binary files a/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-unpinned-node-chromium-linux.png and b/browser_tests/rightClickMenu.spec.ts-snapshots/right-click-unpinned-node-chromium-linux.png differ diff --git a/src/extensions/core/widgetInputs.ts b/src/extensions/core/widgetInputs.ts index f83bc2cf9..c1e2218a0 100644 --- a/src/extensions/core/widgetInputs.ts +++ b/src/extensions/core/widgetInputs.ts @@ -782,7 +782,27 @@ app.registerExtension({ ? origGetExtraMenuOptions.apply(this, arguments) : undefined + const getPointerCanvasPos = () => { + const pos = this.graph?.list_of_graphcanvas?.at(0)?.graph_mouse + return pos ? { canvasX: pos[0], canvasY: pos[1] } : undefined + } + if (this.widgets) { + const { canvasX, canvasY } = getPointerCanvasPos() + const widget = this.getWidgetOnPos(canvasX, canvasY) + // @ts-expect-error custom widget type + if (widget && widget.type !== CONVERTED_TYPE) { + const config = getConfig.call(this, widget.name) ?? [ + widget.type, + widget.options || {} + ] + if (isConvertibleWidget(widget, config)) { + options.push({ + content: `Convert ${widget.name} to input`, + callback: () => convertToInput(this, widget, config) && false + }) + } + } let toInput = [] let toWidget = [] for (const w of this.widgets) {