figcraft/docs
bflatastic f2c22213d6 M1: canvas navigation, guides and grids behaviour suite and fixes
A behaviour suite for canvas navigation, rulers, guides, layout grids, outline mode and measuring
(`crates/engine/src/view_behaviour_tests.rs`, 18 tests, ~120 table rows and checks), written from
the public documentation with a one-line derivation per case; where the documentation is silent the
case says so and pins today's behaviour. Plus the fixes it found:

- **Pixel grid** shows from 400% (it waited for 800%). The threshold, pixel preview's resolution
  and wheel panning (`ViewState::pixel_grid_shown`, `pixel_preview_scale`, `scroll`) now live in the
  engine; the canvas calls them.
- **Guides belong to the page or a top-level frame.** A guide dropped over a nested frame goes to
  the frame holding it (`guides::drop_owner`), `guide.add` refuses nested frames, and a frame moved
  into another frame keeps its guides but they stop drawing, snapping and measuring.
- **Selecting guides:** a click selects a guide (`guide.select`, new command, Spanish label added);
  Delete/Backspace removes it, the arrows across it nudge it (Shift: big nudge), Escape deselects;
  right-click opens the context menu with Remove guide (`guide.remove` without an index removes the
  selected guide). A click without a move no longer records an empty undo step.
- **Alt-drag** on a guide drops a copy; **holding Alt while dragging** a guide shows its distances
  to the nearest edges inside the frame it crosses (`distance::from_guide`).
- **Layout grids:** columns/rows with a fixed width and count 0 are **Auto** (as many as fit; the
  Count field shows Auto); grids don't show or snap on a **rotated frame**.
- **Outline mode:** shapes are hit on their outlines, so a click reaches layers drawn behind
  (`geometry::hit_outlines`).
2026-10-12 01:32:04 +07:00
..
brand M0.1-M0.3: workspace, licences, geom/color/doc crates 2026-10-09 12:01:57 -04:00
architecture.md M8: Windows QA fixes (#131) 2026-10-11 18:20:38 +07:00
auto-layout-parity.md M2: auto layout behaviour suite and fixes (#130) 2026-10-11 17:53:11 +07:00
cli.md M6: .fig import (best effort) (#132) 2026-10-11 18:59:59 +07:00
collab-protocol.md M9: hosting figcraft-server: wss in the desktop app, server releases, deployment guide (#125) 2026-10-11 15:52:27 +07:00
collaboration-parity.md M9: hosting figcraft-server: wss in the desktop app, server releases, deployment guide (#125) 2026-10-11 15:52:27 +07:00
components-parity.md M3: styles and variables behaviour suite and fixes 2026-10-12 00:57:43 +07:00
contributors.md About: Contributors and Models tabs with full credits; bump version to 0.2.0 (from 0.1.0) for release 2026-10-09 21:10:33 -04:00
control-protocol.md M4: shapes and vector behaviour suite and fixes 2026-10-12 01:32:04 +07:00
dev-mode-parity.md M7: export and inspect behaviour suite and fixes 2026-10-12 01:32:04 +07:00
file-format-parity.md M7: export and inspect behaviour suite and fixes 2026-10-12 01:32:04 +07:00
gaps.md M1: canvas navigation, guides and grids behaviour suite and fixes 2026-10-12 01:32:04 +07:00
hardware-parity.md M8: Windows QA fixes (#131) 2026-10-11 18:20:38 +07:00
localization-parity.md M7: localization layer (#128) 2026-10-11 16:21:16 +07:00
mcp.md M1: canvas navigation, guides and grids behaviour suite and fixes 2026-10-12 01:32:04 +07:00
parity-checklist.md M5: Display P3: gamut warning and soft-proof sRGB (#127) 2026-10-11 17:20:10 +07:00
plugins.md M7: plugin panels and settings (#124) 2026-10-11 14:45:19 +07:00
prototyping-parity.md M5: prototyping behaviour suite and fixes 2026-10-12 00:57:43 +07:00
release-playbook.md M0.9: MCP server + figcraft-cli, PDF export, web app, release/CI packaging, vector edit mode, workspace lint cleanup 2026-10-09 13:31:53 -04:00
releasing.md M9: hosting figcraft-server: wss in the desktop app, server releases, deployment guide (#125) 2026-10-11 15:52:27 +07:00
roadmap.md M5: prototyping behaviour suite and fixes 2026-10-12 00:57:43 +07:00
server.md M9: hosting figcraft-server: wss in the desktop app, server releases, deployment guide (#125) 2026-10-11 15:52:27 +07:00
target-app-parity.md M1: canvas navigation, guides and grids behaviour suite and fixes 2026-10-12 01:32:04 +07:00
translating.md M7: localization layer (#128) 2026-10-11 16:21:16 +07:00
ui-parity.md M1: canvas navigation, guides and grids behaviour suite and fixes 2026-10-12 01:32:04 +07:00