diff --git a/src/canvasManager.js b/src/canvasManager.js index c65e577..d90c715 100644 --- a/src/canvasManager.js +++ b/src/canvasManager.js @@ -11,7 +11,7 @@ const SVG_NS = "http://www.w3.org/2000/svg"; * @param {Array} shapesArray * @param {Array} patches */ -export function drawAllShapesOnCanvas(container, shapesArray, patches = []) { +export function createOrUpdateShapes(container, shapesArray, patches = []) { if (!container || !(container instanceof SVGElement)) { return; } diff --git a/src/main.js b/src/main.js index 4839481..cb5c41a 100644 --- a/src/main.js +++ b/src/main.js @@ -1,6 +1,6 @@ // main.js import { initRepo, addCircle, addTriangle, moveShape } from "./docManager.js" -import { drawAllShapesOnCanvas } from "./canvasManager.js" +import { createOrUpdateShapes } from "./canvasManager.js" let isDragging = false; let selectedShapeId = null; @@ -26,13 +26,11 @@ const handle = initRepo() await handle.whenReady() // draw current state -drawAllShapesOnCanvas(container, handle.docSync().shapes) +createOrUpdateShapes(container, handle.docSync().shapes) // 2. Subscribe so we can re-render whenever doc changes handle.on("change", (change) => { - // Only redraw if we're not currently dragging - // TODO if (!isDragging) { - drawAllShapesOnCanvas(container, change.doc.shapes, change.patches); + createOrUpdateShapes(container, change.doc.shapes, change.patches); }); // 3. Buttons holen