From 679f501b33513c054f53a2776d30ce213d7aa7a2 Mon Sep 17 00:00:00 2001 From: Goldenlion5648 Date: Tue, 10 Mar 2026 19:03:55 -0400 Subject: [PATCH] make selecting node in remote expand tree --- editor/debugger/editor_debugger_tree.cpp | 11 ++--------- editor/debugger/editor_debugger_tree.h | 1 - 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/editor/debugger/editor_debugger_tree.cpp b/editor/debugger/editor_debugger_tree.cpp index 141880d03b..0343f517ca 100644 --- a/editor/debugger/editor_debugger_tree.cpp +++ b/editor/debugger/editor_debugger_tree.cpp @@ -282,18 +282,12 @@ void EditorDebuggerTree::update_scene_tree(const SceneDebuggerTree *p_tree, int if (debugger_id == p_debugger) { // Can use remote id. if (inspected_object_ids.has(uint64_t(node.id))) { ids_present.append(node.id); - - if (selection_uncollapse_all) { - selection_uncollapse_all = false; - + select_items.push_back(item); + if (should_scroll) { // Temporarily set to `false`, to allow caching the unfolds. updating_scene_tree = false; item->uncollapse_tree(); updating_scene_tree = true; - } - - select_items.push_back(item); - if (should_scroll) { scroll_item = item; } } @@ -415,7 +409,6 @@ void EditorDebuggerTree::update_scene_tree(const SceneDebuggerTree *p_tree, int void EditorDebuggerTree::select_nodes(const TypedArray &p_ids) { // Manually select, as the tree control may be out-of-date for some reason (e.g. not shown yet). - selection_uncollapse_all = true; inspected_object_ids = p_ids; scrolling_to_item = true; diff --git a/editor/debugger/editor_debugger_tree.h b/editor/debugger/editor_debugger_tree.h index 27327dbe96..4788eb6cf0 100644 --- a/editor/debugger/editor_debugger_tree.h +++ b/editor/debugger/editor_debugger_tree.h @@ -65,7 +65,6 @@ private: bool scrolling_to_item = false; bool notify_selection_queued = false; bool selection_surpassed_limit = false; - bool selection_uncollapse_all = false; HashSet unfold_cache; PopupMenu *item_menu = nullptr; EditorFileDialog *file_dialog = nullptr;