diff --git a/native/Avalonia.Native/src/OSX/window.mm b/native/Avalonia.Native/src/OSX/window.mm index b46655c7df..d7afbdaa3a 100644 --- a/native/Avalonia.Native/src/OSX/window.mm +++ b/native/Avalonia.Native/src/OSX/window.mm @@ -1936,6 +1936,10 @@ NSArray* AllLoopModes = [NSArray arrayWithObjects: NSDefaultRunLoopMode, NSEvent [NSApp setMenu:_menu]; } + else + { + [self showAppMenuOnly]; + } } -(void) showAppMenuOnly diff --git a/src/Avalonia.Controls/RelativePanel.cs b/src/Avalonia.Controls/RelativePanel.cs index 27f13a3f57..2305d8fb9e 100644 --- a/src/Avalonia.Controls/RelativePanel.cs +++ b/src/Avalonia.Controls/RelativePanel.cs @@ -55,7 +55,10 @@ namespace Avalonia.Controls _childGraph.Measure(availableSize); _childGraph.Reset(false); - var boundingSize = _childGraph.GetBoundingSize(Width.IsNaN(), Height.IsNaN()); + var calcWidth = Width.IsNaN() && HorizontalAlignment != HorizontalAlignment.Stretch; + var calcHeight = Height.IsNaN() && VerticalAlignment != VerticalAlignment.Stretch; + + var boundingSize = _childGraph.GetBoundingSize(calcWidth, calcHeight); _childGraph.Reset(); _childGraph.Measure(boundingSize); return boundingSize;