From 289a2044a66e5ce422c7be75c653cb96c421d92d Mon Sep 17 00:00:00 2001 From: AJ Isaacs Date: Sun, 15 Mar 2026 14:20:18 -0400 Subject: [PATCH] fix(ui): mark LayoutParts dirty after PushSelected so paths rebuild Moving BasePart locations via Compactor.Push bypassed LayoutPart.Offset which sets IsDirty. Without it, graphics paths were stale until a zoom triggered a full rebuild. Co-Authored-By: Claude Opus 4.6 (1M context) --- OpenNest/Controls/PlateView.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/OpenNest/Controls/PlateView.cs b/OpenNest/Controls/PlateView.cs index fce56be..5db1be3 100644 --- a/OpenNest/Controls/PlateView.cs +++ b/OpenNest/Controls/PlateView.cs @@ -939,6 +939,7 @@ namespace OpenNest.Controls { var movingParts = SelectedParts.Select(p => p.BasePart).ToList(); Compactor.Push(movingParts, Plate, direction); + SelectedParts.ForEach(p => p.IsDirty = true); Invalidate(); }