From bbcaac708fd69e39ef9fd7e3d0a4a4a5e5b6d419 Mon Sep 17 00:00:00 2001 From: omigamedev Date: Sat, 13 Jun 2026 22:58:32 +0200 Subject: [PATCH] Promote stroke draw texture dispatch task --- docs/modernization/tasks.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/docs/modernization/tasks.md b/docs/modernization/tasks.md index 0d2cc50..9f4d868 100644 --- a/docs/modernization/tasks.md +++ b/docs/modernization/tasks.md @@ -573,6 +573,34 @@ Done Checks: - Retained stroke OpenGL execution is deleted or isolated as an OpenGL backend implementation. +### STR-020 - Extract Stroke Draw Main Pass Texture Dispatch + +Status: Ready +Score: +1 renderer boundary and OpenGL parity +Debt: `DEBT-0036` +Scope: `src/canvas.cpp`, `src/legacy_canvas_stroke_execution_services.h`, `tests/paint_renderer/compositor_tests.cpp` + +Goal: + +Move the inline `Canvas::stroke_draw()` main-pass texture dispatch bundle into +a retained helper so the callsite keeps only branch selection plus concrete +texture/sampler wiring. + +Done Checks: + +- `Canvas::stroke_draw()` no longer builds the main-pass texture dispatch + bundle inline. +- Regression coverage proves the extracted helper preserves main-pass texture + callback order. +- `docs/modernization/debt.md` records the reduced stroke-draw texture + dispatch surface. + +Validation: + +```powershell +ctest --preset desktop-fast --build-config Debug -R "pp_paint_renderer_compositor|pp_paint_renderer_stroke_execution" --output-on-failure +``` + Progress Notes: - 2026-06-13: `NodeStrokePreview::draw_stroke_immediate()` now routes final