[Libreoffice-commits] core.git: vcl/inc vcl/unx

Jan-Marek Glogowski (via logerrit) logerrit at kemper.freedesktop.org
Sun Jul 14 15:40:56 UTC 2019


 vcl/inc/qt5/Qt5Instance.hxx      |    6 +++---
 vcl/inc/salinst.hxx              |    3 +--
 vcl/unx/kde5/KDE5SalInstance.cxx |    7 +++++++
 vcl/unx/kde5/KDE5SalInstance.hxx |    2 +-
 4 files changed, 12 insertions(+), 6 deletions(-)

New commits:
commit 6d0dd8847aae01767fa53e0c6db5a5e198dd7b49
Author:     Jan-Marek Glogowski <glogow at fbihome.de>
AuthorDate: Sun Jul 14 11:29:09 2019 +0200
Commit:     Jan-Marek Glogowski <glogow at fbihome.de>
CommitDate: Sun Jul 14 17:40:01 2019 +0200

    Qt5 also has native file selection
    
    Change-Id: Ia47ab46f27e07b396aa324dd01af9d152b65de98
    Reviewed-on: https://gerrit.libreoffice.org/75573
    Tested-by: Jenkins
    Reviewed-by: Jan-Marek Glogowski <glogow at fbihome.de>

diff --git a/vcl/inc/qt5/Qt5Instance.hxx b/vcl/inc/qt5/Qt5Instance.hxx
index 881ac17803d4..e6a80728b596 100644
--- a/vcl/inc/qt5/Qt5Instance.hxx
+++ b/vcl/inc/qt5/Qt5Instance.hxx
@@ -142,10 +142,10 @@ public:
     virtual void TriggerUserEventProcessing() override;
     virtual void ProcessEvent(SalUserEvent aEvent) override;
 
-    virtual css::uno::Reference<css::ui::dialogs::XFilePicker2>
+    bool hasNativeFileSelection() const override { return true; }
+    css::uno::Reference<css::ui::dialogs::XFilePicker2>
     createFilePicker(const css::uno::Reference<css::uno::XComponentContext>&) override;
-
-    virtual css::uno::Reference<css::ui::dialogs::XFolderPicker2>
+    css::uno::Reference<css::ui::dialogs::XFolderPicker2>
     createFolderPicker(const css::uno::Reference<css::uno::XComponentContext>&) override;
 
     virtual css::uno::Reference<css::uno::XInterface>
diff --git a/vcl/inc/salinst.hxx b/vcl/inc/salinst.hxx
index 51b0347f3247..a9717167c5b7 100644
--- a/vcl/inc/salinst.hxx
+++ b/vcl/inc/salinst.hxx
@@ -189,10 +189,9 @@ public:
     virtual void            AddToRecentDocumentList(const OUString& rFileUrl, const OUString& rMimeType, const OUString& rDocumentService) = 0;
 
     virtual bool            hasNativeFileSelection() const { return false; }
-
+    // if you override this, make sure to override hasNativeFileSelection too.
     virtual css::uno::Reference< css::ui::dialogs::XFilePicker2 > createFilePicker( const css::uno::Reference< css::uno::XComponentContext >& )
         { return css::uno::Reference< css::ui::dialogs::XFilePicker2 >(); }
-
     virtual css::uno::Reference< css::ui::dialogs::XFolderPicker2 > createFolderPicker( const css::uno::Reference< css::uno::XComponentContext >& )
         { return css::uno::Reference< css::ui::dialogs::XFolderPicker2 >(); }
 
diff --git a/vcl/unx/kde5/KDE5SalInstance.cxx b/vcl/unx/kde5/KDE5SalInstance.cxx
index 0143212249ed..f253731a85c9 100644
--- a/vcl/unx/kde5/KDE5SalInstance.cxx
+++ b/vcl/unx/kde5/KDE5SalInstance.cxx
@@ -50,6 +50,13 @@ SalFrame* KDE5SalInstance::CreateFrame(SalFrame* pParent, SalFrameStyleFlags nSt
     return pRet;
 }
 
+bool KDE5SalInstance::hasNativeFileSelection() const
+{
+    if (Application::GetDesktopEnvironment() == "PLASMA5")
+        return true;
+    return Qt5Instance::hasNativeFileSelection();
+}
+
 Qt5FilePicker*
 KDE5SalInstance::createPicker(css::uno::Reference<css::uno::XComponentContext> const& context,
                               QFileDialog::FileMode eMode)
diff --git a/vcl/unx/kde5/KDE5SalInstance.hxx b/vcl/unx/kde5/KDE5SalInstance.hxx
index a7c633f150e1..4215ec483308 100644
--- a/vcl/unx/kde5/KDE5SalInstance.hxx
+++ b/vcl/unx/kde5/KDE5SalInstance.hxx
@@ -23,11 +23,11 @@
 
 class KDE5SalInstance final : public Qt5Instance
 {
+    bool hasNativeFileSelection() const override;
     Qt5FilePicker* createPicker(css::uno::Reference<css::uno::XComponentContext> const& context,
                                 QFileDialog::FileMode) override;
 
     SalFrame* CreateFrame(SalFrame* pParent, SalFrameStyleFlags nStyle) override;
-    bool hasNativeFileSelection() const override { return true; }
 
 public:
     explicit KDE5SalInstance(std::unique_ptr<QApplication>& pQApp);


More information about the Libreoffice-commits mailing list