summaryrefslogtreecommitdiffstats
path: root/editor/export/editor_export.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'editor/export/editor_export.cpp')
-rw-r--r--editor/export/editor_export.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/editor/export/editor_export.cpp b/editor/export/editor_export.cpp
index 1be9fe5740..9a0f2f18fa 100644
--- a/editor/export/editor_export.cpp
+++ b/editor/export/editor_export.cpp
@@ -32,6 +32,7 @@
#include "core/config/project_settings.h"
#include "core/io/config_file.h"
+#include "editor/editor_settings.h"
EditorExport *EditorExport::singleton = nullptr;
@@ -191,6 +192,12 @@ void EditorExport::_notification(int p_what) {
export_platforms.write[i]->cleanup();
}
} break;
+
+ case EditorSettings::NOTIFICATION_EDITOR_SETTINGS_CHANGED: {
+ for (int i = 0; i < export_platforms.size(); i++) {
+ export_platforms.write[i]->notification(p_what);
+ }
+ } break;
}
}
@@ -364,6 +371,7 @@ void EditorExport::update_export_presets() {
if (platform_options.has(preset->get_platform()->get_name())) {
export_presets_updated = true;
+ bool update_value_overrides = false;
List<EditorExportPlatform::ExportOption> options = platform_options[preset->get_platform()->get_name()];
// Clear the preset properties prior to reloading, keep the values to preserve options from plugins that may be currently disabled.
@@ -377,6 +385,13 @@ void EditorExport::update_export_presets() {
preset->values[option_name] = E.default_value;
}
preset->update_visibility[option_name] = E.update_visibility;
+ if (E.update_visibility) {
+ update_value_overrides = true;
+ }
+ }
+
+ if (update_value_overrides) {
+ preset->update_value_overrides();
}
}
}