diff --git a/ShareX.HelpersLib/Extensions/Extensions.cs b/ShareX.HelpersLib/Extensions/Extensions.cs index 8cddbd208..051a66706 100644 --- a/ShareX.HelpersLib/Extensions/Extensions.cs +++ b/ShareX.HelpersLib/Extensions/Extensions.cs @@ -566,7 +566,13 @@ public static void HideImageMargin(this ToolStripDropDownItem tsddi) public static void DisableMenuCloseOnClick(this ToolStripDropDownItem tsddi) { - tsddi.DropDown.Closing += (sender, e) => e.Cancel = e.CloseReason == ToolStripDropDownCloseReason.ItemClicked; + tsddi.DropDown.Closing -= DisableMenuCloseOnClick_DropDown_Closing; + tsddi.DropDown.Closing += DisableMenuCloseOnClick_DropDown_Closing; + } + + private static void DisableMenuCloseOnClick_DropDown_Closing(object sender, ToolStripDropDownClosingEventArgs e) + { + e.Cancel = e.CloseReason == ToolStripDropDownCloseReason.ItemClicked; } public static void SetValue(this NumericUpDown nud, decimal number) diff --git a/ShareX/Forms/MainForm.cs b/ShareX/Forms/MainForm.cs index a7883fab0..0bf43195b 100644 --- a/ShareX/Forms/MainForm.cs +++ b/ShareX/Forms/MainForm.cs @@ -590,6 +590,7 @@ private void UpdateImageEffectsMenu(ToolStripDropDownItem parent) { int indexAddImageEffects = AfterCaptureTasks.AddImageEffects.GetIndex() - 1; ToolStripMenuItem tsmiAddImageEffects = (ToolStripMenuItem)parent.DropDownItems[indexAddImageEffects]; + tsmiAddImageEffects.DisableMenuCloseOnClick(); tsmiAddImageEffects.DropDownItems.Clear(); for (int i = 0; i < Program.DefaultTaskSettings.ImageSettings.ImageEffectPresets.Count; i++)