velxio/frontend/src/components
David Montero Crespo 77a63ca10b fix(canvas): three desktop interaction bugs
Mobile was working fine; desktop had a string of issues that surfaced
together on the Pico Doom example after the simulator/wiring fixes.

1. Selection action bar appeared during simulation, intercepting button
   presses. handleComponentMouseDown unconditionally called
   e.stopPropagation() + setSelectedComponentId, so clicking a wokwi-
   pushbutton on a running canvas ate the mousedown — the
   button-press event never fired and the floating Rotate/Delete bar
   popped up on top of the button. Now: while running, the handler
   returns early so the event propagates to the underlying component
   and the canvas stays read-only.

2. The selection action bar was always visible on desktop. It was
   introduced as the primary delete UI for touch devices (no Delete
   key, no right-click), but it kept showing on mouse-and-keyboard
   too — covering pins and intercepting clicks. Now gated on
   isTouchDevice (already wired via useIsCoarsePointer) AND !running.
   Desktop users keep Delete key + right-click context menu for the
   same operations.

3. Left-click drag on the canvas background didn't pan. Pan was
   limited to middle/right click. Now left-click on empty canvas
   panning works too (component mousedowns stopPropagation so they
   still drag the component, not the camera). Wiring mode keeps left
   click for waypoint drops, so the pan only kicks in when not in
   wire mode and not in a property dialog. Matches Figma / Miro /
   draw.io convention.

Build verified.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-15 23:59:32 -03:00
..
analog-ui
components-instruments
customChips feat(editor): translate Oscilloscope + property dialog + selection bar + console + custom chips + sensor + board picker (Editor block 9) 2026-05-09 12:25:30 -03:00
editor feat(oss): portable .vlx project export/import for self-hosters 2026-05-14 16:33:00 -03:00
examples Add HD44780Decoder and various I2C sketches 2026-05-12 14:26:33 -03:00
layout refactor(oss-split): remove auth/admin/profile frontend from OSS 2026-05-14 15:31:12 -03:00
raspberry-pi feat(i18n): translate small editor remates + admin internals (Blocks 11+12) 2026-05-09 16:22:16 -03:00
simulator fix(canvas): three desktop interaction bugs 2026-05-15 23:59:32 -03:00
ui
velxio-components
ComponentPickerModal.css
ComponentPickerModal.tsx feat(editor): translate ComponentPicker + LibraryManager modals (Editor block 7) 2026-05-09 11:29:07 -03:00
DynamicComponent.tsx fix(canvas): traceDetailed not defined when attaching events on parts with active-device path 2026-05-15 23:55:07 +02:00