diff --git a/Source/Editor/Windows/SceneTreeWindow.cs b/Source/Editor/Windows/SceneTreeWindow.cs index 8f06008a5..20cfa3584 100644 --- a/Source/Editor/Windows/SceneTreeWindow.cs +++ b/Source/Editor/Windows/SceneTreeWindow.cs @@ -34,6 +34,7 @@ namespace FlaxEditor.Windows private DragScriptItems _dragScriptItems; private DragHandlers _dragHandlers; private bool _isDropping = false; + private bool _forceScrollNodeToView = false; /// /// Scene tree panel. @@ -148,13 +149,21 @@ namespace FlaxEditor.Windows { var node = nodeSelection[nodeSelection.Count - 1]; node.Expand(true); + _forceScrollNodeToView = true; } PerformLayout(); PerformLayout(); + } - if(nodeSelection.Count != 0) + /// + public override void Update(float deltaTime) + { + base.Update(deltaTime); + + if(_tree.Selection.Count != 0 && _forceScrollNodeToView) { + _forceScrollNodeToView = false; ScrollToSelectedNode(); } }