Extract Canvas draw_merge final plane composite helper

This commit is contained in:
2026-06-13 11:33:56 +02:00
parent 3ec4f25889
commit 67c594129d
5 changed files with 89 additions and 26 deletions

View File

@@ -301,6 +301,12 @@ agent or engineer to remove them without reconstructing context from chat.
through `legacy_canvas_draw_merge_services.h`. The retained Canvas path still
owns draw-merge layer iteration, blend-gate branching, framebuffer copies,
sampler/texture binding, and draw ordering.
- 2026-06-13: DEBT-0036 was narrowed again. `Canvas::draw_merge` end-of-plane
merged-texture copy, optional checkerboard redraw, and final merged-texture
composite ordering now route through
`execute_legacy_canvas_draw_merge_final_plane_composite(...)`; the retained
Canvas path still owns per-plane iteration plus the concrete framebuffer,
sampler, texture, and draw callbacks.
- 2026-06-13: DEBT-0036 was narrowed again. `Canvas::layer_merge` now reuses
`legacy_canvas_stroke_composite_services.h` for retained layer-merge
`kShader::CompDraw` binding and source/destination blend uniform writes.

View File

@@ -3150,6 +3150,11 @@ Results:
ordering through `execute_legacy_canvas_draw_merge_layer_blend(...)`, while
temporary-stroke branch selection, framebuffer copies, and final merged-plane
ownership remain in the legacy Canvas path.
- `Canvas::draw_merge()` end-of-plane merged-texture copy plus optional
checkerboard/final-texture redraw ordering now routes through
`execute_legacy_canvas_draw_merge_final_plane_composite(...)`, while
per-plane iteration and the concrete framebuffer, sampler, texture, and draw
callbacks remain in the legacy Canvas path.
- `NodeStrokePreview::draw_stroke_immediate()` now shares
`execute_legacy_node_stroke_preview_pass_sequence(...)` for
dual-pass/background/main-pass/final-composite/copy-back ordering, while the

View File

@@ -528,6 +528,13 @@ Progress Notes:
merged-texture copy/grid/final-redraw seam or another similarly narrow final
composite boundary without reopening landed temporary-composite or
per-layer blend helpers.
- 2026-06-13: `Canvas::draw_merge()` end-of-plane merged-texture copy,
optional checkerboard redraw, and final merged-texture composite ordering now
route through `execute_legacy_canvas_draw_merge_final_plane_composite(...)`;
per-plane iteration and concrete framebuffer, sampler, texture, and draw
callbacks remain local to `Canvas`. Next slice should target another narrow
retained draw-merge boundary without reopening landed temporary-composite,
layer-blend, or final-plane helpers.
- 2026-06-13: `Canvas::draw_merge()` erase live temporary-stroke composite now
routes retained setup, sampler bind, texture bind, draw, and texture unbind
ordering through `execute_legacy_canvas_stroke_temporary_composite(...)`;