Merge pull request #82986 from OmarShehata/fix-external-editor-hot-reload

Fix external editor hot reload for GDScript
This commit is contained in:
Rémi Verschelde 2023-10-11 22:38:42 +02:00
commit 25fa5eadd5
No known key found for this signature in database
GPG key ID: C3336907360768E1
4 changed files with 7 additions and 4 deletions

View file

@ -997,7 +997,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) {
@ -1025,7 +1025,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

@ -822,7 +822,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();
}
}