diff --git a/source/Components/Xceed.Wpf.AvalonDock/Controls/LayoutFloatingWindowControl.cs b/source/Components/Xceed.Wpf.AvalonDock/Controls/LayoutFloatingWindowControl.cs index 761565c1..844b1b9f 100644 --- a/source/Components/Xceed.Wpf.AvalonDock/Controls/LayoutFloatingWindowControl.cs +++ b/source/Components/Xceed.Wpf.AvalonDock/Controls/LayoutFloatingWindowControl.cs @@ -403,9 +403,9 @@ protected virtual IntPtr FilterMessage( IntPtr hwnd, int msg, IntPtr wParam, Int return IntPtr.Zero; } - internal void InternalClose() + internal void InternalClose(bool closeInitiatedByUser = false) { - _internalCloseFlag = true; + _internalCloseFlag = !closeInitiatedByUser; if( !_isClosing ) { _isClosing = true; diff --git a/source/Components/Xceed.Wpf.AvalonDock/DockingManager.cs b/source/Components/Xceed.Wpf.AvalonDock/DockingManager.cs index 81aed4ea..ffdae9b5 100644 --- a/source/Components/Xceed.Wpf.AvalonDock/DockingManager.cs +++ b/source/Components/Xceed.Wpf.AvalonDock/DockingManager.cs @@ -2425,7 +2425,7 @@ private void DockingManager_Unloaded( object sender, RoutedEventArgs e ) fw.SetParentWindowToNull(); fw.KeepContentVisibleOnClose = true; // To avoid calling Close method multiple times. - fw.InternalClose(); + fw.InternalClose(true); } _fwList.Clear();