diff options
author | Hugo Locurcio <hugo.locurcio@hugo.pro> | 2019-09-02 19:42:58 +0200 |
---|---|---|
committer | Hugo Locurcio <hugo.locurcio@hugo.pro> | 2019-09-02 20:08:55 +0200 |
commit | 6f915d386a292efdb1ba3307d6a0c4d2a592b38b (patch) | |
tree | 49d92643800a0f886b7a1d803ea52201fafc7e88 | |
parent | 2beea262bee317d3d566d475f46f45c8d7a7f94e (diff) |
Refresh the asset library only once on startup
This avoids unnecessary calls to the API when switching between tabs
in the editor or project manager.
-rw-r--r-- | editor/plugins/asset_library_editor_plugin.cpp | 5 | ||||
-rw-r--r-- | editor/plugins/asset_library_editor_plugin.h | 1 |
2 files changed, 5 insertions, 1 deletions
diff --git a/editor/plugins/asset_library_editor_plugin.cpp b/editor/plugins/asset_library_editor_plugin.cpp index 894e5c7298..60b5f017d2 100644 --- a/editor/plugins/asset_library_editor_plugin.cpp +++ b/editor/plugins/asset_library_editor_plugin.cpp @@ -586,7 +586,7 @@ void EditorAssetLibrary::_notification(int p_what) { } break; case NOTIFICATION_VISIBILITY_CHANGED: { - if (is_visible()) { + if (is_visible() && initial_loading) { _repository_changed(0); // Update when shown for the first time. } } break; @@ -1133,6 +1133,8 @@ void EditorAssetLibrary::_http_request_completed(int p_status, int p_code, const } break; case REQUESTING_SEARCH: { + initial_loading = false; + // The loading text only needs to be displayed before the first page is loaded library_loading->hide(); @@ -1328,6 +1330,7 @@ EditorAssetLibrary::EditorAssetLibrary(bool p_templates_only) { requesting = REQUESTING_NONE; templates_only = p_templates_only; + initial_loading = true; VBoxContainer *library_main = memnew(VBoxContainer); diff --git a/editor/plugins/asset_library_editor_plugin.h b/editor/plugins/asset_library_editor_plugin.h index b17a6dfe54..6a3158889e 100644 --- a/editor/plugins/asset_library_editor_plugin.h +++ b/editor/plugins/asset_library_editor_plugin.h @@ -206,6 +206,7 @@ class EditorAssetLibrary : public PanelContainer { HTTPRequest *request; bool templates_only; + bool initial_loading; enum Support { SUPPORT_OFFICIAL, |