From 52e8cd1002acdb4c34c432ccb7c9c9b3cb145734 Mon Sep 17 00:00:00 2001 From: gianlucafiore <50465150+gianlucafiore@users.noreply.github.com> Date: Thu, 15 Oct 2026 20:10:08 -0300 Subject: [PATCH] fix(otrack): commit Extension intersection at tracked crossing on click --- src/app/update/viewport.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/app/update/viewport.rs b/src/app/update/viewport.rs index 4c819a3e6..14797ccb1 100644 --- a/src/app/update/viewport.rs +++ b/src/app/update/viewport.rs @@ -4561,8 +4561,15 @@ impl OpenCADStudio { if let Some(h) = otrack.filter(|_| { // Match the hover path: preserve exact object snaps, but // allow Extension to resolve a crossing with OTRACK. - !snap_hit.is_some_and(|s| s.snap_type != crate::snap::SnapType::Grid) + !snap_hit.is_some_and(|s| { + !matches!( + s.snap_type, + crate::snap::SnapType::Grid | crate::snap::SnapType::Extension + ) + }) }) { + // Commit the actual OTRACK intersection, not the cursor + // projection onto Extension. pt = h.aligned; if clamp_world_xy { pt.z = 0.0;