diff options
author | Michael Weghorn <m.weghorn@posteo.de> | 2019-04-24 11:31:06 +0200 |
---|---|---|
committer | Katarina Behrens <Katarina.Behrens@cib.de> | 2019-04-26 10:25:10 +0200 |
commit | 8f4af22c7afc2f4b62ea974f07aea1b6abac45f0 (patch) | |
tree | 19ca15fe606d9db2fec4ac05a04676e3a6447897 /vcl/unx | |
parent | 97d1ba1d9a4f85e365596b756f4050c6770340bd (diff) |
gtk3_kde5: Make folder selection more intuitive
When 'QFileDialog::Directory' is set, the native
Plasma QFileDialog does not consider the clicked
directory to be selected, but rather the base directory
shown in the dialog, s.
https://bugs.kde.org/show_bug.cgi?id=406464 .
Therefore don't set the option when in a KDE Plasma desktop
environment (which the kde5 VCL plugin also doesn't do).
This works around the above issue in the Plasma desktop
integration.
Change-Id: Ib3d0978ab56b6e50ee45f7ad997ec051b35faf54
Reviewed-on: https://gerrit.libreoffice.org/71223
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
(cherry picked from commit 9fc0dbcd797f074ddb8ba379c876dd233cb5836e)
Reviewed-on: https://gerrit.libreoffice.org/71274
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
Diffstat (limited to 'vcl/unx')
-rw-r--r-- | vcl/unx/gtk3_kde5/kde5_filepicker.cxx | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/vcl/unx/gtk3_kde5/kde5_filepicker.cxx b/vcl/unx/gtk3_kde5/kde5_filepicker.cxx index 991486903c62..d31d6f0aa9ec 100644 --- a/vcl/unx/gtk3_kde5/kde5_filepicker.cxx +++ b/vcl/unx/gtk3_kde5/kde5_filepicker.cxx @@ -65,7 +65,16 @@ KDE5FilePicker::KDE5FilePicker(QObject* parent) void KDE5FilePicker::enableFolderMode() { _dialog->setOption(QFileDialog::ShowDirsOnly, true); - _dialog->setFileMode(QFileDialog::Directory); + // Workaround for https://bugs.kde.org/show_bug.cgi?id=406464 : + // Don't set file mode to QFileDialog::Directory when native KDE Plasma 5 + // file dialog is used, since clicking on directory "bar" inside directory "foo" + // and then confirming would return "foo" rather than "foo/bar"; + // on the other hand, non-native file dialog needs 'QFileDialog::Directory' + // and doesn't allow folder selection otherwise + if (Application::GetDesktopEnvironment() != "KDE5") + { + _dialog->setFileMode(QFileDialog::Directory); + } } KDE5FilePicker::~KDE5FilePicker() |