diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/view-tools.js b/packages/node_modules/@node-red/editor-client/src/js/ui/view-tools.js index a781c44fc..2bec5669c 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/view-tools.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/view-tools.js @@ -105,6 +105,9 @@ RED.view.tools = (function() { $(document).one('keyup',endKeyboardMove); endMoveSet = true; } + var dim = RED.view.dimensions(); + var space_width = dim.width; + var space_height = dim.height; var minX = 0; var minY = 0; var node; @@ -120,6 +123,12 @@ RED.view.tools = (function() { node.n.dirty = true; node.n.x += dx; node.n.y += dy; + if ((node.n.x +node.n.w/2) >= space_width) { + node.n.x = space_width -node.n.w/2; + } + if ((node.n.y +node.n.h/2) >= space_height) { + node.n.y = space_height -node.n.h/2; + } node.n.dirty = true; if (node.n.type === "group") { RED.group.markDirty(node.n); 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 02b8df5d8..384813b2f 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 @@ -6236,6 +6236,12 @@ RED.view = (function() { showQuickAddDialog:showQuickAddDialog, calculateNodeDimensions: calculateNodeDimensions, getElementPosition:getElementPosition, - showTooltip:showTooltip + showTooltip:showTooltip, + dimensions: function() { + return { + width: space_width, + height: space_height + }; + } }; })();