From be1a568497e789539b3580e0da6c17f0c3e00215 Mon Sep 17 00:00:00 2001 From: danwalmsley Date: Mon, 20 Apr 2020 11:33:28 -0300 Subject: [PATCH] Merge pull request #3800 from AvaloniaUI/fixes/window-sizing-AGAIN Fix window sizing AGAIN --- src/Avalonia.Controls/Window.cs | 2 +- tests/Avalonia.Controls.UnitTests/WindowTests.cs | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/Avalonia.Controls/Window.cs b/src/Avalonia.Controls/Window.cs index 18e60c37e8..439f5442b7 100644 --- a/src/Avalonia.Controls/Window.cs +++ b/src/Avalonia.Controls/Window.cs @@ -525,8 +525,8 @@ namespace Avalonia.Controls protected override Size MeasureOverride(Size availableSize) { var sizeToContent = SizeToContent; - var constraint = availableSize; var clientSize = ClientSize; + var constraint = clientSize; if (sizeToContent.HasFlagCustom(SizeToContent.Width)) { diff --git a/tests/Avalonia.Controls.UnitTests/WindowTests.cs b/tests/Avalonia.Controls.UnitTests/WindowTests.cs index 6740984f73..b431ac5b48 100644 --- a/tests/Avalonia.Controls.UnitTests/WindowTests.cs +++ b/tests/Avalonia.Controls.UnitTests/WindowTests.cs @@ -358,7 +358,8 @@ namespace Avalonia.Controls.UnitTests target.Show(); - Assert.Equal(new Size(100, 50), child.MeasureSize); + Assert.Equal(1, child.MeasureSizes.Count); + Assert.Equal(new Size(100, 50), child.MeasureSizes[0]); } } @@ -379,7 +380,8 @@ namespace Avalonia.Controls.UnitTests target.Show(); - Assert.Equal(new Size(550, 450), child.MeasureSize); + Assert.Equal(1, child.MeasureSizes.Count); + Assert.Equal(new Size(550, 450), child.MeasureSizes[0]); } } @@ -399,7 +401,8 @@ namespace Avalonia.Controls.UnitTests target.Show(); - Assert.Equal(Size.Infinity, child.MeasureSize); + Assert.Equal(1, child.MeasureSizes.Count); + Assert.Equal(Size.Infinity, child.MeasureSizes[0]); } } @@ -555,11 +558,11 @@ namespace Avalonia.Controls.UnitTests private class ChildControl : Control { - public Size MeasureSize { get; private set; } + public List MeasureSizes { get; } = new List(); protected override Size MeasureOverride(Size availableSize) { - MeasureSize = availableSize; + MeasureSizes.Add(availableSize); return base.MeasureOverride(availableSize); } }