summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKanabenki <18357657+Kanabenki@users.noreply.github.com>2019-07-06 14:51:24 +0200
committerKanabenki <18357657+Kanabenki@users.noreply.github.com>2019-07-06 14:51:24 +0200
commit6eb6895db8a58ddffdccb4cc4ff65796cc0b53c0 (patch)
treee07cda8bb07fdf689c45e062dd381d46d1dac6b0
parenta7bf187da7ad2e87785fe4bec69ca9973874945c (diff)
Sort selected nodes in scene tree before duplication
-rw-r--r--editor/scene_tree_dock.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/editor/scene_tree_dock.cpp b/editor/scene_tree_dock.cpp
index 5f62ed0702..935946bf24 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<Node *> editable_children;
- for (List<Node *>::Element *E = selection.front(); E; E = E->next()) {
+ selection.sort_custom<Node::Comparator>();
+
+ for (List<Node *>::Element *E = selection.back(); E; E = E->prev()) {
Node *node = E->get();
Node *parent = node->get_parent();