diff --git a/editor/scene_tree_dock.cpp b/editor/scene_tree_dock.cpp index 5f62ed07020..935946bf246 100644 --- a/editor/scene_tree_dock.cpp +++ b/editor/scene_tree_dock.cpp @@ -569,7 +569,9 @@ void SceneTreeDock::_tool_selected(int p_tool, bool p_confirm_override) { Node *dupsingle = NULL; List editable_children; - for (List::Element *E = selection.front(); E; E = E->next()) { + selection.sort_custom(); + + for (List::Element *E = selection.back(); E; E = E->prev()) { Node *node = E->get(); Node *parent = node->get_parent();