Dylan M. Taylor
73cb773719
refactor: split complex render, CSS and WGSL checker functions (S3776, S107)
...
Extract helpers from curves_graph, draw_group, parse_css and the WGSL
bitwise checker so each stays under the cognitive complexity limit.
curves_graph now takes its pencil and natural flags as one CurveMode
value, which brings it to seven parameters.
2026-10-25 21:30:51 -04:00
Dylan M. Taylor
966719d449
Merge pull request #2443 from WaldemarLehner/ui/resizehorizontal-cursor-on-workarea
...
fix(ui-egui): make hover over workarea selector set cursor to `ResizeHorizontal`
2026-10-25 19:25:35 -04:00
Waldemar Lehner
5c875cb240
fix(ui-egui): make hover over workarea selector set cursor to ResizeHorizontal
2026-10-25 23:43:02 +01:00
skylar
c16a628849
chore(deps): refresh safe dependency bumps
...
serde_json 1.0.154, proptest 1.12.0, objc2 0.6.5, winresource 0.1.34, pollster 1.0.1, miniz_oxide 0.9.1, linesweeper 0.5.0, lz4_flex 0.14.0, muda 0.21.2.
2026-10-25 16:36:21 -06:00
Dylan M. Taylor
e821feeec4
Merge pull request #2274 from storytold/sonar/rust-s4325-s1612
...
sonar: method paths instead of closures (rust:S1612)
2026-10-25 16:36:06 -04:00
Dylan M. Taylor
632162c9a7
build: pin craft-update to craft-libs main (db19c37); localize the update status messages
...
Picks up the fix that keeps the close request pending while the app holds unsaved work, the executable-name check in the Windows update helper, and the zip 9 / dirs-free build.
Part of tracking issue storytold/craft-libs#319
2026-10-25 15:34:22 -04:00
Dylan M. Taylor
1be30a1607
refactor(updates): drive the flow with craft-update's Updater
...
The check at start is opt-in for the desktop app, a successful update closes through the app's own close path, and no update starts over unsaved work.
2026-10-25 14:23:52 -04:00
Dylan M. Taylor
6f813b74e9
refactor(updates): drive the flow with craft-update's Updater
...
Startup check is opt-in for the desktop app, the Windows update helper is dispatched before argument parsing, and a successful update closes through the app's own close path.
2026-10-25 13:58:39 -04:00
Dylan M. Taylor
89a0313ab0
fix(updates): report self-update results to the prompt and finish through the app's close path
...
Keeps the worker's failure visible instead of leaving the prompt installing, repaints while a check runs, and no longer calls process::exit past the unsaved-work prompt.
2026-10-25 13:58:38 -04:00
Dylan M. Taylor
adcc3b916b
feat: startup update prompt modal and direct self-updating
...
Integrate `craft-update` pinned to storytold/craft-libs fe61243 to check for
updates on startup, display the standard suite update modal with changelog notes,
and support one-click in-app updating and restart.
Ref: storytold/craft-libs#319
2026-10-25 13:58:38 -04:00
skylar taylor-barrick
dec327b98a
egui037: Preserve text ownership across unrelated history changes
2026-10-25 13:03:14 +01:00
skylar taylor-barrick
18206c1014
Fix text ownership after composition removal and simplify playback helpers
2026-10-25 11:40:05 +01:00
skylar taylor-barrick
57220d4d6a
Fix egui 0.37 text ownership and simplify UI lifecycle handlers
2026-10-25 10:18:26 +01:00
skylartaylor
9ee853715d
M0.37: migrate EffectCraft to egui 0.37
...
Reconcile main 991904888a and preserve the reviewed lifecycle, IME, rendering and lockfile changes.
Formatting, strict lint, layers, assets and WASM passed. Full CI retained 3,961 passes, 14 baseline-matching GPU failures and 31 ignored executions. The local review commit has explicit approval to retain these documented failures; native/browser acceptance and paired app performance remain open.
2026-10-25 02:01:16 +01:00
aiongg
991904888a
Merge pull request #1643 from arnav-hiwarkar/fix/1641-keep-cache-outside-edit
...
Preview: an edit keeps the cached frames outside the layers it changes (#1641 )
2026-10-24 16:27:16 -04:00
Dylan M. Taylor and Claude Sonnet 5.5
4e9fa51f12
sonar: method paths instead of closures (rust:S1612)
...
Poison recovery, OsStr::to_str and char predicates only; S4325 casts are
f64 to f32 and stay.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com >
2026-10-24 08:17:16 +00:00
aiongg
e3e9776c25
Batch fix: settings: size the page column from the titles it draws ( #2171 )
2026-10-24 02:12:59 +00:00
aiongg
2281e3ffec
Merge #1761 : Timeline: a shape group's inner Contents draws no row, as After Effects elides it (@elZanco)
...
# Conflicts:
# docs/ui-parity.md
2026-10-24 02:12:25 +00:00
aiongg
9a9574baaa
Merge #2016 : Settings: list the languages alphabetically by their own name (@nikolainyegaard)
2026-10-24 02:12:11 +00:00
aiongg
cf54196ad9
Merge #2171 : Settings: fit translated page names in the sidebar ( #2034 ) (@Maokus)
2026-10-24 02:11:49 +00:00
aiongg
39526acc86
Merge #1327 : Timeline: focus newly added expressions after Alt-click (refs #1072 ) (@tylerjenningsw)
2026-10-24 02:10:16 +00:00
aiongg
0db7ddb089
Merge #2228 : End an open text edit when Deselect All runs ( #2096 ) (@ChristopherLinnett)
2026-10-24 02:10:16 +00:00
aiongg
1d61fc6979
Merge #1933 : Viewer: keep hidden AV layers' controls visible ( #1769 ) (@ki2pixel)
...
# Conflicts:
# docs/ui-parity.md
2026-10-24 02:10:16 +00:00
aiongg
c00170bcc6
Merge #1867 : Fix scheduled ScriptUI tasks in host sessions (@dorfee)
2026-10-24 02:09:49 +00:00
aiongg
113b92ac8c
Merge #2110 : ui: scrub hot text from the slider range ( #2097 ) (@gmrmad1)
2026-10-24 02:09:49 +00:00
aiongg
a407281852
Batch fix: tests: the web-job GPU page blurs by 12, which the GPU still runs after #1968 ( #1968 )
2026-10-24 01:39:09 +00:00
aiongg
546a9720b0
Batch fix: cargo fmt
2026-10-24 01:16:38 +00:00
aiongg
3b3b1846e5
Batch fix: i18n: drop the Georgian "Layer {}" row the Timeline no longer asks for ( #2155 )
2026-10-24 01:16:29 +00:00
aiongg
6e8111147b
Merge #2155 : Timeline: pick layer-valued properties from a layer drop-down ( #2093 ) (@ChristopherLinnett)
2026-10-24 01:11:52 +00:00
aiongg
c5f692abc6
Merge #2049 : Light Settings: expose and preserve Environment lights (@tylerjenningsw)
2026-10-24 01:10:51 +00:00
aiongg
46302da794
Merge #2178 : Reject malformed thumbnail text without crashing ( #2135 ) (@Maokus)
2026-10-24 01:10:42 +00:00
aiongg
0c83acf79f
Merge #2221 : fix(ui): expose Duplicate in the Project panel context menu ( #2207 ) (@Zaxaerith)
2026-10-24 01:10:42 +00:00
aiongg
6e1a38fd25
Merge pull request #2259 from aiongg/contrib-batch-2
...
Integration batch 2: 18 contributor PRs (SVG, engine, colour effects, effects, settings, tests)
2026-10-23 21:06:05 -04:00
aiongg
8cc7c7f2a4
Merge #2166 : i18n(ja): AE says 縦横比, not アスペクト比 (@zitann2020)
2026-10-24 00:13:55 +00:00
aiongg
d664e403ae
Merge #2185 : Project Settings: Frame Count, Start at 0 or Start at 1 (@marcoarnulfo)
2026-10-24 00:13:55 +00:00
Christopher Linnett
a661f2ed60
Merge main into fix/issue-2096-deselect-during-text-edit
...
main moved crates/ui-egui/tests/ui_text_edit.rs to tests/it/ (one test binary per crate); this branch's test changes follow the move.
2026-10-24 07:59:29 +08:00
aiongg
33951267e7
Merge #1653 : UI: native press-and-browse menus, with edge auto-scroll (@elZanco)
2026-10-23 23:33:23 +00:00
aiongg
22cdd26365
Merge #2223 : Composition Settings: Resolution menu with the frame size and memory at that resolution (@marcoarnulfo)
2026-10-23 23:33:23 +00:00
aiongg
ac5fc076df
Merge #2050 : 3D: add a New 3D Primitive dialog to Layer > New (@tylerjenningsw)
2026-10-23 23:33:19 +00:00
aiongg
662b620be4
Merge #2182 : Regression tests for #354 , #382 , #979 and #1497 (@skylartaylor)
2026-10-23 23:32:52 +00:00
aiongg
b370269a2f
Batch fix: cargo fmt
2026-10-23 23:31:33 +00:00
aiongg
d6ff173833
Batch fix: Effect Controls: the Curves graph draws the natural spline the effect renders ( #1872 )
2026-10-23 23:22:30 +00:00
aiongg
049070d65c
Translations report: count repeated menu entries once; list panel strings no catalog has yet ( #2252 )
...
* Translations report: count a repeated menu entry once; list panel strings no catalog has yet
* Translations report: scan the dock and dropped-file messages too
2026-10-23 19:19:43 -04:00
aiongg
eb89902c9c
Batch fix: web: Match System skips languages the bundled fonts can't draw ( #1842 )
2026-10-23 21:49:37 +00:00
aiongg
fefe4b8a91
Merge #1843 : i18n: Georgian (ka) interface language (@devius)
2026-10-23 21:45:52 +00:00
aiongg
8197568559
Merge #1842 : i18n: tab titles, workspaces and Project/Timeline column headers reach the catalogs; web language follows ?lang= and the browser (@devius)
2026-10-23 21:42:49 +00:00
aiongg
e272e74f5b
Merge #1920 : Preview: keep rendering past the cached frames after a loop or restart (@ded-achtung)
2026-10-23 21:37:28 +00:00
aiongg
5ff332a206
Merge #2048 : Timeline: the disk-cache bar checks only the visible frames (@arnav-hiwarkar)
2026-10-23 21:37:28 +00:00
aiongg
93477f0611
Merge #2046 : Preview: a zoom or resolution change evicts the other sizes' frames first (@arnav-hiwarkar)
2026-10-23 21:37:00 +00:00
aiongg
295d104e19
Merge #1699 : Preview: replaced browser media gets a new disk-cache key ( #1253 ) (@vbasky)
2026-10-23 21:36:58 +00:00