BFlat
9fdd226509
Merge pull request #664 from phonedu/feat/vue-code-target
...
M6: a Vue code target (single-file components)
2026-10-27 00:48:53 +07:00
BFlat
b6fc2fd1ab
Merge pull request #1152 from ricardoavilesfoto-collab/pr/fig-export-for-figma
...
.fig export: files Figma imports, with component set properties
2026-10-27 00:35:31 +07:00
bflatastic
fd0f4d8b60
Merge main into #664
...
Main's class_name takes the node kind (#1372 ); Vue's slot names pass slot.
2026-10-27 00:30:42 +07:00
BFlat
83c7940293
Merge pull request #1384 from muamerETS/fix/1370-drag-unfilled-selection
...
M1: a selected unfilled shape drags over a filled layer stacked below it (#1370 )
2026-10-27 00:25:59 +07:00
BFlat
7cb369db8c
Merge pull request #1372 from lileeei/1235-transliterate-class-names
...
Transliterate non-ASCII layer names into code-export class names
2026-10-27 00:23:36 +07:00
bflatastic
b3016f7089
Merge main into #1152
2026-10-27 00:14:07 +07:00
BFlat
8583588839
Merge pull request #1366 from Silvertree2010/fix/h2716-px-to-rem-conversion-rounds-to-2
...
Keep full precision when converting px to rem in code export
2026-10-27 00:13:42 +07:00
BFlat
ad9abe7ce6
Merge pull request #1133 from g1obalworlds/fix-batch-rollback-closed-tabs
...
engine: restore tabs closed inside a failed command group
2026-10-27 00:13:37 +07:00
BFlat
e8656be10e
Merge pull request #824 from youngeuibae/page-api
...
web: window.figcraft, the control channel for the page
2026-10-27 00:13:31 +07:00
BFlat
5890784fe2
Merge pull request #1369 from mojtabajafarzadeh/fix/share-key-and-large-file-publish
...
follow-up: server publish timeout, key-to-server binding, and "Go to main component" in the context menu
2026-10-27 00:13:25 +07:00
BFlat
4b000eeddf
Merge pull request #1371 from denisg0mes/crisp-magnified-images
...
M7: show a magnified image's pixels on the canvas
2026-10-27 00:13:20 +07:00
BFlat
dd5b5c0dc0
Merge pull request #1374 from Ridzzz0Alam/fix/1330-save-disk-changes
...
fix: Issue #1330 Save no longer overwrites changes another app made to the open file
2026-10-27 00:13:15 +07:00
BFlat
adea3a5550
Merge pull request #1053 from Silvertree2010/fix/h1274-title-case-leaves-a-word-lowerca
...
Capitalise title-case word after an opening apostrophe
2026-10-27 00:13:01 +07:00
BFlat
4392fe50d3
Merge pull request #1373 from Ridzzz0Alam/fix/1338-instance-swap-scroll
...
fix: Issue #1338 an instance-swap property's default menu scrolls
2026-10-27 00:11:16 +07:00
bflatastic
15c6834114
Merge main into #1384
2026-10-27 00:10:34 +07:00
BFlat
58718d9a09
Merge pull request #959 from Silvertree2010/fix/h1129-saving-a-document-with-a-nan-num
...
Save NaN or infinite numbers as 0 so the file reopens
2026-10-27 00:09:53 +07:00
BFlat
23963491b3
Merge pull request #1378 from muamerETS/fix/open-issues
...
M4: truncated text fills its last line, keeps truncating when resized, and auto height takes max lines (#1375 , #1376 , #1377 )
2026-10-27 00:09:39 +07:00
bflatastic
8653597c3d
#664 : Vue layer trees import connected components in <script setup>
2026-10-26 23:53:30 +07:00
bflatastic
4176400e09
Merge main into #664
...
# Conflicts:
# crates/engine/src/code_connect.rs
# crates/engine/src/codegen.rs
# crates/engine/src/component_codegen.rs
# crates/engine/src/lib.rs
# crates/engine/src/playground.rs
# crates/ui-egui/locales/bn.toml
# crates/ui-egui/locales/cs.toml
# crates/ui-egui/locales/de.toml
# crates/ui-egui/locales/en.toml
# crates/ui-egui/locales/es.toml
# crates/ui-egui/locales/fi.toml
# crates/ui-egui/locales/fr.toml
# crates/ui-egui/locales/id.toml
# crates/ui-egui/locales/ja.toml
# crates/ui-egui/locales/ka.toml
# crates/ui-egui/locales/ko.toml
# crates/ui-egui/locales/nl.toml
# crates/ui-egui/locales/pl.toml
# crates/ui-egui/locales/pt-BR.toml
# crates/ui-egui/locales/ru.toml
# crates/ui-egui/locales/sv.toml
# crates/ui-egui/locales/tr.toml
# crates/ui-egui/locales/zh-Hans.toml
# crates/ui-egui/src/dev_mode.rs
# docs/dev-mode-parity.md
# docs/gaps.md
# docs/mcp.md
# docs/target-app-parity.md
2026-10-26 23:52:51 +07:00
bflatastic
0e8c1a0437
#1372 : restore the blank line after the ROADMAP status line
2026-10-26 23:10:17 +07:00
bflatastic
1f1c8624c9
#824 : window.figcraft is opt-in: installed only with a ?control query entry
2026-10-26 23:10:04 +07:00
bflatastic
b87cc3ab47
#824 : a request carries main's request gate (state), not the old cancelled flag
2026-10-26 23:06:38 +07:00
bflatastic
4c101fa549
#959 : the test is named for what it checks: non-finite numbers are saved as zero
2026-10-26 23:05:53 +07:00
bflatastic
8186c4da3f
#1369 : Go to main component replaces Create component only when every selected layer is an instance
2026-10-26 23:05:40 +07:00
bflatastic
35108cf8dc
#1369 : the server key field shows a key only for the server it was typed for
2026-10-26 23:05:39 +07:00
bflatastic
d3db02de9a
#1378 : max lines only while truncation is ENDING, with a REST test for auto height with truncation off
2026-10-26 23:04:38 +07:00
bflatastic
153250fedf
Merge main into #1152
2026-10-26 23:00:18 +07:00
bflatastic
5a9b509074
Merge main into #1366
2026-10-26 22:57:27 +07:00
bflatastic
e6e4e9ab8a
Merge main into #1053
2026-10-26 22:57:25 +07:00
bflatastic
b90749b377
Merge main into #1133
2026-10-26 22:57:23 +07:00
bflatastic
d5e3e68158
Merge main into #1372
2026-10-26 22:57:22 +07:00
bflatastic
b9fc8f5113
Merge main into #824
2026-10-26 22:57:20 +07:00
bflatastic
debf300211
Merge main into #959
2026-10-26 22:57:18 +07:00
bflatastic
089b0d8a04
Merge main into #1373
2026-10-26 22:57:17 +07:00
bflatastic
1427221d61
Merge main into #1369
2026-10-26 22:57:15 +07:00
bflatastic
2458de74f2
Merge main into #1371
2026-10-26 22:57:14 +07:00
bflatastic
66e0e0c629
Merge main into #1384
2026-10-26 22:57:13 +07:00
bflatastic
372727c571
Merge main into #1378
2026-10-26 22:57:12 +07:00
bflatastic
badf1f5904
Merge main into #1374
2026-10-26 22:57:11 +07:00
BFlat
6ea44e936f
Merge pull request #966 from arksky1/codex/korean-support-20261021
...
Add Korean support
2026-10-26 22:38:50 +07:00
BFlat
90f9697a0e
Merge pull request #1309 from denisg0mes/macos-font-manager-fonts
...
M7: find fonts that macOS font managers activate outside the font folders
2026-10-26 22:33:42 +07:00
bflatastic
420e704eee
#966 : one Templates entry, and the drop hint names .sketch, as main's catalogs do
2026-10-26 22:25:10 +07:00
bflatastic
e4a78279c0
Merge main into #966
2026-10-26 22:20:32 +07:00
bflatastic
f89f656d16
#1309 : the font-manager path test runs on Unix only (its paths aren't absolute on Windows)
2026-10-26 22:19:46 +07:00
bflatastic
0ef1156f1f
Merge main into #1309
2026-10-26 22:17:30 +07:00
Muamer Mustafic and Cursor
45326b3b1a
M1: a layer in the gap between selected layers still takes the press ( #1370 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-26 14:13:36 +01:00
Muamer Mustafic and Cursor
2136ec20b1
M1: a selected unfilled shape drags over a filled layer stacked below it ( #1370 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-26 14:02:23 +01:00
Muamer Mustafic and Cursor
398c5404f5
M4: a truncated last line's char range covers the chars it takes from the next line ( #1375 )
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-26 13:27:25 +01:00
Muamer Mustafic and Cursor
b6d3e002df
M4: truncated text fills its last line, keeps truncating when resized, and auto height takes max lines ( #1375 , #1376 , #1377 )
...
- The last line shown runs on into the word wrapped after it, so the ellipsis
fills the line ("Lorem consec…") instead of following the last whole word.
- An explicit height (node.set, transform.resize, a resize handle, fixed
sizing) on truncating text keeps it truncating (TextData::fix_size).
- Max lines on auto-height text hugs up to that many lines and ends in an
ellipsis; text.maxLines keeps auto height, Type settings show it as
truncating, .fig export writes textTruncation and import keeps auto height.
- node.get reports maxLines; text.fit measures every line.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-10-26 13:14:51 +01:00
Ridzzz0Alam
0d7d9ebd00
M1: stamp the file before reading it, so a change made during the read isn't missed ( #1330 )
...
Open and Revert to saved recorded the file's size and modification time after reading it: a change written in between would be stamped as already loaded and a later save would replace it. Taking the stamp first makes such a change refuse the next save instead (CodeRabbit on #1374 ).
2026-10-26 11:46:23 +01:00