Skyfuller1303
d4394e87cc
M1: save a copy as .fig
...
Save as now offers .figcraft and .fig as separate file types. A .fig
destination, chosen in the dialog or passed to file.saveAs and file.save,
writes the existing experimental .fig export of the document that is shown
and reports how much was left out. The file's own path, unsaved changes,
versions, branches and undo history are not touched, and a shown earlier
version stays shown while the copy is written or a Save as choice is
pending.
Plain Save no longer writes over a file whose saved path ends in .fig;
earlier builds could write native data under that name. It asks for a
destination instead.
2026-10-16 02:03:46 +02:00
bflatastic
891f0acb3c
Merge branch 'rb-560' into batch/t6
2026-10-16 02:36:56 +07:00
bflatastic
d60a27b675
Merge main into #554 : one id map for the copy, and #562 's flows, prototype and guides follow it
...
page.duplicate copies every layer with duplicate_all_into (navigation between
copied frames points at the copies) and builds the old-to-new list for flows
from that copy, instead of copying each layer separately.
2026-10-16 02:34:54 +07:00
bflatastic
db8bf6ba33
Merge main into #560 ; normalise the replacement where findReplace reads it
...
Main's case-insensitive replace loop (from an earlier PR) took the place of the
loop this change edited, so the replacement text is normalised once, where
the parameter is read.
2026-10-16 02:31:34 +07:00
bflatastic
c4c88900c4
Merge branch 'pr-563' into batch/t5
2026-10-16 01:36:10 +07:00
bflatastic
aadaa2d975
Merge branch 'pr-562' into batch/t5
2026-10-16 01:36:09 +07:00
bflatastic
580eee3572
Merge branch 'pr-561' into batch/t5
2026-10-16 01:36:08 +07:00
bflatastic
4df3702dbb
Merge branch 'pr-556' into batch/t5
2026-10-16 01:36:05 +07:00
bflatastic
d95aef1d0c
Merge branch 'pr-547' into batch/t5
2026-10-16 01:36:02 +07:00
bflatastic
887e374c58
Merge branch 'pr-545' into batch/t5
2026-10-16 01:36:00 +07:00
bflatastic
34dcf852d5
Merge branch 'pr-542' into batch/t5
2026-10-16 01:35:59 +07:00
bflatastic
d40fd80be7
Merge branch 'pr-536' into batch/t5
2026-10-16 01:35:58 +07:00
bflatastic
1c5b4d8450
Merge branch 'pr-534' into batch/t5
2026-10-16 01:35:57 +07:00
bflatastic
ef69a7f8e9
Merge branch 'pr-533' into batch/t5
2026-10-16 01:35:57 +07:00
bflatastic
a1849aae15
Merge branch 'pr-531' into batch/t5
2026-10-16 01:35:56 +07:00
bflatastic
1e25e239c2
Merge branch 'pr-527' into batch/t5
2026-10-16 01:35:55 +07:00
bflatastic
362bdce73b
Merge branch 'pr-525' into batch/t5
2026-10-16 01:35:54 +07:00
bflatastic
09e85240ea
Merge branch 'pr-522' into batch/t5
2026-10-16 01:35:52 +07:00
bflatastic
07130947f9
Merge branch 'pr-517' into batch/t5
2026-10-16 01:35:45 +07:00
bflatastic
16e26b69ff
Merge branch 'pr-516' into batch/t5
2026-10-16 01:35:44 +07:00
bflatastic
cd5c70a244
Merge branch 'pr-515' into batch/t5
2026-10-16 01:35:44 +07:00
bflatastic
0105724108
Merge branch 'pr-508' into batch/t5
2026-10-16 01:35:36 +07:00
bflatastic
b1760ff098
Merge branch 'pr-497' into batch/t5
2026-10-16 01:35:30 +07:00
bflatastic
991cb604c2
Merge branch 'pr-493' into batch/t5
2026-10-16 01:35:23 +07:00
bflatastic
e2b567d5b3
Merge branch 'pr-485' into batch/t5
2026-10-16 01:35:16 +07:00
bflatastic
77b6f1fc12
Merge branch 'pr-483' into batch/t5
2026-10-16 01:35:14 +07:00
MarekSpodBiedry
843b00b22f
text: scripted text stores CRLF, CR, U+2028 and U+2029 as LF like the editor ( #427 )
2026-10-15 17:20:58 +02:00
MarekSpodBiedry
85d97a831c
Keep flows, prototype settings and guides when duplicating a page ( #417 )
2026-10-15 17:19:38 +02:00
MarekSpodBiedry
3062c6c4d6
Keep the selected guide selected when an earlier guide is removed ( #418 )
2026-10-15 17:18:38 +02:00
MarekSpodBiedry
fdf397d7dc
Refuse to create a variable collection with a name that is already taken ( #416 )
2026-10-15 17:17:44 +02:00
NetterSilver and Claude Haiku 5.5
6ce65b24f4
Keep region loops in ring order when adding a point to a reversed edge
...
Fixes #420
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 15:12:06 +00:00
NetterSilver and Claude Haiku 5.5
a4f4869443
Point duplicated page navigation at the copied frames
...
Fixes #419
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 17:10:00 +02:00
NetterSilver and Claude Haiku 5.5
76a67e7ee5
Point library style variable bindings at imported library variables
...
Fixes #462
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 16:47:58 +02:00
NetterSilver and Claude Haiku 5.5
330b237c9c
Refresh linked layers when a library update changes only a style
...
Fixes #461
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 14:45:47 +00:00
NetterSilver and Claude Haiku 5.5
7689af50d6
Keep character-range text styles when publishing and placing components
...
Fixes #463
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 16:31:53 +02:00
NetterSilver and Claude Haiku 5.5
b61122ccca
Fix eraser missing brush crossings narrower than the sample spacing
...
Fixes #421
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 15:28:43 +02:00
NetterSilver and Claude Haiku 5.5
524b538908
Report changed=false when list indentation is capped
...
Fixes #425
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-15 13:21:05 +00:00
NetterSilver and Claude Haiku 5.5
72b826d65b
Fix cross-axis arrows and drop slot on single-item wrapped lines
...
Fixes #422
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-15 15:17:21 +02:00
NetterSilver and Claude Haiku 5.5
0d125374d3
Don't record an undo step for an abandoned empty text box
...
Fixes #423
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-15 13:05:07 +00:00
bflatastic
2ea8c3f86f
Merge #338 : M9: remove someone from a live session (@HaSh3003)
2026-10-15 19:54:09 +07:00
bflatastic
9ba207e900
Merge #400 : Let batch steps reference ids created by earlier steps (@edivanteixeira)
2026-10-15 19:54:08 +07:00
bflatastic
6551f870b6
Merge #363 : fix(engine): drag with the Text tool to make a fixed-width text box ( #360 ) (@vxMacDev)
2026-10-15 19:54:07 +07:00
bflatastic
7a9e9de38c
Merge #305 : M1: save files automatically ( #296 ) (@AganzeFelicite)
...
# Conflicts:
# crates/ui-egui/src/idle_tests.rs
# docs/mcp.md
2026-10-15 19:53:52 +07:00
NetterSilver and Claude Haiku 5.5
8199623267
Include empty outlines in no-op shapeBuilder.merge response
...
Fixes #424
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-15 14:36:34 +02:00
bflatastic
5a10623414
Merge #469 : i18n: Czech (cs) UI catalog (draft) (@Losminek)
...
# Conflicts:
# contributors/people.toml
# crates/engine/src/cmd/view.rs
# docs/mcp.md
# docs/translating.md
2026-10-15 19:34:05 +07:00
bflatastic
f3e6b00e1a
Merge #310 : engine: refuse page.move for node ids that are not pages (@midasmatterhorn)
2026-10-15 19:33:02 +07:00
bflatastic
58e33f8fbb
Merge #361 : Make edit.findReplace replace case-insensitive matches (@Silvertree2010)
2026-10-15 19:32:55 +07:00
bflatastic
f39b9a11fd
Merge #280 : Fix text edits rolling back prior document changes (@justinjohn0306)
2026-10-15 19:32:25 +07:00
bflatastic
09ad21489b
Merge #331 : fix(recovery): keep the version history and branches in recovery copies ( #185 ) (@vxMacDev)
2026-10-15 19:32:22 +07:00
NetterSilver and Claude Haiku 5.5
d0285d236e
Keep a Rectangle in the smallest synthetic perf documents
...
Fixes #393
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com >
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-15 14:23:20 +02:00