Commit Graph
17 Commits
Author SHA1 Message Date
midasdf ed1f65ba37 Merge remote-tracking branch 'origin/main' into pr
# Conflicts:
#	ROADMAP.md
2026-10-30 02:44:54 +09:00
Dylan M. Taylor 6e72ab3b57 Refactor ui-egui for strict Clippy checks 2026-10-28 06:09:21 +00:00
midasdf 242457f84d Merge remote-tracking branch 'origin/main' into jp/ja-dialogs
# Conflicts:
#	crates/ui-egui/src/credits.rs
#	crates/ui-egui/src/panels/tracker.rs
2026-10-27 23:45:42 +09:00
aiongg bc4b48f67d fix(ui): dropdown menus grow back after a search with no matches (#2511)
* fix(ui-egui): craft_ui::ComboBox for every combo box, so open menus grow back (egui#5225)

Repins craft-libs to aiongg/craft-libs 60d60d48 (storytold main with the shared
dropdown) and bans egui::ComboBox in clippy.toml.

* fix(ui-egui): font menu under the font field is a craft_ui combo menu that grows back

The filter row is the menu's header and only the font list scrolls, so a search
that matched nothing grows the menu back when it is cleared.

* chore(deps): craft-libs 4d7b82f7 (dropdown fixes)

* chore(deps): craft-libs 92d392cf (#387 merged)

* chore(xtask): pdf-deps expects craft-libs 92d392cf
2026-10-27 10:27:52 -04:00
midasdf 145c345036 Merge remote-tracking branch 'origin/main' into pr
# Conflicts:
#	crates/ui-egui/src/i18n/ui.rs
2026-10-27 22:31:03 +09:00
midasdf 6b824def1a Merge remote-tracking branch 'origin/main' into jp/ja-dialogs
# Conflicts:
#	crates/ui-egui/src/panels/graph.rs
#	crates/ui-egui/src/panels/misc.rs
#	crates/ui-egui/src/panels/project.rs
2026-10-26 23:55:54 +09:00
skylar taylor-barrick 47bf08a15e M-egui037: document migration behavior and guard atomic batch rollback 2026-10-25 19:56:09 +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
midasdf ad8b6acb6d i18n(ja): panels and dialogs (300 rows; 27% → 39%)
The panel catalog behind the menu bar translated the dialogs and
Preferences, but much of the work area was still English: panel tabs, form
fields, panel context menus, the tracker and graph controls, text-panel
options, the File panel's footers and the credits. Add 300 rows to the
Japanese catalog — and the matching Simplified and Traditional Chinese
sources the tests keep it in step with (the other languages may lag, an
untranslated row falls back to English):

- panel tabs (dock.rs / dock_ui.rs titles), the Project panel's columns,
  footer tooltips and column menu;
- form and dialog labels and choice options (the forms the panels open —
  import, interpret footage, render queue, trackers, text animators…);
- panel context menus (timeline layer/property menus, graph editor);
- the tracker, graph editor, text-panel, animator and Content-Aware Fill
  labels;
- the Preview panel's transport tooltips, credits table headers and sort
  options, the composition-settings tabs and the About links;
- the engine's text-animator menu labels, added as a data source like the
  settings pages (they are interface text the panels draw).

Strings are wrapped where they are drawn with the existing `tr`/`tr_args`
mechanism (the label helpers already ask the catalog, so the data tables
need no new ids); the catalog tests keep the three complete languages
listing the same sources, reject duplicate or empty rows and keep the
placeholder counts. A new test assertion in
`japanese_rows_translate_the_panels` pins a sample of this step.

The panel catalogs are now 993 Japanese and 995 Chinese rows (the two
Chinese catalogs are the complete source list); with the 628-row menu
catalogs Japanese is 1,621 of ≈ 4,200 interface strings (39%, up from 27%).

Still English: effect parameter names (≈ 1,650 registry names, drawn from
the model, not the catalogs), Home-screen literals, tooltips drawn from
engine data, engine error messages, and the rows other languages lack.

Docs: localization-parity (header, per-language table, overall share,
revision history), ROADMAP (language table, progress log, revision history).
2026-10-22 04:04:24 +09:00
Marco Arnulfo 8e21e5dbc1 Tracker: a track point can be grabbed when zoomed out (fixes #1067)
The attach point's 12 px grab area sat on top of the feature region and is tested first. Zoomed out, a default feature region is smaller than that on screen, so every press inside it moved the attach point instead of the point. Inside the feature region the attach point now grabs only the region's inner half.
2026-10-12 21:22:01 +02:00
kikikikier adbe4dff4e UI: support continuous numeric scrubbing across monitor edges 2026-10-10 17:14:06 +03:00
FeiLiuEM a15a436647 panels: the timeline, viewer, project and layer panels read their text from the catalog
Timeline switches and column headers, the viewer's tools and guides, the Project panel's menus,
tooltips and the layer, properties, graph, marker, tracker and camera-tracker panels now go through
`crate::i18n`.
2026-10-09 20:17:05 +08:00
Brandon ThomasandClaude Opus 5.5 8a4a2bfc52 M13.14: lazy project open, non-blocking UI with large projects, bench --ops
- footage.check: background footage check after File > Open (Progress panel), not an undo step
- timeline: track-matte / parent menus built only while open (was O(n^2) per frame);
  expression-row lookup per layer; panels hold Arc<Comp> snapshots instead of deep clones
- Project panel: virtualised vertical scrolling, selection reveal, thumbnails rendered off
  the UI thread
- effectcraft-cli bench --ops (engine::perf + ui-egui::bench)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 11:49:55 -04:00
Brandon ThomasandClaude Opus 5.5 d209fa001f M13.3: face tracking methods, Face Track Points / Measurements, camera lens distortion, docs
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 04:36:12 -04:00
Brandon ThomasandClaude Opus 5.5 cba8d7e737 M12.6: 3D Camera Tracker effect + UI
Effect > Perspective > 3D Camera Tracker (Shot Type, Horizontal Angle of
View, Show/Render Track Points, Track Point Size, Target Size, Advanced:
Solve Method, Method Used, Average Error, Detailed Analysis, Auto-delete
Points Across Time, Hide Warning Banner); tracks and solve stored in the
effect with keys (frame edits re-track, setting / deleted-point edits only
re-solve). Background job (Analyzing in background (step 1 of 2) / Solving
camera banner, cancel, one undo step). Commands: track.camera (replaces the
stub), camera.analyze/cancel/solveStatus/points/selectPoints/
createFromSolve/create/setGroundPlane/deletePoints; the one-node 3D Tracker
Camera keyed per frame and text / solids / nulls / shadow catcher + light on
the target plane, Create Multiple. Viewer: depth-sized coloured targets,
hover target plane, click / shift / marquee selection, AE right-click menu,
Delete; Effect Controls Analyze / Cancel / Create Camera; Tracker panel
Track Camera. Solver: adaptive noise thresholds, denser keyframes, quick
tripod check, faster Cholesky and parallel Schur complement.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 23:02:47 -04:00
Brandon ThomasandClaude Opus 5.5 9645ff9a66 M6.6: mask tracking + mask interpolation; M12.5: Warp Stabilizer
Mask tracking (track.mask, background job with progress/cancel, one undo
step, Mask Path keys; Tracker panel mask mode; Layer > Mask > Track Mask),
Mask Interpolation panel + mask.interpolate, and the Warp Stabilizer
effect (Effect > Distort, AE parameter groups, warp.analyze/cancel/status,
analysis stored in the effect, invalidation on source/in/out/remap edits,
viewer banner, crop/auto-scale/synthesize edges, track points).
Adds the effects -> track same-layer edge.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 21:14:29 -04:00
Brandon ThomasandClaude Opus 5.5 e57e6a5120 M12.3: tracker panel + apply
Tracker panel (Window > Tracker): Track Camera / Warp Stabilizer (disabled),
Track Motion / Stabilize Motion, Motion Source, Current Track, Track Type,
Position/Rotation/Scale, Motion Target with Edit Target..., Options...
(Motion Tracker Options dialog), Analyze (1 frame back, back, forward,
1 frame forward; stop while running) with progress, Reset and Apply (Apply
Dimensions dialog). Track point widgets in the viewer: feature and search
regions with corner handles, attach point crosshair and track path, all
draggable through track.setPoint (one undo step per drag). Automation ids for
every widget; headless UI test.

Tracker: featureless regions no longer drift (ties keep the prediction, only
confident matches predict motion). docs/agents.md: tracking example.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 08:52:20 -04:00