From e4bb8001b2ebd6b1f934fb80d22692c7b041cb30 Mon Sep 17 00:00:00 2001 From: Chandler Cox Date: Sat, 18 Oct 2025 18:23:33 -0500 Subject: [PATCH] Fix not having undo for items dragged into scene tree into empty space. --- Source/Editor/Windows/SceneTreeWindow.cs | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/Source/Editor/Windows/SceneTreeWindow.cs b/Source/Editor/Windows/SceneTreeWindow.cs index 75a3723cf..9ead85786 100644 --- a/Source/Editor/Windows/SceneTreeWindow.cs +++ b/Source/Editor/Windows/SceneTreeWindow.cs @@ -504,7 +504,9 @@ namespace FlaxEditor.Windows } var actor = item.OnEditorDrop(this); actor.Name = item.ShortName; - Level.SpawnActor(actor); + var scene = Level.Scenes[0]; + if (scene != null) + Editor.SceneEditing.Spawn(actor, scene); var graphNode = Editor.Scene.GetActorNode(actor.ID); if (graphNode != null) graphNodes.Add(graphNode); @@ -527,7 +529,9 @@ namespace FlaxEditor.Windows continue; } actor.Name = item.Name; - Level.SpawnActor(actor); + var scene = Level.Scenes[0]; + if (scene != null) + Editor.SceneEditing.Spawn(actor, scene); Editor.Scene.MarkSceneEdited(actor.Scene); } result = DragDropEffect.Move; @@ -549,7 +553,9 @@ namespace FlaxEditor.Windows Control = control, Name = item.Name, }; - Level.SpawnActor(uiControl); + var scene = Level.Scenes[0]; + if (scene != null) + Editor.SceneEditing.Spawn(uiControl, scene); Editor.Scene.MarkSceneEdited(uiControl.Scene); } result = DragDropEffect.Move; @@ -571,7 +577,9 @@ namespace FlaxEditor.Windows continue; } actor.Name = actorType.Name; - Level.SpawnActor(actor); + var scene = Level.Scenes[0]; + if (scene != null) + Editor.SceneEditing.Spawn(actor, scene); var graphNode = Editor.Scene.GetActorNode(actor.ID); if (graphNode != null) graphNodes.Add(graphNode);