diff --git a/src/Avalonia.Controls/Button.cs b/src/Avalonia.Controls/Button.cs index 4fe385a782..a7ebced0ca 100644 --- a/src/Avalonia.Controls/Button.cs +++ b/src/Avalonia.Controls/Button.cs @@ -271,6 +271,11 @@ namespace Avalonia.Controls IsPressed = true; e.Handled = true; } + else if (e.Key == Key.Escape && Flyout != null) + { + // If Flyout doesn't have focusable content, close the flyout here + Flyout.Hide(); + } base.OnKeyDown(e); }