diff --git a/Source/Editor/GUI/Docking/FloatWindowDockPanel.cs b/Source/Editor/GUI/Docking/FloatWindowDockPanel.cs index e53b9000b..9dfc2a896 100644 --- a/Source/Editor/GUI/Docking/FloatWindowDockPanel.cs +++ b/Source/Editor/GUI/Docking/FloatWindowDockPanel.cs @@ -135,11 +135,7 @@ namespace FlaxEditor.GUI.Docking settings.MaximumSize = Float2.Zero; // Unlimited size settings.Fullscreen = false; settings.HasBorder = true; -#if PLATFORM_SDL settings.SupportsTransparency = true; -#else - settings.SupportsTransparency = false; -#endif settings.ActivateWhenFirstShown = true; settings.AllowInput = true; settings.AllowMinimize = true; @@ -211,6 +207,7 @@ namespace FlaxEditor.GUI.Docking { if (ChildPanelsCount > 0) return; + // Close window _window?.Close(); } diff --git a/Source/Editor/GUI/Docking/WindowDragHelper.cs b/Source/Editor/GUI/Docking/WindowDragHelper.cs index 854d5628e..42ae619f6 100644 --- a/Source/Editor/GUI/Docking/WindowDragHelper.cs +++ b/Source/Editor/GUI/Docking/WindowDragHelper.cs @@ -269,8 +269,9 @@ namespace FlaxEditor.GUI.Docking if (_toDock == null) return; - if (_toDock.RootWindow.Window != _dragSourceWindow) - _toDock.RootWindow.Window.MouseUp -= OnMouseUp; + var window = _toDock.RootWindow?.Window; + if (window != null && window != _dragSourceWindow) + window.MouseUp -= OnMouseUp; _dockHintDown?.Parent.RemoveChild(_dockHintDown); _dockHintUp?.Parent.RemoveChild(_dockHintUp); @@ -327,10 +328,10 @@ namespace FlaxEditor.GUI.Docking _toDock?.RootWindow.Window.BringToFront(); //_toDock?.RootWindow.Window.Focus(); -#if PLATFORM_SDL // Make the dragged window transparent when dock hints are visible _toMove.Window.Window.Opacity = _toDock == null ? 1.0f : DragWindowOpacity; -#else + +#if !PLATFORM_SDL // Bring the drop source always to the top if (_dragSourceWindow != null) _dragSourceWindow.BringToFront();