diff --git a/PartPreviewWindow/ViewGcodeBasic.cs b/PartPreviewWindow/ViewGcodeBasic.cs index d9a138405..7646ecfb0 100644 --- a/PartPreviewWindow/ViewGcodeBasic.cs +++ b/PartPreviewWindow/ViewGcodeBasic.cs @@ -773,11 +773,20 @@ namespace MatterHackers.MatterControl.PartPreviewWindow { parent = parent.Parent; } + UnHookWidgetThatHasKeyDownHooked(); parent.KeyDown += Parent_KeyDown; widgetThatHasKeyDownHooked = parent; } } + void UnHookWidgetThatHasKeyDownHooked() + { + if (widgetThatHasKeyDownHooked != null) + { + widgetThatHasKeyDownHooked.KeyDown -= Parent_KeyDown; + } + } + void Parent_KeyDown(object sender, KeyEventArgs keyEvent) { if (keyEvent.KeyCode == Keys.Up) @@ -982,10 +991,7 @@ namespace MatterHackers.MatterControl.PartPreviewWindow public override void OnClosed(EventArgs e) { - if (widgetThatHasKeyDownHooked != null) - { - widgetThatHasKeyDownHooked.KeyDown -= Parent_KeyDown; - } + UnHookWidgetThatHasKeyDownHooked(); if (unregisterEvents != null) {