summaryrefslogtreecommitdiff
path: root/editor/project_manager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'editor/project_manager.cpp')
-rw-r--r--editor/project_manager.cpp48
1 files changed, 28 insertions, 20 deletions
diff --git a/editor/project_manager.cpp b/editor/project_manager.cpp
index 379c3bbb01..7fcabb1e80 100644
--- a/editor/project_manager.cpp
+++ b/editor/project_manager.cpp
@@ -1881,18 +1881,20 @@ void ProjectManager::_notification(int p_what) {
} break;
case NOTIFICATION_RESIZED: {
- if (open_templates->is_visible()) {
+ if (open_templates && open_templates->is_visible()) {
open_templates->popup_centered();
}
- real_t size = get_size().x / EDSCALE;
- asset_library->set_columns(size < 1000 ? 1 : 2);
- // Adjust names of tabs to fit the new size.
- if (size < 650) {
- local_projects_hb->set_name(TTR("Local"));
- asset_library->set_name(TTR("Asset Library"));
- } else {
- local_projects_hb->set_name(TTR("Local Projects"));
- asset_library->set_name(TTR("Asset Library Projects"));
+ if (asset_library) {
+ real_t size = get_size().x / EDSCALE;
+ asset_library->set_columns(size < 1000 ? 1 : 2);
+ // Adjust names of tabs to fit the new size.
+ if (size < 650) {
+ local_projects_hb->set_name(TTR("Local"));
+ asset_library->set_name(TTR("Asset Library"));
+ } else {
+ local_projects_hb->set_name(TTR("Local Projects"));
+ asset_library->set_name(TTR("Asset Library Projects"));
+ }
}
} break;
@@ -1901,10 +1903,6 @@ void ProjectManager::_notification(int p_what) {
filter_option->select(default_sorting);
_project_list->set_order_option(default_sorting);
- if (_project_list->get_project_count() == 0 && StreamPeerSSL::is_available()) {
- open_templates->popup_centered();
- }
-
if (_project_list->get_project_count() >= 1) {
// Focus on the search box immediately to allow the user
// to search without having to reach for their mouse
@@ -1914,6 +1912,10 @@ void ProjectManager::_notification(int p_what) {
if (asset_library) {
// Removes extra border margins.
asset_library->add_theme_style_override("panel", memnew(StyleBoxEmpty));
+ // Suggest browsing asset library to get templates/demos.
+ if (open_templates && _project_list->get_project_count() == 0) {
+ open_templates->popup_centered();
+ }
}
} break;
@@ -2592,7 +2594,7 @@ ProjectManager::ProjectManager() {
search_tree_vb->add_child(hb);
search_box = memnew(LineEdit);
- search_box->set_placeholder(TTR("Filter projects"));
+ search_box->set_placeholder(TTR("Filter Projects"));
search_box->set_tooltip(TTR("This field filters projects by name and last path component.\nTo filter projects by name and full path, the query must contain at least one `/` character."));
search_box->connect("text_changed", callable_mp(this, &ProjectManager::_on_search_term_changed));
search_box->set_h_size_flags(Control::SIZE_EXPAND_FILL);
@@ -2771,6 +2773,9 @@ ProjectManager::ProjectManager() {
center_box->add_child(settings_hb);
}
+ // Asset Library can't work on Web editor for now as most assets are sourced
+ // directly from GitHub which does not set CORS.
+#ifndef JAVASCRIPT_ENABLED
if (StreamPeerSSL::is_available()) {
asset_library = memnew(EditorAssetLibrary(true));
asset_library->set_name(TTR("Asset Library Projects"));
@@ -2779,6 +2784,7 @@ ProjectManager::ProjectManager() {
} else {
WARN_PRINT("Asset Library not available, as it requires SSL to work.");
}
+#endif
{
// Dialogs
@@ -2847,11 +2853,13 @@ ProjectManager::ProjectManager() {
dialog_error = memnew(AcceptDialog);
add_child(dialog_error);
- open_templates = memnew(ConfirmationDialog);
- open_templates->set_text(TTR("You currently don't have any projects.\nWould you like to explore official example projects in the Asset Library?"));
- open_templates->get_ok_button()->set_text(TTR("Open Asset Library"));
- open_templates->connect("confirmed", callable_mp(this, &ProjectManager::_open_asset_library));
- add_child(open_templates);
+ if (asset_library) {
+ open_templates = memnew(ConfirmationDialog);
+ open_templates->set_text(TTR("You currently don't have any projects.\nWould you like to explore official example projects in the Asset Library?"));
+ open_templates->get_ok_button()->set_text(TTR("Open Asset Library"));
+ open_templates->connect("confirmed", callable_mp(this, &ProjectManager::_open_asset_library));
+ add_child(open_templates);
+ }
about = memnew(EditorAbout);
add_child(about);