Fix restoring editor game window from maximized state to split panels

This commit is contained in:
Ari Vuollet
2026-08-25 23:39:03 +03:00
parent 101c15c677
commit d21edc12cb
+6 -3
View File
@@ -133,6 +133,8 @@ namespace FlaxEditor.Windows
private float _gameStartTime;
private GUI.Docking.DockState _maximizeRestoreDockState;
private GUI.Docking.DockPanel _maximizeRestoreDockTo;
private GUI.Docking.DockPanel _maximizeRestoreDockToParent;
private float _maximizeRestoreSplitterValue;
private CursorLockMode _cursorLockMode = CursorLockMode.None;
// Viewport scaling variables
@@ -296,7 +298,8 @@ namespace FlaxEditor.Windows
if (value)
{
_maximizeRestoreDockTo = _dockedTo;
_maximizeRestoreDockState = _dockedTo.TryGetDockState(out _);
_maximizeRestoreDockToParent = _dockedTo.ParentDockPanel;
_maximizeRestoreDockState = _dockedTo.TryGetDockState(out _maximizeRestoreSplitterValue);
if (_maximizeRestoreDockState != GUI.Docking.DockState.Float)
{
var monitorBounds = Platform.GetMonitorBounds(PointToScreen(Size * 0.5f));
@@ -312,9 +315,9 @@ namespace FlaxEditor.Windows
rootWindow.Restore();
var dockTo = _maximizeRestoreDockTo;
if (dockTo != null && dockTo.IsDisposing)
dockTo = null;
dockTo = _maximizeRestoreDockToParent;
if (_dockedTo != dockTo)
Show(_maximizeRestoreDockState, dockTo);
Show(_maximizeRestoreDockState, dockTo, splitterValue: _maximizeRestoreSplitterValue);
}
}
}