summaryrefslogtreecommitdiffstats
path: root/scene/gui
diff options
context:
space:
mode:
authorbruvzg <7645683+bruvzg@users.noreply.github.com>2024-08-23 09:53:16 +0300
committerbruvzg <7645683+bruvzg@users.noreply.github.com>2024-08-23 09:53:16 +0300
commitea252675aaea6fca22a479b0e412de15401ddef2 (patch)
tree0ae51b6683b83b31bec76be23b2c49d1408918e3 /scene/gui
parent568589c9d8c763bfb3a4348174d53b42d7c59f21 (diff)
downloadredot-engine-ea252675aaea6fca22a479b0e412de15401ddef2.tar.gz
[Windows] Emit native file dialog callback from event loop, fix selected options not saved.
Diffstat (limited to 'scene/gui')
-rw-r--r--scene/gui/file_dialog.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/scene/gui/file_dialog.cpp b/scene/gui/file_dialog.cpp
index 8047369ab1..2614e1d180 100644
--- a/scene/gui/file_dialog.cpp
+++ b/scene/gui/file_dialog.cpp
@@ -124,6 +124,8 @@ void FileDialog::_native_dialog_cb(bool p_ok, const Vector<String> &p_files, int
file_name = ProjectSettings::get_singleton()->localize_path(file_name);
}
}
+ selected_options = p_selected_options;
+
String f = files[0];
if (mode == FILE_MODE_OPEN_FILES) {
emit_signal(SNAME("files_selected"), files);
@@ -155,7 +157,6 @@ void FileDialog::_native_dialog_cb(bool p_ok, const Vector<String> &p_files, int
}
file->set_text(f);
dir->set_text(f.get_base_dir());
- selected_options = p_selected_options;
filter->select(p_filter);
}