Skip to content

Commit 8e6ac24

Browse files
committed
Support install web project by zip file
1 parent fdb3a21 commit 8e6ac24

File tree

3 files changed

+14
-3
lines changed

3 files changed

+14
-3
lines changed

editor/project_manager.cpp

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -772,6 +772,15 @@ void ProjectDialog::show_dialog() {
772772
}
773773

774774
popup_centered(Size2(500, 0) * EDSCALE);
775+
// direct install the project if it's a zip file
776+
if (mode == MODE_INSTALL) {
777+
Ref<DirAccess> d = DirAccess::create(DirAccess::ACCESS_FILESYSTEM);
778+
const String project_name_no_edges = project_name->get_text().strip_edges();
779+
if (!d->dir_exists(project_name_no_edges)) {
780+
_create_folder();
781+
}
782+
ok_pressed();
783+
}
775784
}
776785

777786
void ProjectDialog::_notification(int p_what) {
@@ -2280,7 +2289,7 @@ void ProjectManager::_on_project_created(const String &dir) {
22802289
int i = _project_list->refresh_project(dir);
22812290
_project_list->select_project(i);
22822291
_project_list->ensure_project_visible(i);
2283-
_open_selected_projects_ask();
2292+
_open_selected_projects();
22842293

22852294
_project_list->update_dock_menu();
22862295
}

main/main.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -376,7 +376,7 @@ void finalize_theme_db() {
376376
theme_db = nullptr;
377377
}
378378

379-
//#define DEBUG_INIT
379+
#define DEBUG_INIT
380380
#ifdef DEBUG_INIT
381381
#define MAIN_PRINT(m_txt) print_line(m_txt)
382382
#else

platform/web/web_main.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,8 @@
3535
#include "core/config/engine.h"
3636
#include "core/io/resource_loader.h"
3737
#include "main/main.h"
38+
#include "scene/main/scene_tree.h"
39+
#include "scene/main/window.h"
3840

3941
#include <emscripten/emscripten.h>
4042
#include <stdlib.h>
@@ -132,7 +134,7 @@ extern EMSCRIPTEN_KEEPALIVE int godot_web_main(int argc, char *argv[]) {
132134
if (Engine::get_singleton()->is_project_manager_hint() && FileAccess::exists("/tmp/preload.zip")) {
133135
PackedStringArray ps;
134136
ps.push_back("/tmp/preload.zip");
135-
os->get_main_loop()->emit_signal(SNAME("files_dropped"), ps, -1);
137+
SceneTree::get_singleton()->get_root()->emit_signal(SNAME("files_dropped"), ps);
136138
}
137139
#endif
138140
emscripten_set_main_loop(main_loop_callback, -1, false);

0 commit comments

Comments
 (0)