From 5180ce1506ed04cb936eb473af77d99ce0030142 Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Wed, 14 Oct 2026 10:20:57 -0400 Subject: [PATCH] feat(inspection): keep header zoom live while plate navigation is locked Validation inspection disabled the whole plate header, so the zoom buttons and Ctrl+Plus/Ctrl+Minus stopped working even though wheel zoom and fit stay available. Group the plate navigation buttons into their own container so the inspection scope can lock them while leaving the viewport-only zoom controls and shortcuts live. Co-Authored-By: Claude Opus 5.5 --- .../Forms/CuttingValidationPanelTests.cs | 29 +++++++++++++++++++ OpenNest/Controls/PlateView.cs | 2 ++ OpenNest/Forms/EditNestForm.cs | 10 +++++-- OpenNest/Forms/MainForm.cs | 5 ++++ OpenNest/Forms/ValidationInspectionScope.cs | 11 ++++--- docs/post-verification.md | 4 ++- 6 files changed, 52 insertions(+), 9 deletions(-) diff --git a/OpenNest.WinForms.Tests/Forms/CuttingValidationPanelTests.cs b/OpenNest.WinForms.Tests/Forms/CuttingValidationPanelTests.cs index 794ec5b3..58afde09 100644 --- a/OpenNest.WinForms.Tests/Forms/CuttingValidationPanelTests.cs +++ b/OpenNest.WinForms.Tests/Forms/CuttingValidationPanelTests.cs @@ -271,6 +271,35 @@ public class CuttingValidationPanelTests Assert.False(view.ValidationOverlay.IsAnimating); }); + [Fact] + public void HeaderZoomStaysLiveWhilePlateNavigationIsLocked() => RunSta(() => + { + using var editor = RapidEditor(); + editor.Show(); + editor.PlateManager.LoadAt(0); + editor.OpenValidationInspection(); + var panel = editor.CuttingInspection!; + Pump(() => panel.ValidationReport != null && !panel.IsPlanning); + var view = editor.PlateView; + Button Zoom(string name) => Assert.IsType