From f937ff5ec58583dbb912d6e807fca06cfff8d01c Mon Sep 17 00:00:00 2001 From: filtered <176114999+webfiltered@users.noreply.github.com> Date: Wed, 7 Aug 2024 01:32:04 +1000 Subject: [PATCH] Fix deselect delete (#51) * Fix deselect per-node always fails silently * Fix shift + drag node relying on broken deselect --- src/litegraph.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/litegraph.js b/src/litegraph.js index 31456f12f..6286753bb 100755 --- a/src/litegraph.js +++ b/src/litegraph.js @@ -6176,7 +6176,10 @@ LGraphNode.prototype.executeAction = function(action) this.graph.beforeChange(); this.node_dragged = node; } - this.processNodeSelected(node, e); + // Account for shift + click + drag + if (!(e.shiftKey && !e.ctrlKey && !e.altKey) || !node.is_selected) { + this.processNodeSelected(node, e); + } } else { // double-click /** * Don't call the function if the block is already selected. @@ -7518,6 +7521,7 @@ LGraphNode.prototype.executeAction = function(action) node.onDeselected(); } node.is_selected = false; + delete this.selected_nodes[node.id] if (this.onNodeDeselected) { this.onNodeDeselected(node);