Move stroke commit input binding behind service helper
This commit is contained in:
@@ -108,6 +108,10 @@ agent or engineer to remove them without reconstructing context from chat.
|
|||||||
- 2026-06-13: `DEBT-0036` was narrowed again. `Canvas::stroke_commit()`
|
- 2026-06-13: `DEBT-0036` was narrowed again. `Canvas::stroke_commit()`
|
||||||
now routes the commit-input texture role switch through a local helper,
|
now routes the commit-input texture role switch through a local helper,
|
||||||
leaving the callsite with sequence planning plus retained callback wiring.
|
leaving the callsite with sequence planning plus retained callback wiring.
|
||||||
|
- 2026-06-13: `DEBT-0036` was narrowed again. `Canvas::stroke_commit()`
|
||||||
|
now routes the commit-input texture role switch through a retained service
|
||||||
|
helper, leaving the callsite with sequence planning and concrete face
|
||||||
|
bindings only.
|
||||||
- 2026-06-13: `DEBT-0036` was narrowed again. `NodeStrokePreview::draw_stroke_immediate()`
|
- 2026-06-13: `DEBT-0036` was narrowed again. `NodeStrokePreview::draw_stroke_immediate()`
|
||||||
now routes final composite execution and preview copy-back through a retained
|
now routes final composite execution and preview copy-back through a retained
|
||||||
local wrapper, leaving the call site with only sequence wiring.
|
local wrapper, leaving the call site with only sequence wiring.
|
||||||
|
|||||||
@@ -653,6 +653,9 @@ Progress Notes:
|
|||||||
- 2026-06-13: `Canvas::stroke_commit()` now routes the commit-input texture
|
- 2026-06-13: `Canvas::stroke_commit()` now routes the commit-input texture
|
||||||
role switch through a local helper, so the callsite no longer owns that
|
role switch through a local helper, so the callsite no longer owns that
|
||||||
inline texture binding bundle.
|
inline texture binding bundle.
|
||||||
|
- 2026-06-13: `Canvas::stroke_commit()` now routes the commit-input texture
|
||||||
|
role switch through a retained service helper, so the callsite only supplies
|
||||||
|
concrete face bindings.
|
||||||
- 2026-06-13: `Canvas::stroke_draw_samples()` now reuses a retained destination
|
- 2026-06-13: `Canvas::stroke_draw_samples()` now reuses a retained destination
|
||||||
texture dispatch helper for the live sample path; `Canvas` still owns the
|
texture dispatch helper for the live sample path; `Canvas` still owns the
|
||||||
concrete face textures and callback execution.
|
concrete face textures and callback execution.
|
||||||
|
|||||||
@@ -543,7 +543,7 @@ static auto make_canvas_stroke_commit_callbacks(
|
|||||||
{
|
{
|
||||||
const auto& b = current_stroke->m_brush;
|
const auto& b = current_stroke->m_brush;
|
||||||
auto bind_commit_inputs = [&](int i) {
|
auto bind_commit_inputs = [&](int i) {
|
||||||
pp::panopainter::bind_legacy_canvas_stroke_commit_inputs(
|
pp::panopainter::bind_legacy_canvas_stroke_commit_face_inputs(
|
||||||
sequence,
|
sequence,
|
||||||
[&](int texture_slot) {
|
[&](int texture_slot) {
|
||||||
set_active_texture_unit(texture_slot);
|
set_active_texture_unit(texture_slot);
|
||||||
|
|||||||
@@ -151,6 +151,20 @@ inline void bind_legacy_canvas_stroke_commit_inputs(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template <typename SetActiveTextureUnit, typename BindFaceTextureRole, typename BindFaceSamplerRole>
|
||||||
|
inline void bind_legacy_canvas_stroke_commit_face_inputs(
|
||||||
|
const pp::paint_renderer::CanvasStrokeCommitSequencePlan& sequence,
|
||||||
|
SetActiveTextureUnit&& set_active_texture_unit,
|
||||||
|
BindFaceTextureRole&& bind_face_texture_role,
|
||||||
|
BindFaceSamplerRole&& bind_face_sampler_role)
|
||||||
|
{
|
||||||
|
bind_legacy_canvas_stroke_commit_inputs(
|
||||||
|
sequence,
|
||||||
|
std::forward<SetActiveTextureUnit>(set_active_texture_unit),
|
||||||
|
std::forward<BindFaceTextureRole>(bind_face_texture_role),
|
||||||
|
std::forward<BindFaceSamplerRole>(bind_face_sampler_role));
|
||||||
|
}
|
||||||
|
|
||||||
template <typename SetupShader, typename DrawPlane>
|
template <typename SetupShader, typename DrawPlane>
|
||||||
inline void execute_legacy_canvas_stroke_commit_erase(
|
inline void execute_legacy_canvas_stroke_commit_erase(
|
||||||
SetupShader&& setup_shader,
|
SetupShader&& setup_shader,
|
||||||
|
|||||||
Reference in New Issue
Block a user