From 841df47fd14d610caed6555cd4be0e0f951d74a8 Mon Sep 17 00:00:00 2001 From: Dan Walmsley Date: Thu, 10 May 2018 13:43:29 +0100 Subject: [PATCH] minor fix. --- src/Windows/Avalonia.Win32/WindowImpl.cs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/Windows/Avalonia.Win32/WindowImpl.cs b/src/Windows/Avalonia.Win32/WindowImpl.cs index 92913ef9eb..bfe4b69eef 100644 --- a/src/Windows/Avalonia.Win32/WindowImpl.cs +++ b/src/Windows/Avalonia.Win32/WindowImpl.cs @@ -29,6 +29,7 @@ namespace Avalonia.Win32 private string _className; private IntPtr _hwnd; private IInputRoot _owner; + private IntPtr _ownerHandle; private bool _trackingMouse; private bool _decorated = true; private bool _resizable = true; @@ -876,7 +877,14 @@ namespace Avalonia.Win32 public void SetOwner(IWindowImpl owner) { - UnmanagedMethods.SetWindowLong(_hwnd, -8, (uint)owner.Handle.Handle); + if(_ownerHandle == IntPtr.Zero && owner.Handle.Handle == IntPtr.Zero) + { + return; // this would cause a failure Error 1400. + } + + UnmanagedMethods.SetWindowLong(_hwnd, (int)WindowLongParam.GWL_HWNDPARENT, (uint)owner.Handle.Handle); + + _ownerHandle = owner.Handle.Handle; } } }