From 4152b2e365da44e03955346ec98988a67661930e Mon Sep 17 00:00:00 2001 From: Dan Walmsley Date: Fri, 22 May 2020 17:18:34 -0300 Subject: [PATCH] Decorations Margin shouldnt include the border margin other wise users have to do subtractions. --- src/Avalonia.Controls/Chrome/CaptionButtons.cs | 2 +- src/Avalonia.Controls/Window.cs | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Avalonia.Controls/Chrome/CaptionButtons.cs b/src/Avalonia.Controls/Chrome/CaptionButtons.cs index 20a42aadf6..556c759825 100644 --- a/src/Avalonia.Controls/Chrome/CaptionButtons.cs +++ b/src/Avalonia.Controls/Chrome/CaptionButtons.cs @@ -55,7 +55,7 @@ namespace Avalonia.Controls.Chrome void InvalidateSize () { Margin = new Thickness(1, _hostWindow.OffScreenMargin.Top, 1, 1); - Height = _hostWindow.WindowDecorationMargins.Top - _hostWindow.OffScreenMargin.Top; + Height = _hostWindow.WindowDecorationMargins.Top; } public void Detach() diff --git a/src/Avalonia.Controls/Window.cs b/src/Avalonia.Controls/Window.cs index 8d66e03f98..d63b1350bc 100644 --- a/src/Avalonia.Controls/Window.cs +++ b/src/Avalonia.Controls/Window.cs @@ -540,7 +540,11 @@ namespace Avalonia.Controls { IsExtendedIntoWindowDecorations = isExtended; - WindowDecorationMargins = PlatformImpl.ExtendedMargins; + WindowDecorationMargins = new Thickness( + PlatformImpl.ExtendedMargins.Left, + PlatformImpl.ExtendedMargins.Top - PlatformImpl.OffScreenMargin.Top, + PlatformImpl.ExtendedMargins.Right, + PlatformImpl.ExtendedMargins.Bottom); OffScreenMargin = PlatformImpl.OffScreenMargin; }