Commit Graph
3515 Commits
Author SHA1 Message Date
Trevor BrownandClaude Sonnet 5.5 3d22c606a7 M10: Tailwind mobile merge keeps a max-width both frames share (#2272) (#2296)
inspect.code {language: "tailwind", mobile} dropped every mobile max-width and put the desktop one behind lg:, so a fixed-size layer that is the same size on both frames (a 48 x 48 badge) stretched to the full width below 1024 px. A mobile max-width that equals the desktop one is now kept as a plain class, with no lg: copy. A differing max-width still goes fluid on mobile with the desktop cap behind lg:.

Tests: the issue's two frames (a 1440 and a 390 page, each with a 48 x 48 badge) keep max-w-[48px] unprefixed, and a page-wide banner still gets its lg: cap only. The slashed-names test gave the CTAs frame the same 342 px on both frames, which the new rule rightly keeps, so its desktop frame is now 600 px wide. docs/mcp.md notes the rule.


Model-Effort: Opus 5.5 drove; Fable 5.2 queued; Opus 5.5 briefed; Sonnet 5.5 wrote at medium

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 01:44:17 +01:00
Trevor BrownandClaude Sonnet 5.5 2408d0aa81 M8: Tab while renaming moves only the rename and wraps from the last layer, as in Figma (#2311)
* M8: Tab while renaming the last layer wraps to the first, as in Figma

Measured in Figma's web app on 2026-11-12: Tab on the last row of the Layers panel commits the name and opens the first row's rename. FigCraft ended the rename there. Shift+Tab on the first row is unmeasured and unchanged, and Tab still moves the selection with the rename.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Model-Effort: Opus 5.5 drove; Fable 5.2 queued; Sonnet 5.5 measured and wrote at medium

* M8: Tab while renaming moves the rename, not the selection, as in Figma

Measured in Figma's web app (second run, 2026-11-12): while renaming, Tab and Shift+Tab open the next or previous row in edit, and the selection stays on the layer first renamed. FigCraft moved the selection to the renamed row. Tab now moves only the rename field.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Model-Effort: Opus 5.5 drove; Fable 5.2 queued; Sonnet 5.5 measured and wrote at medium

---------

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-13 01:43:49 +01:00
NetterSilverandClaude Haiku 5.5 832e790ca9 Accept compact SVG arc flags in svg_path size check (#2299)
Found while testing crates/geom/src/lib.rs:57-87 (number_past, called from svg_path at :49)

Co-authored-by: Claude Haiku 5.5 <noreply@anthropic.com>
2026-11-13 01:43:25 +01:00
NetterSilverandClaude Haiku 5.5 04a6c76a9b Return an error for non-numeric miterLimit, cornerSmoothing and paragraph props (#2303)
Found while testing crates/engine/src/cmd/props.rs:660 (also :710, :984, :985)

Co-authored-by: Claude Haiku 5.5 <noreply@anthropic.com>
2026-11-13 01:42:52 +01:00
NetterSilverandClaude Haiku 5.5 c47de279a7 Keep huge finite values finite in round_to (#2309)
Found while testing crates/geom/src/transform.rs:58 (round_to), used by crates/engine/src/automation/inspect.rs:517 (round)

Co-authored-by: Claude Haiku 5.5 <noreply@anthropic.com>
2026-11-13 01:42:15 +01:00
.CooCoo 40360c4a2a Fix main: clippy on Rust 1.100 stops at shortcuts.rs and the CLI script tests (#2316)
Rust 1.100 marks `ExitCode` as must-use and extends `needless_bool`,
so `cargo clippy --workspace --all-targets -- -D warnings` fails on main:

- `crates/ui-egui/src/shortcuts.rs`: the end of `key_event` returns the
  condition directly instead of `if ... { return true; } false`.
- `apps/figcraft-cli/src/files.rs`: three script tests now assert the exit
  code that `run_script` returns (`SUCCESS` for the two scripts that run,
  1 for the script whose step fails) instead of dropping it.
2026-11-13 01:38:53 +01:00
bflatastic 5b20fac623 Merge main into #2163 2026-11-12 14:22:18 +07:00
bflatastic 64e3684a11 Merge main into #2163 2026-11-12 14:05:23 +07:00
bflatastic 12b293efe5 Merge main into #2200 2026-11-12 14:04:50 +07:00
bflatastic 47f5518155 Merge main into #2163 2026-11-12 13:49:58 +07:00
bflatastic 7a052d73a4 Merge main into #2192 2026-11-12 13:49:25 +07:00
bflatastic d3f14f5bd8 Merge main into #2200 2026-11-12 13:48:51 +07:00
bflatastic b9486affb9 Merge main into #2163 2026-11-12 13:30:33 +07:00
bflatastic d50203228d Merge main into #2191 2026-11-12 13:29:57 +07:00
bflatastic 2636516fbb Merge main into #2192 2026-11-12 13:29:23 +07:00
bflatastic c98ad17451 Merge main into #2200 2026-11-12 13:28:50 +07:00
bflatastic d3a75187d8 Merge main into #2163 2026-11-12 13:15:51 +07:00
bflatastic 7f017a736b Merge main into #2191 2026-11-12 13:15:16 +07:00
bflatastic 23db6dbddb Merge main into #2192 2026-11-12 13:14:43 +07:00
bflatastic bd656ae5b3 Merge main into #2199 2026-11-12 13:14:10 +07:00
bflatastic 39b7c54766 Merge main into #2200 2026-11-12 13:13:38 +07:00
bflatastic 41a8915c4e Merge main into #2163 2026-11-12 12:58:57 +07:00
bflatastic f286b6bbe6 Merge main into #2191 2026-11-12 12:58:24 +07:00
bflatastic d656417b02 Merge main into #2192 2026-11-12 12:57:51 +07:00
bflatastic cee3462e40 Merge main into #2199 2026-11-12 12:57:19 +07:00
bflatastic 0bfb944d4d Merge main into #2200 2026-11-12 12:56:45 +07:00
bflatastic b6b9b2995f Merge main into #2224 2026-11-12 12:56:12 +07:00
bflatastic 632056130d Merge main into #2163 2026-11-12 12:42:58 +07:00
bflatastic 28b46bb334 Merge main into #2191 2026-11-12 12:42:24 +07:00
bflatastic 007f495e89 Merge main into #2192 2026-11-12 12:41:50 +07:00
bflatastic cf339eba02 Merge main into #2199 2026-11-12 12:41:15 +07:00
bflatastic 50d2d63090 Merge main into #2200 2026-11-12 12:40:43 +07:00
bflatastic 77fcc564a3 Merge main into #2224 2026-11-12 12:40:10 +07:00
bflatastic 997e022ecf Merge main into #2121 2026-11-12 12:39:36 +07:00
bflatastic 73e1339b14 Merge main into #2163 2026-11-12 12:27:20 +07:00
bflatastic 79248ede26 Merge main into #2191 2026-11-12 12:26:47 +07:00
bflatastic 80f4f36290 Merge main into #2192 2026-11-12 12:26:15 +07:00
bflatastic c7589dac3e Merge main into #2199 2026-11-12 12:25:42 +07:00
bflatastic 8cb527bd21 Merge main into #2200 2026-11-12 12:25:09 +07:00
bflatastic 5549c4cc2e Merge main into #2224 2026-11-12 12:24:36 +07:00
bflatastic 7f0e94508d Merge main into #2121 2026-11-12 12:23:30 +07:00
bflatastic a6f98591d3 Merge main into #2147 2026-11-12 12:22:57 +07:00
bflatastic e259dffebd Merge main into #2163 2026-11-12 12:11:40 +07:00
bflatastic 0ed464c91a Merge main into #2191 2026-11-12 12:11:07 +07:00
bflatastic 405c0939ca Merge main into #2192 2026-11-12 12:10:34 +07:00
bflatastic b16a345386 Merge main into #2199 2026-11-12 12:10:01 +07:00
bflatastic 8e04a4ab10 Merge main into #2200 2026-11-12 12:09:15 +07:00
bflatastic 04c7856d1b Merge main into #2224 2026-11-12 12:08:42 +07:00
bflatastic 05c666add5 Merge main into #2096 2026-11-12 12:07:36 +07:00
bflatastic 2d5729e7ee Merge main into #2121 2026-11-12 12:06:52 +07:00