From 08976e81c7ca4cc23086beeb561f179ea0c9ffba Mon Sep 17 00:00:00 2001 From: Keroosha Date: Sat, 14 Sep 2019 03:09:48 +0300 Subject: [PATCH] Use screen bounds if woking area is empty --- .../Primitives/PopupPositioning/ManagedPopupPositioner.cs | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Avalonia.Controls/Primitives/PopupPositioning/ManagedPopupPositioner.cs b/src/Avalonia.Controls/Primitives/PopupPositioning/ManagedPopupPositioner.cs index d428952bb9..07348cdf78 100644 --- a/src/Avalonia.Controls/Primitives/PopupPositioning/ManagedPopupPositioner.cs +++ b/src/Avalonia.Controls/Primitives/PopupPositioning/ManagedPopupPositioner.cs @@ -100,6 +100,12 @@ namespace Avalonia.Controls.Primitives.PopupPositioning ?? screens.FirstOrDefault(s => s.Bounds.Contains(parentGeometry.TopLeft)) ?? screens.FirstOrDefault(s => s.Bounds.Intersects(parentGeometry)) ?? screens.FirstOrDefault(); + + if (targetScreen != null && targetScreen.WorkingArea.IsEmpty) + { + return targetScreen.Bounds; + } + return targetScreen?.WorkingArea ?? new Rect(0, 0, double.MaxValue, double.MaxValue); }