diff --git a/docs/fikseliste.md b/docs/fikseliste.md index 6f946d5..17e2cda 100644 --- a/docs/fikseliste.md +++ b/docs/fikseliste.md @@ -12,7 +12,7 @@ Funnet ved manuell testing av frontend. Fikses som en samlet sesjon. - Lukk → fjern panel fra workspace - [x] Kanban-panel kan nå lukkes (samme fix) - [x] Ingen footer — canvas har full høyde. -- [ ] Workspace-modifikatorer (zoom-knapper, fullskjerm, snap-to-grid, tilpass) er uvirksomme. Zoom via musehjul fungerer. +- [x] Workspace-modifikatorer (zoom-knapper, fullskjerm, snap-to-grid, tilpass) fikset: stopPropagation på toolbar, zoom mot viewport-senter (±15%), fullskjerm z-index 9999, grid-linjer synligere. ## Header / innstillinger diff --git a/frontend/src/lib/components/canvas/Canvas.svelte b/frontend/src/lib/components/canvas/Canvas.svelte index 8a4a861..ba6bb05 100644 --- a/frontend/src/lib/components/canvas/Canvas.svelte +++ b/frontend/src/lib/components/canvas/Canvas.svelte @@ -394,6 +394,19 @@ } } + // --- Toolbar zoom (zoom toward viewport center) --- + function zoomStep(delta: number) { + const cx = viewport.width / 2; + const cy = viewport.height / 2; + const newZoom = clampZoom(camera.zoom * (1 + delta)); + const scale = newZoom / camera.zoom; + camera = { + x: cx - scale * (cx - camera.x), + y: cy - scale * (cy - camera.y), + zoom: newZoom, + }; + } + // --- Fullscreen --- function toggleFullscreen() { isFullscreen = !isFullscreen; @@ -456,18 +469,19 @@ aria-label="Canvas" > -
+ +
e.stopPropagation()} onpointerdown={(e) => e.stopPropagation()}> {Math.round(camera.zoom * 100)}%