Trim stroke mix callsite

This commit is contained in:
2026-06-13 19:46:20 +02:00
parent 0abd355910
commit b9f9ecaa99
3 changed files with 5 additions and 2 deletions

View File

@@ -97,6 +97,8 @@ agent or engineer to remove them without reconstructing context from chat.
- 2026-06-13: `LATER-003` was narrowed again. `Canvas::stroke_draw_mix()`
now routes the remaining framebuffer setup callbacks through a local helper,
leaving the method with only shell assembly and executor dispatch.
- 2026-06-13: `LATER-003` was narrowed again. `Canvas::stroke_draw_mix()`
now keeps only retained shell assembly and executor dispatch at the callsite.
- 2026-06-13: `DEBT-0036` was narrowed again. `NodeStrokePreview::draw_stroke_immediate()`
now routes final composite execution and preview copy-back through a retained
local wrapper, leaving the call site with only sequence wiring.

View File

@@ -641,6 +641,9 @@ Progress Notes:
- 2026-06-13: `Canvas::stroke_draw_mix()` now routes the remaining framebuffer
setup callbacks through a local helper, leaving the method with only shell
assembly and executor dispatch.
- 2026-06-13: `Canvas::stroke_draw_mix()` now keeps just the retained shell
assembly and executor dispatch at the callsite; the framebuffer setup
callbacks are isolated in the helper.
- 2026-06-13: `Canvas::stroke_draw_samples()` now reuses a retained destination
texture dispatch helper for the live sample path; `Canvas` still owns the
concrete face textures and callback execution.

View File

@@ -390,8 +390,6 @@ void Canvas::stroke_draw_mix(const glm::vec2& bb_min, const glm::vec2& bb_sz)
{
gl_state gl;
gl.save();
const auto layer_index = m_current_layer_idx;
auto& current_layer = *m_layers[layer_index];
const auto mix_shell = make_canvas_stroke_mix_pass_shell(*this, bb_min, bb_sz);
[[maybe_unused]] const auto mix_result = pp::panopainter::execute_legacy_canvas_stroke_mix_pass_shell(
mix_shell.setup.begin,