vectorcraft/crates/engine/tests
dotCooCoo f4e72fe6a5 Render: raster effects are made again when patterns, symbols, images, settings or fonts change
The renderer kept the rasters of an object's drop shadows, outer glows
and filtered content (Gaussian Blur, Feather and the Photoshop-style
filters), and drew them again while the object, the zoom and rotation
and the ink plane stayed the same. The content drawn into a raster also
reads things outside the object: patterns, symbols, brushes, images,
document, layer and color settings, the knockout a group inherits, the
fonts, and the options the frame is drawn with. When one of them
changed, a renderer that had drawn the object went on drawing the
raster it had kept, made from the old values.

Each kept raster now records what its content was drawn from: which of
those things the object reads, found by walking the object when the
raster is made, and a hash of their values then. The renderer draws
the raster only while that hash is the same in the current frame. Once
a frame, the renderer hashes the document's patterns, symbols and
images. It hashes their art and pixels by the addresses of their
shared values, and it keeps weak references to those values while a
raster made with them is kept, so no other value can take one of those
addresses. A filtered raster also records the color channels its
filters split, and under De-Interlace the raster resolution.

A temporary release test timed the inputs of 400 kept rasters at about
10 microseconds a frame.
2026-10-13 00:34:41 +07:00
..
affinity_artboards.rs M11: honor Move Artwork in artboard coordinate edits 2026-10-10 09:49:24 +02:00
affinity_corpus.rs Part of #666: Affinity rectangles keep per-corner radii and straight corners 2026-10-12 15:41:46 +07:00
affinity_text.rs Fix #1423: an Affinity text frame too short for its first line is made taller instead of showing nothing 2026-10-12 23:42:56 +07:00
artboard_click.rs fix: the Artboard tool creates an artboard from a clicked shape (#1227) 2026-10-12 15:17:12 +07:00
clear_commands.rs Fix #786: clear exact compound members and explicit targets 2026-10-09 11:33:23 -06:00
color_settings.rs Render: raster effects are made again when patterns, symbols, images, settings or fonts change 2026-10-13 00:34:41 +07:00
command_sweep.rs Part of #1377: Rectangular Grid and Polar Grid tool options (skew, frame, compound path, fill) 2026-10-12 19:22:36 +07:00
compound_attributes.rs fix: 複合パスの外観と塗り規則を修正する #1197 2026-10-12 00:12:52 +07:00
eyedropper_sources.rs fix: ロック中と隔離の外側の図形から色を取得する #1251 2026-10-12 07:25:43 +07:00
font_folder.rs Review fixes for #792: build expected test paths with the platform's separator 2026-10-10 09:07:53 +07:00
import_fuzz.rs Type: frames and paths beyond 1,000,000,000 pt hold no text, and layout limits its search for room 2026-10-13 00:34:40 +07:00
inline_text.rs M7: inline symbols in text 2026-10-08 15:45:34 -07:00
known_bugs.rs Robustness: VectorCraft never crashes — no panics in shipped code 2026-10-05 06:28:59 +07:00
lossy_overwrite.rs Part of #637: the editing data's structure read whole, colours, gradients, transparency, names, images and artboards included 2026-10-09 16:02:36 +07:00
model_based.rs Robustness: VectorCraft never crashes — no panics in shipped code 2026-10-05 06:28:59 +07:00
pen_endpoint_picking.rs #1244: undo history bounded by bytes, without lookup tables or repeated selections in its steps 2026-10-12 11:02:17 +07:00
plugin_fuzz.rs Fix #121: sandboxed WebAssembly plug-ins: object filters and live effects 2026-10-06 00:19:41 +07:00
ruler_origin.rs feat: change and reset the ruler origin (#1212) 2026-10-12 15:17:24 +07:00
selection_commands.rs MCP: select.key checks its id, and agents can read the key object 2026-10-12 00:16:23 +07:00
stroke_visibility.rs Appearance panel: a stroke colour on an unpainted zero-width stroke restores 1 pt too (#1253) 2026-10-12 07:25:31 +07:00
text_import_fuzz.rs M4.54: Placing a text file asks for Text Import Options and sets it as area type 2026-10-05 10:07:23 +07:00