diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/view-zoom-constants.js b/packages/node_modules/@node-red/editor-client/src/js/ui/view-zoom-constants.js index ff32bb92d..92e0f526c 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/view-zoom-constants.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/view-zoom-constants.js @@ -3,7 +3,7 @@ */ RED.view.zoomConstants = { // Zoom limits - MIN_ZOOM: 0.15, // Default minimum, will be dynamically calculated to fit canvas + MIN_ZOOM: 0.05, // Default minimum, will be dynamically calculated to fit canvas MAX_ZOOM: 2.0, // Zoom step for keyboard/button controls 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 e61375847..bbe0438c7 100644 --- 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 @@ -640,6 +640,16 @@ RED.view = (function() { spacebarPressed = false; } }) + + // Recalculate minimum zoom when window resizes + $(window).on("resize.red-ui-view", function() { + // Recalculate minimum zoom to ensure canvas fits in viewport + var newMinZoom = calculateMinZoom(); + // If current zoom is below new minimum, adjust it + if (scaleFactor < newMinZoom) { + zoomView(newMinZoom); + } + }) // Workspace Background eventLayer.append("svg:rect")