diff --git a/src/platformtheme/kdeplatformfiledialoghelper.cpp b/src/platformtheme/kdeplatformfiledialoghelper.cpp --- a/src/platformtheme/kdeplatformfiledialoghelper.cpp +++ b/src/platformtheme/kdeplatformfiledialoghelper.cpp @@ -131,7 +131,6 @@ void KDEPlatformFileDialog::selectFile(const QUrl &filename) { QUrl dirUrl = filename.adjusted(QUrl::RemoveFilename); - m_fileWidget->setUrl(dirUrl); m_fileWidget->setSelectedUrl(filename); } @@ -223,27 +222,10 @@ void KDEPlatformFileDialog::setDirectory(const QUrl &directory) { - if (!directory.isLocalFile()) { - // Qt can not determine if the remote URL points to a file or a - // directory, that is why options()->initialDirectory() always returns - // the full URL. - KIO::StatJob *job = KIO::stat(directory); - KJobWidgets::setWindow(job, this); - if (job->exec()) { - KIO::UDSEntry entry = job->statResult(); - if (!entry.isDir()) { - // this is probably a file remove the file part - m_fileWidget->setUrl(directory.adjusted(QUrl::RemoveFilename)); - m_fileWidget->setSelectedUrl(directory); - } - else { - m_fileWidget->setUrl(directory); - } - } - } - else { - m_fileWidget->setUrl(directory); - } + //passing non-local files as the working directory is not supported. + //See QFileDialogPrivate::initialSelections + //Selectingg files should be done through the correct method. + m_fileWidget->setUrl(directory); } bool KDEPlatformFileDialogHelper::isSupportedUrl(const QUrl& url) const