diff --git a/src/Windows/Avalonia.Win32/WindowImpl.cs b/src/Windows/Avalonia.Win32/WindowImpl.cs index 1383a81dd6..146ab496fa 100644 --- a/src/Windows/Avalonia.Win32/WindowImpl.cs +++ b/src/Windows/Avalonia.Win32/WindowImpl.cs @@ -894,16 +894,20 @@ namespace Avalonia.Win32 style = style | controlledFlags ^ controlledFlags; - style |= WindowStyles.WS_OVERLAPPEDWINDOW; + style |= WindowStyles.WS_OVERLAPPED | + WindowStyles.WS_MINIMIZEBOX | + WindowStyles.WS_MAXIMIZEBOX; - if (!_decorated) + if (_decorated) { - style ^= (WindowStyles.WS_CAPTION | WindowStyles.WS_SYSMENU); + style |= + WindowStyles.WS_CAPTION | + WindowStyles.WS_SYSMENU; } - if (!_resizable) + if (_resizable) { - style ^= (WindowStyles.WS_SIZEFRAME); + style |= WindowStyles.WS_SIZEFRAME; } var oldThickness = BorderThickness; @@ -936,7 +940,6 @@ namespace Avalonia.Win32 UnmanagedMethods.SetWindowPos(_hwnd, IntPtr.Zero, (int)newRect.X, (int)newRect.Y, (int)newRect.Width, (int)newRect.Height, UnmanagedMethods.SetWindowPosFlags.SWP_NOZORDER | UnmanagedMethods.SetWindowPosFlags.SWP_NOACTIVATE | SetWindowPosFlags.SWP_FRAMECHANGED); - } public void CanResize(bool value)