1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-22 15:06:45 +00:00

Merge pull request #96007 from kitbdev/fix-external-script-reloading

Fix script overwriting with external editor
This commit is contained in:
Rémi Verschelde
2024-08-27 16:55:11 +02:00
2 changed files with 6 additions and 3 deletions

View File

@@ -2711,9 +2711,11 @@ void ScriptEditor::apply_scripts() const {
} }
void ScriptEditor::reload_scripts(bool p_refresh_only) { void ScriptEditor::reload_scripts(bool p_refresh_only) {
if (external_editor_active) { // Call deferred to make sure it runs on the main thread.
return; callable_mp(this, &ScriptEditor::_reload_scripts).call_deferred(p_refresh_only);
} }
void ScriptEditor::_reload_scripts(bool p_refresh_only) {
for (int i = 0; i < tab_container->get_tab_count(); i++) { for (int i = 0; i < tab_container->get_tab_count(); i++) {
ScriptEditorBase *se = Object::cast_to<ScriptEditorBase>(tab_container->get_tab_control(i)); ScriptEditorBase *se = Object::cast_to<ScriptEditorBase>(tab_container->get_tab_control(i));
if (!se) { if (!se) {

View File

@@ -436,6 +436,7 @@ class ScriptEditor : public PanelContainer {
void _file_removed(const String &p_file); void _file_removed(const String &p_file);
void _autosave_scripts(); void _autosave_scripts();
void _update_autosave_timer(); void _update_autosave_timer();
void _reload_scripts(bool p_refresh_only = false);
void _update_members_overview_visibility(); void _update_members_overview_visibility();
void _update_members_overview(); void _update_members_overview();