diff --git a/frontend/src/lib/components/canvas/Canvas.svelte b/frontend/src/lib/components/canvas/Canvas.svelte index bbe9cfa..036eb53 100644 --- a/frontend/src/lib/components/canvas/Canvas.svelte +++ b/frontend/src/lib/components/canvas/Canvas.svelte @@ -164,6 +164,9 @@ // --- Pointer events --- function handlePointerDown(e: PointerEvent) { if (!containerEl) return; + // Ignore clicks on toolbar and other UI overlays + if ((e.target as HTMLElement).closest('.canvas-toolbar')) return; + const rect = containerEl.getBoundingClientRect(); const sx = e.clientX - rect.left; const sy = e.clientY - rect.top; @@ -412,6 +415,12 @@ onpointerdown={handlePointerDown} onpointermove={handlePointerMove} onpointerup={handlePointerUp} + ondblclick={(e) => { + if (!(e.target as HTMLElement).closest('[data-canvas-object-id]') && + !(e.target as HTMLElement).closest('.canvas-toolbar')) { + zoomToFit(); + } + }} ontouchstart={handleTouchStart} ontouchmove={handleTouchMove} ontouchend={handleTouchEnd} @@ -541,8 +550,8 @@ } .canvas-object-selected { - outline: 2px solid #3b82f6; - outline-offset: 2px; + outline: 1px solid rgba(99, 102, 241, 0.4); + outline-offset: 1px; border-radius: 4px; }