summaryrefslogtreecommitdiffstats
path: root/src/plugins/platformthemes/gtk2/qgtk2dialoghelpers.cpp
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2014-08-12 13:05:02 +0200
committerFrederik Gladhorn <frederik.gladhorn@digia.com>2014-08-12 13:05:02 +0200
commitca524e5b70ccfeb6386cf0c5df83ffb86a8771fe (patch)
tree245c471373516ccda2b0c91943a42cd74674f2da /src/plugins/platformthemes/gtk2/qgtk2dialoghelpers.cpp
parentb08cc0ec6f096d0e6764486c81264c24a406bee1 (diff)
parentc2badc7423b63824902d1f44a4b804de3335c20b (diff)
Merge remote-tracking branch 'origin/5.3' into 5.4
Manually included changes from 3a347a4e70e5a10ee92dd2578316c926a399e894 in src/opengl/qgl.cpp. Conflicts: src/opengl/qgl_qpa.cpp src/plugins/platforms/android/androidjnimain.cpp Change-Id: Ic26b58ee587d4884c9d0fba45c5a94b5a45ee929
Diffstat (limited to 'src/plugins/platformthemes/gtk2/qgtk2dialoghelpers.cpp')
-rw-r--r--src/plugins/platformthemes/gtk2/qgtk2dialoghelpers.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/plugins/platformthemes/gtk2/qgtk2dialoghelpers.cpp b/src/plugins/platformthemes/gtk2/qgtk2dialoghelpers.cpp
index f85fe0839f..506c29c9cf 100644
--- a/src/plugins/platformthemes/gtk2/qgtk2dialoghelpers.cpp
+++ b/src/plugins/platformthemes/gtk2/qgtk2dialoghelpers.cpp
@@ -308,7 +308,13 @@ QUrl QGtk2FileDialogHelper::directory() const
void QGtk2FileDialogHelper::selectFile(const QUrl &filename)
{
GtkDialog *gtkDialog = d->gtkDialog();
- gtk_file_chooser_select_filename(GTK_FILE_CHOOSER(gtkDialog), filename.toLocalFile().toUtf8());
+ if (options()->acceptMode() == QFileDialogOptions::AcceptSave) {
+ QFileInfo fi(filename.toLocalFile());
+ gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(gtkDialog), fi.path().toUtf8());
+ gtk_file_chooser_set_current_name(GTK_FILE_CHOOSER(gtkDialog), fi.fileName().toUtf8());
+ } else {
+ gtk_file_chooser_select_filename(GTK_FILE_CHOOSER(gtkDialog), filename.toLocalFile().toUtf8());
+ }
}
QList<QUrl> QGtk2FileDialogHelper::selectedFiles() const