openpencil/tests/engine/vue
Ed-Key 9b48e47329 feat(canvas): render arrow stroke caps on lines and open vectors
ARROW_LINES and ARROW_EQUILATERAL stroke caps were accepted by the schema
and round-tripped from .fig files, but the renderer mapped every cap to
Butt, so imported arrows lost their heads and arrows could not be drawn
locally.

Add a pure arrow-cap geometry module to scene-graph (open-endpoint
collection with per-vertex cap overrides, weight-scaled head geometry)
and draw heads in the stroke color for LINE nodes and open VECTOR
centerline strokes, including the dashed-centerline path. Fold the head
reach into strokeOverflow and the node picture margin so heads are not
cropped by visual bounds, caches, or culling. Round-trip per-vertex
stroke caps through the .fig vector style override table so one-ended
Figma arrows import correctly. Expose both caps in the stroke inspector
cap picker with localized labels, and cover the renderer with an
arrow-stroke-caps Playwright canvas snapshot.

Claude-Session: https://claude.ai/code/session_012zjEbyLSBYyPpJP4fu1XNB
2026-08-31 21:25:38 +03:00
..
canvas feat(app): prepare documents atomically per tab (#592) 2026-08-30 12:21:49 +03:00
controls feat(canvas): render arrow stroke caps on lines and open vectors 2026-08-31 21:25:38 +03:00
editor feat(app): expand Figma menu and selection parity (#459) 2026-08-03 00:23:05 +03:00
fill feat(vue): promote color and fill primitives 2026-07-13 23:41:04 +03:00
i18n fix(i18n): respect browser locale priority 2026-07-28 03:19:32 +03:00
input fix(editor): commit vector drags on pointer release (#586) 2026-08-24 16:02:27 +03:00
layer-tree feat(editor): add shared style bindings 2026-07-17 20:28:22 +03:00
layout feat(app): migrate layout size controls 2026-07-13 15:34:25 +03:00
shared fix(canvas): pan horizontally with Shift+wheel (#523) 2026-08-14 20:58:28 +03:00
testing chore: align adapted checks with current conventions 2026-08-13 20:33:10 +03:00
document-workspace.test.ts refactor(vue): split workspace preview lifecycle 2026-08-10 20:42:56 +03:00