diff options
author | Katarina Behrens <Katarina.Behrens@cib.de> | 2018-12-06 15:46:57 +0100 |
---|---|---|
committer | Katarina Behrens <Katarina.Behrens@cib.de> | 2018-12-07 10:19:11 +0100 |
commit | 1e3d6c801ffa051f42188c917b17f171aedaeddf (patch) | |
tree | b4c44a07f511a37a577c803570e972740ad9f2cd /vcl | |
parent | c354b7d20f428c87a133148579f37ec434505a48 (diff) |
tdf#120625: All vcl windows now share 1 instance of clipboard
so we can copy'n'pasta between apps (or 2 instances of the same app)
Copy'n'pasta into system clipboard is still buggy for non-Writer apps
Change-Id: I07f025172654dd3e6c0ef9cd5ad78d24224f039f
Reviewed-on: https://gerrit.libreoffice.org/64721
Tested-by: Jenkins
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
Diffstat (limited to 'vcl')
-rw-r--r-- | vcl/inc/qt5/Qt5Instance.hxx | 1 | ||||
-rw-r--r-- | vcl/qt5/Qt5Instance.cxx | 10 |
2 files changed, 8 insertions, 3 deletions
diff --git a/vcl/inc/qt5/Qt5Instance.hxx b/vcl/inc/qt5/Qt5Instance.hxx index 254c81445997..d848ff219792 100644 --- a/vcl/inc/qt5/Qt5Instance.hxx +++ b/vcl/inc/qt5/Qt5Instance.hxx @@ -40,6 +40,7 @@ class VCLPLUG_QT5_PUBLIC Qt5Instance : public QObject, osl::Condition m_aWaitingYieldCond; int m_postUserEventId; const bool m_bUseCairo; + css::uno::Reference<css::uno::XInterface> m_xClipboard; public: std::unique_ptr<QApplication> m_pQApplication; diff --git a/vcl/qt5/Qt5Instance.cxx b/vcl/qt5/Qt5Instance.cxx index 8215b67b71ea..1acf49d4505a 100644 --- a/vcl/qt5/Qt5Instance.cxx +++ b/vcl/qt5/Qt5Instance.cxx @@ -244,10 +244,14 @@ Qt5Instance::CreateClipboard(const css::uno::Sequence<css::uno::Any>& arguments) css::uno::Reference<css::uno::XInterface>(), -1); } - css::uno::Reference<css::uno::XInterface> xClipboard( - static_cast<cppu::OWeakObject*>(new VclQt5Clipboard())); + if (!m_xClipboard.is()) + { + css::uno::Reference<css::uno::XInterface> xClipboard( + static_cast<cppu::OWeakObject*>(new VclQt5Clipboard())); + m_xClipboard = xClipboard; + } - return xClipboard; + return m_xClipboard; } Reference<XInterface> Qt5Instance::CreateDragSource() |