chore: sync upstream (116 Commits) #18
No reviewers
Labels
No labels
herkunft/alpha-feedback
status
blockiert
status
zu-testen
typ
bug
typ
docs
typ
enhancement
typ
feature
typ
idea
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
iris/effectcraft!18
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "chore/sync-upstream-20261104"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Upstream-Sync von
upstream/main(116 Commits). Fast-Forward.58ca9c1cOCIO: refuse a .csp LUT whose header claims an oversized table before reserving it (#2938)6572514eGPU: size the memory cap from the card's video memory on Linux (fixes #1487) (#1706)025c038aGPU: build effect kernels on first use, each family from a module of its own (fixes #1590) (#1705)ff686265#1605: Posterize and CC Grid Wipe match the CPU on AMD and Intel (#1836)8d20cf0cGPU.1: Preserve CPU parity in numerical effect kernels (#1490)c4f386a2Preview: debounce GPU memory pressure and recover the frame budget (#3025)389894e6gpu: run Content-Aware Fill's PatchMatch and flow on the GPU (#1856)6df7eabegpu: memory back-pressure for frames in flight (fixes OOM at 3–4 frames in flight) (#1550)08362b9cGPU: free effect working textures after each call instead of at frame end (#1523)2f31c22afix(prefs): when recovering from a bad value, try only the settings' own pages one by one (#3010)5464a238Mask feather: bound the variable feather's distance pass (#2947)b7dee07cPath booleans: sparse winding numbers and bounded merge runs (#2946)d16c720eFollow-up to #2981: a missing Chinese effect row draws English instead of failing the build, the font probe sees effect and category characters, coverage totals recounted3ae9c8dbMerge PR #2981b77db389#2037: complete the Traditional Chinese effect-name catalogchars) are not imported 1a9eeb9e1banimator0b59d2b8c4panels::crypto_pick is the eyedropper's viewer side; it is wired in by the next commit. Armed, the hover names the ID under the cursor and highlights its coverage, a click replaces the Selection with it, Shift adds, Alt or Ctrl (Option or Cmd on a Mac) removes. Each pick is one undo step, "Pick Cryptomatte". The probe the hover needs is built off the UI thread, one at a time for the app (EffectcraftApp::crypto_probe_busy, re-arming included), not while playing and not until a scrub has settled for 100 ms; meanwhile the chip says so. Session::crypto_probe_ready asks for readiness without changing anything; a job is asked for only when it starts. Clicks made meanwhile are queued, own the build and are made in order at the end of the pass, after its keys and edits. A click is the frame, point, resolution and project revision its press saw. If any of them changed before it is made (an edit, Ctrl+Z, a nudge, a frame step), it and every click waiting with it are dropped and the status says "Pick not made". A pick's own change of the revision doesn't count as an edit for a click still held. Losing the window focus drops a held press. A click that takes the focus from the Selection field waits for the field to commit and is made on top of it. The overlay takes drags too: a click that drifts picks at its press, and one dragged further than 24 points picks nothing ("Drag cancelled the pick"). Presses and releases are read from the pass's events in order rather than from egui's end-of-pass click state, since a slow pass can hold a whole click. Space, the Hand and the Zoom tool keep their clicks, the middle button pans, and a right-click is passed on under viewer::FORWARDED_SECONDARY for the viewer to open its context menu (the viewer side is in the next commit). Errors show in the chip in red, without the command's prefix, wrapped to the viewer's width. The hovered ID's coverage (Session::crypto_coverage) is drawn as a texture through the layer's effect-space transform, rebuilt only when the hovered ID, frame or revision changes, and exposed to the test harness as viewer.cryptoPick.highlight. Supporting changes: - EffectcraftApp::say sets the status line and restarts its 5 s; each status message now gets its own 5 s, also when the same text is shown again. - Points snap to the centre of the shown frame's pixel at the exact 1/n scale the viewer renders (frames::render_scale; the frame key keeps 0.333 for Third, which named the next row's ID). Cache Frames When Idle renders at that exact scale too, so idle-cached frames are on the grid the pick reads.