Browse Source

Use screen bounds if woking area is empty

Keroosha 6 years ago
parent
commit
08976e81c7

+ 6 - 0
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);
             }