Fix external editor hot reload

This commit is contained in:
Omar Shehata 2023-10-07 22:14:54 -04:00
parent fba341ce44
commit c25a2d832b
4 changed files with 7 additions and 4 deletions

View file

@ -987,7 +987,7 @@ void ScriptEditor::_res_saved_callback(const Ref<Resource> &p_res) {
}
_update_script_names();
_trigger_live_script_reload();
trigger_live_script_reload();
}
void ScriptEditor::_scene_saved_callback(const String &p_path) {
@ -1015,7 +1015,7 @@ void ScriptEditor::_scene_saved_callback(const String &p_path) {
}
}
void ScriptEditor::_trigger_live_script_reload() {
void ScriptEditor::trigger_live_script_reload() {
if (!pending_auto_reload && auto_reload_running_scripts) {
call_deferred(SNAME("_live_auto_reload_running_scripts"));
pending_auto_reload = true;

View file

@ -378,7 +378,6 @@ class ScriptEditor : public PanelContainer {
bool pending_auto_reload;
bool auto_reload_running_scripts;
void _trigger_live_script_reload();
void _live_auto_reload_running_scripts();
void _update_selected_editor_menu();
@ -538,6 +537,8 @@ public:
void clear_docs_from_script(const Ref<Script> &p_script);
void update_docs_from_script(const Ref<Script> &p_script);
void trigger_live_script_reload();
bool can_take_away_focus() const;
VSplitContainer *get_left_list_split() { return list_split; }

View file

@ -809,7 +809,7 @@ void ScriptEditor::_update_modified_scripts_for_external_editor(Ref<Script> p_fo
scr->set_last_modified_time(rel_scr->get_last_modified_time());
scr->update_exports();
_trigger_live_script_reload();
trigger_live_script_reload();
}
}
}

View file

@ -110,9 +110,11 @@ void GDScriptTextDocument::didSave(const Variant &p_param) {
} else {
scr->reload(true);
}
scr->update_exports();
ScriptEditor::get_singleton()->reload_scripts(true);
ScriptEditor::get_singleton()->update_docs_from_script(scr);
ScriptEditor::get_singleton()->trigger_live_script_reload();
}
}