diff --git a/src/MaterialDesignThemes.Wpf/PopupBox.cs b/src/MaterialDesignThemes.Wpf/PopupBox.cs index 62df1e2fb9..710e3e7482 100644 --- a/src/MaterialDesignThemes.Wpf/PopupBox.cs +++ b/src/MaterialDesignThemes.Wpf/PopupBox.cs @@ -833,7 +833,7 @@ protected override void OnMouseLeftButtonUp(MouseButtonEventArgs e) private void ToggleButtonOnPreviewMouseLeftButtonUp(object? sender, MouseButtonEventArgs mouseButtonEventArgs) { - if (PopupMode == PopupBoxPopupMode.Click || !IsPopupOpen) return; + if (!IsPopupOpen) return; if (ToggleCheckedContent != null) { diff --git a/tests/MaterialDesignThemes.UITests/WPF/PopupBoxes/PopupBoxTests.cs b/tests/MaterialDesignThemes.UITests/WPF/PopupBoxes/PopupBoxTests.cs index d66152e4cd..daeee9a379 100644 --- a/tests/MaterialDesignThemes.UITests/WPF/PopupBoxes/PopupBoxTests.cs +++ b/tests/MaterialDesignThemes.UITests/WPF/PopupBoxes/PopupBoxTests.cs @@ -51,4 +51,33 @@ await Wait.For(async () => await Assert.That(await border.GetBackgroundColor()).IsEqualTo(Colors.Red); }); } + + [Test] + [Description("https://github.com/MaterialDesignInXAML/MaterialDesignInXamlToolkit/issues/2280")] + public async Task PopupBox_WhenInOpenedState_ClosesWhenClicked() + { + //Arrange + IVisualElement popupBox = await LoadXaml(""" + + +