diff --git a/packages/app/src/components/canvas/Artboard.tsx b/packages/app/src/components/canvas/Artboard.tsx
index 659ab3d..2e5f3d7 100644
--- a/packages/app/src/components/canvas/Artboard.tsx
+++ b/packages/app/src/components/canvas/Artboard.tsx
@@ -165,6 +165,7 @@ export function Artboard({ id, label, x, y, width, height, renderUrl }: Artboard
return (
e.stopPropagation()}
onClick={(e) => { e.stopPropagation(); selectArtboard(id); }}
>
{/* Label / drag handle */}
diff --git a/packages/app/src/components/canvas/Canvas.tsx b/packages/app/src/components/canvas/Canvas.tsx
index 81ae6b5..0b6da16 100644
--- a/packages/app/src/components/canvas/Canvas.tsx
+++ b/packages/app/src/components/canvas/Canvas.tsx
@@ -76,8 +76,10 @@ export function Canvas() {
return;
}
- // Artboard creation tool: click on canvas to place a new artboard
- if (activeTool === 'artboard' && e.target === e.currentTarget && workspaceId) {
+ // Artboard creation tool: click on canvas to place a new artboard.
+ // Note: existing artboards stop propagation on mousedown so this path
+ // only fires on empty canvas space.
+ if (activeTool === 'artboard' && workspaceId) {
const label = `Artboard ${Date.now().toString(36).slice(-4).toUpperCase()}`;
createArtboardMutation({
workspace_id: workspaceId,