From 93334eb6d0791b6fb463e5d29bf40329d85f5855 Mon Sep 17 00:00:00 2001 From: viksl <33526847+viksl@users.noreply.github.com> Date: Thu, 2 Nov 2023 08:20:04 +0100 Subject: [PATCH] Select nodes on drag and drop in 3D viewport --- editor/plugins/node_3d_editor_plugin.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/editor/plugins/node_3d_editor_plugin.cpp b/editor/plugins/node_3d_editor_plugin.cpp index 0a4dfd2e0d6c..8ef58d40cbb6 100644 --- a/editor/plugins/node_3d_editor_plugin.cpp +++ b/editor/plugins/node_3d_editor_plugin.cpp @@ -4353,6 +4353,7 @@ bool Node3DEditorViewport::_create_instance(Node *parent, String &path, const Po undo_redo->add_do_method(instantiated_scene, "set_owner", EditorNode::get_singleton()->get_edited_scene()); undo_redo->add_do_reference(instantiated_scene); undo_redo->add_undo_method(parent, "remove_child", instantiated_scene); + undo_redo->add_do_method(editor_selection, "add_node", instantiated_scene); String new_name = parent->validate_child_name(instantiated_scene); EditorDebuggerNode *ed = EditorDebuggerNode::get_singleton(); @@ -4401,7 +4402,8 @@ void Node3DEditorViewport::_perform_drop_data() { Vector error_files; - undo_redo->create_action(TTR("Create Node")); + undo_redo->create_action(TTR("Create Node"), UndoRedo::MERGE_DISABLE, target_node); + undo_redo->add_do_method(editor_selection, "clear"); for (int i = 0; i < selected_files.size(); i++) { String path = selected_files[i];