Commit Graph
1171 Commits
Author SHA1 Message Date
Claude 362d299642 Fonts: No matching fonts goes through the interface catalog (#593 follow-up)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 16:30:10 +00:00
Claude 2500719969 UI: an agent's injected drag never warps the real cursor (#592 follow-up)
Control-channel pointer events (ui.drag) scrub numbers like a mouse but
turn off the edge wrap, so an agent never moves the user's cursor; the
TextBox case of the drag test goes (that plug-in isn't in-tree).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 16:30:09 +00:00
Claude 00364546eb Merge pull request #593 from kikikikier/community/type-in-font-search 2026-10-10 16:29:15 +00:00
Claude 5adf9db227 Merge pull request #592 from kikikikier/community/infinite-drag
# Conflicts:
#	crates/ui-egui/src/panels/fx_widgets.rs
2026-10-10 16:29:14 +00:00
tylerjenningsw 8cb8a416ac Packaging: the legacy-folder fallback covers every release before this installer change (#466)
v0.7.0 has no App Paths Path value either, so the comments no longer
name a release.

(cherry picked from commit 4ae87f1e83)
2026-10-10 16:29:06 +00:00
Claude 4de3354806 Merge pull request #589 from JeremyYao/fix/amd-vulkan-launch-guard
The two test-only conflicts keep main's versions, which already carry the
same fixes.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 16:29:06 +00:00
Claude e2b547ae7d Merge pull request #584 from itrycodinganditsbad/fix-negative-rotation-drag 2026-10-10 16:29:01 +00:00
Claude 1429921e5c Merge pull request #585 from itrycodinganditsbad/fix-fractal-reset 2026-10-10 16:29:00 +00:00
Claude bb08a6acc9 Work area: an edit never clamps with crossed bounds (#605 follow-up)
A project saved with an inverted work area, or a comp shorter than a
frame, made Tick::clamp panic on the next start or end edit.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 16:28:54 +00:00
Claude 359ad52f99 Merge pull request #607 from vbasky/fix/540-separated-position
# Conflicts:
#	crates/engine/src/tests_menu_cmds.rs
2026-10-10 16:28:09 +00:00
Claude c8c0041c41 Merge pull request #606 from vbasky/fix/539-separated-canvas 2026-10-10 16:28:05 +00:00
Claude 943c42659a Merge pull request #605 from vbasky/fix/538-work-area 2026-10-10 16:28:05 +00:00
Claude cb2044ed67 Merge pull request #597 from sanyamsingh001/fix/history-trim 2026-10-10 16:28:05 +00:00
Claude af1c856948 Merge pull request #608 from vbasky/fix/527-first-mask-mode 2026-10-10 16:28:05 +00:00
Claude 6e591786f1 Merge pull request #578 from KattKnight/footage-reload 2026-10-10 16:28:05 +00:00
BFlat 1446e27d85 Merge pull request #598 from storytold/claude/community-pr-review-lwtrlr
Land 49 community PRs, with follow-ups
2026-10-10 22:46:18 +07:00
Claude 5a8cd76b77 Lint the merged community PRs: no drop of a borrowing closure (#458), json only where drops import (#447)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 15:45:46 +00:00
sanyamsingh001andCodex 0a265131ce G3: preserve reachable history during trimming
Co-authored-by: Codex <[email protected]>
2026-10-11 01:23:47 +10:00
Claude 616574439e Integrate community PRs: relink's params doc and menu rows, pt-BR in the language list, MCP docs, test fixes
- file.relinkFootage (#461): close the params doc so checked execution
  (MCP, control channel) rejects unknown keys; translate its menu entry.
- general.language lists Português (Brasil) (#217).
- docs/agents.md: set_property / add_keyframe take timeBase (#522).
- #299's MCP test no longer sends get_property a value.
- The Automatically Reload Footage sequence test uses PNG frames.
- h264_frames_at_reduced_sizes (#507): the bar depends on the fixture's
  encoder; 50 dB with ffmpeg 6.1's x264.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 15:15:11 +00:00
kikikikier 1c2bf2f157 Fix signed angle scrubbing across zero and monitor wraps 2026-10-10 17:26:29 +03:00
kikikikier abd44404f8 UI: add inline font family search in Character and Properties 2026-10-10 17:14:06 +03:00
kikikikier adbe4dff4e UI: support continuous numeric scrubbing across monitor edges 2026-10-10 17:14:06 +03:00
Jeremy YaoandClaude Fable 5.1 2a404f6226 MCP: the auto-save recovery tests look for the JSON-quoted path
automation autosave_is_durable_before_reply_and_queries_do_not_rotate
and the CLI's mcp_autosave_survives_kill_and_restart_without_touching_
desktop_settings asserted that the initialize instructions contain the
previous session's auto-save path as raw text. The instructions embed
the auto-save info as JSON, so on Windows the path's backslashes are
escaped and the raw match can never succeed (both failed on every
Windows run; the server's reply is right). They now look for the path
as serde_json prints it, which also matches on Linux and macOS.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-10-10 09:37:00 -04:00
Jeremy YaoandClaude Fable 5.1 a91952dadc Effects: the .spimtx parser reads its rows with as_chunks
clippy 1.99 (current stable, which CI tracks unpinned) fails the
workspace gate on chunks_exact_to_as_chunks in parse_spimtx. The length
is already checked to be 12, so as_chunks::<4>() has no remainder and
the behaviour is unchanged; the workspace's rust-version (1.95) has it.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-10-10 09:36:59 -04:00
Jeremy YaoandClaude Fable 5.1 d86c4aff52 Startup: a launch that stops as its window is shown switches the next to OpenGL
On an ASUS G513QY (Radeon RX 6800M, Adrenalin 26.9.2, Windows 11) every
launch died with STATUS_ACCESS_VIOLATION inside amdvlk64.dll, on a
driver worker thread, a moment after the first frame: eframe shows the
window it created hidden, the resulting resize re-creates the swapchain,
and the driver crashes there (same offset on two driver versions, with
the OBS/Steam/Epic Vulkan layers disabled, and with FIFO, immediate and
latency-1 presentation). DirectX 12 and OpenGL open the window fine.

A crash in a driver can't be caught, and the launch guard (#243) removed
its marker at the first frame, so this looked like a successful launch
every time and Window Graphics never switched. The marker now stays
until the window has kept drawing for SETTLE (3 s) or the app quits
normally before that; frame_drawn returns the time left and the app
asks for a repaint then, so an idle window settles too. The notice,
the Settings note and docs/preferences.md describe the new rule.

Verified on that machine with a scratch settings folder: launch 1
(Vulkan) crashed and left the marker, launch 2 switched to OpenGL with
the notice and closed with exit code 0, launch 3 stayed on OpenGL
without the notice.

Tests: effectcraft launch_guard
a_launch_that_stops_after_its_first_frame_switches_the_next_to_opengl
(a first frame then drop: the next launch gets GL and the notice; a
normal quit in that time leaves no marker), and the existing test now
asserts that the first frames don't settle a launch (marker present at
SETTLE/2, gone at SETTLE).

Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-10-10 09:36:59 -04:00
Claude 42ad4edaee MCP: set_property and add_keyframe take timeBase too (#522 follow-up)
Issue #257 names these tools: an agent can now give comp times on an
offset layer through MCP, as it can through prop.addKey and keys.select.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 12:59:03 +00:00
Claude 195b862036 Text: layer.setText's schema accepts discretionaryLigatures and ss01–ss20 under checked execution (#521 follow-up)
The params parser reads ':' as the start of a value, so 'OpenType?:
discretionaryLigatures?' declared a bogus OpenType key and hid
discretionaryLigatures, and 'ss01?…ss20?' declared only ss01.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 12:58:15 +00:00
Claude 9308d8e0f0 Merge pull request #521 from mjohnson7cd/fix-layer-settext-schema-520 2026-10-10 12:57:32 +00:00
Claude 816fc855d8 Merge pull request #217 from RicSchonfelder/i18n-pt-br
Ported onto the current language plumbing next to Spanish (catalog codes,
Match System for pt-* locales, native menu Services label, docs, tests);
the language list and settings validation stay the shared LANGUAGES table.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 12:57:01 +00:00
Claude b8d23801ff Merge pull request #460 from llopjulen/i18n/es
Ported onto the current language plumbing next to Ukrainian (catalog
codes, Match System, native menu Services label, docs, tests), and the
stale Ease Presets row (a ScriptUI panel since #404) dropped.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 12:55:58 +00:00
Claude 00e9e37c0a UI: the drop hint and drop errors go through the interface catalog; the Wayland notice points to the README (#447 follow-up)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 12:55:10 +00:00
Claude 63acbb1eb0 Merge pull request #447 from David-T-Campos/fix/footage-drag-drop
# Conflicts:
#	apps/effectcraft/src/main.rs
2026-10-10 12:54:44 +00:00
Claude ce743af717 Appearance: zbus follows eframe's version instead of an exact pin (#519 follow-up)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 12:54:31 +00:00
Claude 8f43e69cf1 i18n: one Red/Green/Blue row per language, Title/Action Safe keeps After Effects' label, no process spawn to read the locale (#490, #571 follow-up)
- #571's Red/Green/Blue rows duplicated #490's; keep 红色/绿色/蓝色 and give
  Traditional Chinese 紅色/綠色/藍色 instead of the English copies.
- The viewer's grid menu says Title/Action Safe again (as in After
  Effects and the View menu), with its own catalog rows.
- Half is 二分之一, as in After Effects' Simplified Chinese resolution menu.
- Drop the macOS 'defaults read' fallback for a C locale: sys-locale never
  reports one on Apple, so it never ran.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 12:54:24 +00:00
Claude c7b02cc9a3 Merge pull request #472 from dmatviichuk/i18n/ukrainian-panel-followup
# Conflicts:
#	ROADMAP.md
#	crates/ui-egui/src/i18n/ui.rs
#	docs/preferences.md
2026-10-10 12:53:37 +00:00
Claude e87f8a8d6d Merge pull request #469 from haranishi/i18n-japanese-panels 2026-10-10 12:53:19 +00:00
Claude d8c1711f52 Merge pull request #519 from luniiya/feat/system-appearance 2026-10-10 12:53:19 +00:00
Claude 5de747735e Merge pull request #571 from seldoms/i18n/chinese-translations 2026-10-10 12:53:18 +00:00
Claude 5b7c314317 Merge pull request #490 from cjcwwww/i18n/panel-helper-strings 2026-10-10 12:53:18 +00:00
Claude 57bd68c86e Import: Automatically Reload Footage is Off / Non-Sequence Footage / All Footage, as in After Effects; a reload never shows disk-cached frames from before (#578 follow-up)
Image sequences are watched only with All Footage (the default,
Non-Sequence Footage, leaves them alone). Purge also forgets the viewer's
per-revision disk keys, which hash footage files' size and time, so a
file reloaded without a new revision is keyed again.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 12:53:09 +00:00
Claude c5af482bce QA: frame scores refuse NaN samples and mismatched buffers (#427 follow-up)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 12:53:09 +00:00
Claude 4578f9090c Packaging: pin the MSI test's checkout; the MSI comment says what it installs (#466 follow-up)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01QiAJeFttZp83Fh7YuzAR5f
2026-10-10 12:51:38 +00:00
Claude 6039e86a04 Merge pull request #466 from tylerjenningsw/enhance/windows-installer-folder
# Conflicts:
#	contributors/people.toml
2026-10-10 12:51:31 +00:00
KattandClaude Opus 5.5 98cdc981ad Footage: a file that can't be read is tried again once it changes, not on every look
A footage file the automatic reload couldn't read (still being written, or
one the importer doesn't read) kept its old stamp, so every two-second look
saw it as changed and probed it again. It now keeps its new stamp and is
tried again once it changes again (when the other app finishes writing it).

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-10 18:21:21 +05:30
Claude 22345370ac Merge pull request #517 from sawizzle/docs/installed-release-mcp 2026-10-10 12:51:16 +00:00
Claude 8c2b464a4d Merge pull request #582 from LloydNicholson/macos-project-documents 2026-10-10 12:51:16 +00:00
Claude 92332897af Merge pull request #516 from dylanmtaylor/chore/update-actions 2026-10-10 12:51:16 +00:00
Claude a5feb441e9 Merge pull request #499 from tylerjenningsw/enhance/project-shift-delete 2026-10-10 12:51:16 +00:00
Claude 85d71011ac Merge pull request #458 from storybored379/fix/mcp-review-followups 2026-10-10 12:51:16 +00:00
Claude 681919fe92 Merge pull request #478 from mjohnson7cd/fix-webm-bitrate-440 2026-10-10 12:51:16 +00:00