From f57d5c492d48b32e660bca4c6bb29a161d34d0d1 Mon Sep 17 00:00:00 2001 From: Nicolas Fella Date: Sat, 6 Jul 2024 19:29:58 +0200 Subject: [PATCH] FileChooser portal: Store directory as QUrl instead of QString Otherwise we lose the scheme when reading it back as QUrl Pick-to: 6.7 6.5 Change-Id: Ice6e083611c93641ef33f00fa48f1b32dc25f718 Reviewed-by: Thiago Macieira (cherry picked from commit 46ffca13fb0705c54ad05bc2c1a37f7d5fb5132d) Reviewed-by: Qt Cherry-pick Bot --- .../xdgdesktopportal/qxdgdesktopportalfiledialog.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/plugins/platformthemes/xdgdesktopportal/qxdgdesktopportalfiledialog.cpp b/src/plugins/platformthemes/xdgdesktopportal/qxdgdesktopportalfiledialog.cpp index 1c162be8fc9..aa29deed726 100644 --- a/src/plugins/platformthemes/xdgdesktopportal/qxdgdesktopportalfiledialog.cpp +++ b/src/plugins/platformthemes/xdgdesktopportal/qxdgdesktopportalfiledialog.cpp @@ -80,7 +80,7 @@ public: QEventLoop loop; QString acceptLabel; - QString directory; + QUrl directory; QString title; QStringList nameFilters; QStringList mimeTypesFilters; @@ -170,7 +170,7 @@ void QXdgDesktopPortalFileDialog::openPortal(Qt::WindowFlags windowFlags, Qt::Wi options.insert("directory"_L1, d->directoryMode); if (!d->directory.isEmpty()) - options.insert("current_folder"_L1, QFile::encodeName(d->directory).append('\0')); + options.insert("current_folder"_L1, QFile::encodeName(d->directory.toLocalFile()).append('\0')); if (d->saveFile && !d->selectedFiles.isEmpty()) { // current_file for the file to be pre-selected, current_name for the file name to be @@ -318,7 +318,7 @@ void QXdgDesktopPortalFileDialog::setDirectory(const QUrl &directory) d->nativeFileDialog->setDirectory(directory); } - d->directory = directory.path(); + d->directory = directory; } QUrl QXdgDesktopPortalFileDialog::directory() const