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>
diff --git a/vcl/inc/qt5/Qt5Instance.hxx b/vcl/inc/qt5/Qt5Instance.hxx
index 254c814..d848ff2 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 8215b67..1acf49d 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()