Browse Source
Merge pull request #2323 from AvaloniaUI/fixes/2137-popuproot-parent
Make sure PopupRoot.Parent is a Popup.
pull/2326/head
Steven Kirk
7 years ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with
4 additions and
4 deletions
-
src/Avalonia.Controls/Primitives/Popup.cs
|
|
|
@ -252,9 +252,9 @@ namespace Avalonia.Controls.Primitives |
|
|
|
else |
|
|
|
{ |
|
|
|
var parentPopuproot = _topLevel as PopupRoot; |
|
|
|
if (parentPopuproot != null && parentPopuproot.Parent != null) |
|
|
|
if (parentPopuproot?.Parent is Popup popup) |
|
|
|
{ |
|
|
|
((Popup)(parentPopuproot.Parent)).Closed += ParentClosed; |
|
|
|
popup.Closed += ParentClosed; |
|
|
|
} |
|
|
|
} |
|
|
|
_topLevel.AddHandler(PointerPressedEvent, PointerPressedOutside, RoutingStrategies.Tunnel); |
|
|
|
@ -293,9 +293,9 @@ namespace Avalonia.Controls.Primitives |
|
|
|
else |
|
|
|
{ |
|
|
|
var parentPopuproot = _topLevel as PopupRoot; |
|
|
|
if (parentPopuproot != null && parentPopuproot.Parent != null) |
|
|
|
if (parentPopuproot?.Parent is Popup popup) |
|
|
|
{ |
|
|
|
((Popup)parentPopuproot.Parent).Closed -= ParentClosed; |
|
|
|
popup.Closed -= ParentClosed; |
|
|
|
} |
|
|
|
} |
|
|
|
_nonClientListener?.Dispose(); |
|
|
|
|