From 72508a60bf8078e14dc21f2f1372850ad862f324 Mon Sep 17 00:00:00 2001 From: Sven Carstensen Date: Thu, 2 Jul 2026 13:10:23 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20Drawflows=20L=C3=B6sch-"x"=20beim=20Rech?= =?UTF-8?q?tsklick=20unterdr=C3=BCcken?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rechts dient nur zum Verschieben von Knoten bzw. der Ansicht; das contextmenu-Event wird in der Capture-Phase gestoppt, bevor Drawflow den Lösch-Button am selektierten Knoten einblendet. Co-Authored-By: Claude Fable 5 --- src/main/frontend/node-editor/node-editor.js | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/src/main/frontend/node-editor/node-editor.js b/src/main/frontend/node-editor/node-editor.js index 888dad5..0870154 100644 --- a/src/main/frontend/node-editor/node-editor.js +++ b/src/main/frontend/node-editor/node-editor.js @@ -379,7 +379,6 @@ function attach(host) { // Ansicht verschoben (Panning). let rightDrag = null; let rightPan = null; - let suppressContextMenu = false; container.addEventListener('mousedown', e => { if (e.button !== 2) return; e.preventDefault(); @@ -395,7 +394,6 @@ function attach(host) { } else { rightPan = { lastX: e.clientX, lastY: e.clientY }; } - suppressContextMenu = true; }, true); const onRightMove = e => { @@ -424,13 +422,13 @@ function attach(host) { document.addEventListener('mousemove', onRightMove); document.addEventListener('mouseup', onRightUp); - // Browser-Kontextmenü nach Rechts-Ziehen (Knoten oder Canvas) unterdrücken. + // Rechts dient nur zum Verschieben: Browser-Kontextmenü unterdrücken und + // das Event in der Capture-Phase stoppen, bevor Drawflows eigener + // contextmenu-Handler das Lösch-"x" am selektierten Knoten einblendet. container.addEventListener('contextmenu', e => { - if (suppressContextMenu) { - e.preventDefault(); - suppressContextMenu = false; - } - }); + e.preventDefault(); + e.stopPropagation(); + }, true); // Zoomen mit dem Mausrad (ohne Strg). Läuft in der Capture-Phase und stoppt // die Propagation, damit Drawflows eigenes Strg+Rad-Zoom nicht zusätzlich