Browse Source

Merge pull request #51729 from yjh0502/ext-reload-master

Auto-reload scripts with external editor
Rémi Verschelde 4 years ago
parent
commit
aa3909cf54

+ 3 - 0
editor/plugins/script_editor_plugin.cpp

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

+ 1 - 0
editor/plugins/script_editor_plugin.h

@@ -344,6 +344,7 @@ class ScriptEditor : public PanelContainer {
 
 
 	bool pending_auto_reload;
 	bool pending_auto_reload;
 	bool auto_reload_running_scripts;
 	bool auto_reload_running_scripts;
+	void _trigger_live_script_reload();
 	void _live_auto_reload_running_scripts();
 	void _live_auto_reload_running_scripts();
 
 
 	void _update_selected_editor_menu();
 	void _update_selected_editor_menu();

+ 2 - 0
editor/plugins/script_text_editor.cpp

@@ -666,6 +666,8 @@ void ScriptEditor::_update_modified_scripts_for_external_editor(Ref<Script> p_fo
 			script->set_source_code(rel_script->get_source_code());
 			script->set_source_code(rel_script->get_source_code());
 			script->set_last_modified_time(rel_script->get_last_modified_time());
 			script->set_last_modified_time(rel_script->get_last_modified_time());
 			script->update_exports();
 			script->update_exports();
+
+			_trigger_live_script_reload();
 		}
 		}
 	}
 	}
 }
 }