Fix file extensions persisting in file dialog after export
This caused issues if one decided to export many formats in a row. The new file extension would be appended to the previous one. Now, the filename is retained without its extension for successive exports. Fixes #7291
This commit is contained in:
parent
71a3e71b61
commit
24fe3bd605
2 changed files with 8 additions and 0 deletions
|
@ -717,6 +717,7 @@ void ProjectExportDialog::_export_project() {
|
|||
|
||||
export_project->set_access(FileDialog::ACCESS_FILESYSTEM);
|
||||
export_project->clear_filters();
|
||||
export_project->set_current_file(default_filename);
|
||||
String extension = platform->get_binary_extension();
|
||||
if (extension != String()) {
|
||||
export_project->add_filter("*." + extension + " ; " + platform->get_name() + " Export");
|
||||
|
@ -726,6 +727,9 @@ void ProjectExportDialog::_export_project() {
|
|||
}
|
||||
|
||||
void ProjectExportDialog::_export_project_to_path(const String &p_path) {
|
||||
// Save this name for use in future exports (but drop the file extension)
|
||||
default_filename = p_path.get_basename().get_file();
|
||||
EditorSettings::get_singleton()->set_project_metadata("export_options", "default_filename", default_filename);
|
||||
|
||||
Ref<EditorExportPreset> current = EditorExport::get_singleton()->get_export_preset(presets->get_current());
|
||||
ERR_FAIL_COND(current.is_null());
|
||||
|
@ -970,6 +974,8 @@ ProjectExportDialog::ProjectExportDialog() {
|
|||
set_hide_on_ok(false);
|
||||
|
||||
editor_icons = "EditorIcons";
|
||||
|
||||
default_filename = EditorSettings::get_singleton()->get_project_metadata("export_options", "default_filename", String());
|
||||
}
|
||||
|
||||
ProjectExportDialog::~ProjectExportDialog() {
|
||||
|
|
|
@ -99,6 +99,8 @@ private:
|
|||
Label *export_error;
|
||||
HBoxContainer *export_templates_error;
|
||||
|
||||
String default_filename;
|
||||
|
||||
void _patch_selected(const String &p_path);
|
||||
void _patch_deleted();
|
||||
|
||||
|
|
Loading…
Reference in a new issue