diff --git a/js/lib/layers.js b/js/lib/layers.js index 96ea9c0..2d4d40b 100644 --- a/js/lib/layers.js +++ b/js/lib/layers.js @@ -384,6 +384,7 @@ const layers = { if (JSON.stringify(expand_by) !== JSON.stringify([0, 0, 0, 0])) { this.expand(...expand_by); + recalculateBg(); } }, diff --git a/js/ui/tool/dream.js b/js/ui/tool/dream.js index c06c1ef..2e409f5 100644 --- a/js/ui/tool/dream.js +++ b/js/ui/tool/dream.js @@ -1516,7 +1516,6 @@ const dreamTool = () => if (global.connection === "online") { imageCollection.auto_expand_to_fit(bb); - recalculateBg(); dream_generate_callback(bb, resolution, state); } else { const stop = march(bb, { diff --git a/js/ui/tool/select.js b/js/ui/tool/select.js index 6a1095b..4b95abd 100644 --- a/js/ui/tool/select.js +++ b/js/ui/tool/select.js @@ -424,6 +424,7 @@ const selectTransformTool = () => selection.dragendcb(evn); const bb = selection.bb; + imageCollection.auto_expand_to_fit(bb); state.reset(); diff --git a/js/ui/tool/stamp.js b/js/ui/tool/stamp.js index 2ac60bd..fa64568 100644 --- a/js/ui/tool/stamp.js +++ b/js/ui/tool/stamp.js @@ -419,6 +419,10 @@ const stampTool = () => const resource = state.selected; if (resource) { + const real_bb = getBoundingBox(sx,sy,1,1); //TODO:Here we have to get the actual real bounding box somehow + imageCollection.auto_expand_to_fit(real_bb); + state.redraw(); + const {canvas, bb} = cropCanvas(ovCanvas, {border: 10}); commands.runCommand("drawImage", "Image Stamp", { image: canvas,