From b9f9ecaa99386d98bbcef774e3468523b1ac0a0c Mon Sep 17 00:00:00 2001 From: omigamedev Date: Sat, 13 Jun 2026 19:46:20 +0200 Subject: [PATCH] Trim stroke mix callsite --- docs/modernization/debt.md | 2 ++ docs/modernization/tasks.md | 3 +++ src/canvas.cpp | 2 -- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/docs/modernization/debt.md b/docs/modernization/debt.md index a03a796..6646bde 100644 --- a/docs/modernization/debt.md +++ b/docs/modernization/debt.md @@ -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. diff --git a/docs/modernization/tasks.md b/docs/modernization/tasks.md index 9f0378a..e49f4d0 100644 --- a/docs/modernization/tasks.md +++ b/docs/modernization/tasks.md @@ -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. diff --git a/src/canvas.cpp b/src/canvas.cpp index dee8ca6..1cfa7e6 100644 --- a/src/canvas.cpp +++ b/src/canvas.cpp @@ -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,