diff options
-rw-r--r-- | editor/plugins/sprite_frames_editor_plugin.cpp | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/editor/plugins/sprite_frames_editor_plugin.cpp b/editor/plugins/sprite_frames_editor_plugin.cpp index 6b0e87e5e8..9715250405 100644 --- a/editor/plugins/sprite_frames_editor_plugin.cpp +++ b/editor/plugins/sprite_frames_editor_plugin.cpp @@ -1209,30 +1209,29 @@ void SpriteFramesEditor::_update_library(bool p_skip_selector) { bool searching = anim_search_box->get_text().size(); String searched_string = searching ? anim_search_box->get_text().to_lower() : String(); + TreeItem *selected = nullptr; for (const StringName &E : anim_names) { String name = E; - if (searching && name.to_lower().find(searched_string) < 0) { continue; } - TreeItem *it = animations->create_item(anim_root); - it->set_metadata(0, name); - it->set_text(0, name); it->set_editable(0, true); - if (animated_sprite) { if (name == String(animated_sprite->call("get_autoplay"))) { it->set_icon(0, autoplay_icon); } } - if (E == edited_anim) { it->select(0); + selected = it; } } + if (selected) { + animations->scroll_to_item(selected); + } } if (animated_sprite) { |