From 20cba6411bab397bf955ae359fd7b60dd0cb32fe Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Thu, 23 May 2019 16:48:07 +0100 Subject: [PATCH] Disable copy/paste and enable select-all in node-select mode --- .../@node-red/editor-client/src/js/ui/view.js | 28 +++++++++++++++---- 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/view.js b/packages/node_modules/@node-red/editor-client/src/js/ui/view.js index bf2e7dbf4..70feb2693 100755 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/view.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/view.js @@ -1388,14 +1388,19 @@ RED.view = (function() { function selectAll() { RED.nodes.eachNode(function(n) { if (n.z == RED.workspaces.active()) { - if (!n.selected) { - n.selected = true; - n.dirty = true; - moving_set.push({n:n}); + if (mouse_mode === RED.state.SELECTING_NODE) { + if (selectNodesOptions.filter && !selectNodesOptions.filter(n)) { + return; + } } } + if (!n.selected) { + n.selected = true; + n.dirty = true; + moving_set.push({n:n}); + } }); - if (activeSubflow) { + if (mouse_mode !== RED.state.SELECTING_NODE && activeSubflow) { activeSubflow.in.forEach(function(n) { if (!n.selected) { n.selected = true; @@ -1420,7 +1425,9 @@ RED.view = (function() { } selected_link = null; - updateSelection(); + if (mouse_mode !== RED.state.SELECTING_NODE) { + updateSelection(); + } redraw(); } @@ -1554,6 +1561,9 @@ RED.view = (function() { } } function deleteSelection() { + if (mouse_mode === RED.state.SELECTING_NODE) { + return; + } if (portLabelHover) { portLabelHover.remove(); portLabelHover = null; @@ -1730,6 +1740,9 @@ RED.view = (function() { } function copySelection() { + if (mouse_mode === RED.state.SELECTING_NODE) { + return; + } var nodes = []; var selection = RED.workspaces.selection(); if (selection.length > 0) { @@ -3378,6 +3391,9 @@ RED.view = (function() { * - attached to mouse for placing - "IMPORT_DRAGGING" */ function importNodes(newNodesStr,addNewFlow,touchImport) { + if (mouse_mode === RED.state.SELECTING_NODE) { + return; + } try { var activeSubflowChanged; if (activeSubflow) {