From e9a3f80d398cfb0b3a33156ae087650372deeb43 Mon Sep 17 00:00:00 2001 From: Mecha Baby Date: Wed, 7 Jan 2026 18:08:40 +0800 Subject: [PATCH] Fix console log encoding and improve port teleport coordinate handling - Fix garbled Chinese text in nodeSearch console log message - Improve port teleport coordinate conversion using convertEventToCanvas for better cross-environment compatibility - Use LiteGraph's built-in coordinate conversion when available, fallback to legacy method --- web/js/nodeSearch.js | 2 +- web/js/portTeleport.js | 13 +++++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/web/js/nodeSearch.js b/web/js/nodeSearch.js index 9045276..863bc5e 100644 --- a/web/js/nodeSearch.js +++ b/web/js/nodeSearch.js @@ -1246,7 +1246,7 @@ app.registerExtension({ // 右键菜单通过 getCanvasMenuItems hook 添加(新�?Context Menu API�? var currentShortcut = config.formatShortcut(); - console.log("[MechaBaby NodeSearch] 扩展已加�?- �?" + currentShortcut + " 打开搜索"); + console.log("[MechaBaby NodeSearch] 扩展已加载 - 使用 " + currentShortcut + " 打开搜索"); console.log("[MechaBaby NodeSearch] 当前语言: " + config.getLanguage()); } }); diff --git a/web/js/portTeleport.js b/web/js/portTeleport.js index c941afd..22bcfba 100644 --- a/web/js/portTeleport.js +++ b/web/js/portTeleport.js @@ -443,8 +443,17 @@ app.registerExtension({ // 检查是否是右键点击 if (e.button === 2 && this.node_capturing) { var node = this.node_capturing; - var canvasX = typeof e.canvasX === 'number' ? e.canvasX : e.clientX; - var canvasY = typeof e.canvasY === 'number' ? e.canvasY : e.clientY; + + // 优先使用 LiteGraph 提供的坐标转换,保证不同环境下一致 + var canvasX, canvasY; + if (typeof this.convertEventToCanvas === 'function') { + var canvasPos = this.convertEventToCanvas(e); + canvasX = canvasPos[0]; + canvasY = canvasPos[1]; + } else { + canvasX = typeof e.canvasX === 'number' ? e.canvasX : e.clientX; + canvasY = typeof e.canvasY === 'number' ? e.canvasY : e.clientY; + } // 尝试获取点击的端口 var slotInfo = getSlotAtPosition(node, canvasX, canvasY);