aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/quickdialogs2/quickdialogs2/qquickfiledialog.cpp9
-rw-r--r--src/quickdialogs2/quickdialogs2/qquickfiledialog_p.h1
2 files changed, 10 insertions, 0 deletions
diff --git a/src/quickdialogs2/quickdialogs2/qquickfiledialog.cpp b/src/quickdialogs2/quickdialogs2/qquickfiledialog.cpp
index b74ace9aca..da899140b7 100644
--- a/src/quickdialogs2/quickdialogs2/qquickfiledialog.cpp
+++ b/src/quickdialogs2/quickdialogs2/qquickfiledialog.cpp
@@ -581,6 +581,15 @@ QUrl QQuickFileDialog::addDefaultSuffix(const QUrl &file) const
return url;
}
+void QQuickFileDialog::accept()
+{
+ if (QPlatformFileDialogHelper *fileDialog = qobject_cast<QPlatformFileDialogHelper *>(handle())) {
+ // Take the currently selected files and make them the final set of files.
+ setSelectedFiles(fileDialog->selectedFiles());
+ }
+ QQuickAbstractDialog::accept();
+}
+
QList<QUrl> QQuickFileDialog::addDefaultSuffixes(const QList<QUrl> &files) const
{
QList<QUrl> urls;
diff --git a/src/quickdialogs2/quickdialogs2/qquickfiledialog_p.h b/src/quickdialogs2/quickdialogs2/qquickfiledialog_p.h
index ef86e11133..1d1a0e82d1 100644
--- a/src/quickdialogs2/quickdialogs2/qquickfiledialog_p.h
+++ b/src/quickdialogs2/quickdialogs2/qquickfiledialog_p.h
@@ -146,6 +146,7 @@ protected:
void onCreate(QPlatformDialogHelper *dialog) override;
void onShow(QPlatformDialogHelper *dialog) override;
void onHide(QPlatformDialogHelper *dialog) override;
+ void accept() override;
private:
QUrl addDefaultSuffix(const QUrl &file) const;