summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorKatarina Behrens <Katarina.Behrens@cib.de>2018-09-18 12:23:34 +0200
committerKatarina Behrens <Katarina.Behrens@cib.de>2018-10-04 10:19:48 +0200
commit309bd0e920aae38c94f2c83dd5ff7d8b9feb9847 (patch)
tree72e4922a5e2ab65ed7c0aa776ca846456e8fa51a /vcl
parentde40fe552e51e1d634c2401afef305ba4af91799 (diff)
Implement qt5 plain text paste from system clipboard
Change-Id: I44053d445098efc619ad9255d8f21962531a0654 Reviewed-on: https://gerrit.libreoffice.org/60674 Tested-by: Jenkins Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/qt5/Qt5Clipboard.cxx18
1 files changed, 15 insertions, 3 deletions
diff --git a/vcl/qt5/Qt5Clipboard.cxx b/vcl/qt5/Qt5Clipboard.cxx
index ac2daae520c8..68fabdf8583f 100644
--- a/vcl/qt5/Qt5Clipboard.cxx
+++ b/vcl/qt5/Qt5Clipboard.cxx
@@ -13,7 +13,11 @@
#include <cppuhelper/supportsservice.hxx>
#include <vcl/svapp.hxx>
+#include <QtWidgets/QApplication>
+#include <QtGui/QClipboard>
+
#include <Qt5Clipboard.hxx>
+#include <Qt5Tools.hxx>
std::vector<css::datatransfer::DataFlavor> Qt5Transferable::getTransferDataFlavorsAsVector()
{
@@ -46,11 +50,19 @@ Qt5Transferable::isDataFlavorSupported(const css::datatransfer::DataFlavor& /*rF
*/
css::uno::Any SAL_CALL
-Qt5Transferable::getTransferData(const css::datatransfer::DataFlavor& /*rFlavor*/)
+Qt5Transferable::getTransferData(const css::datatransfer::DataFlavor& rFlavor)
{
css::uno::Any aRet;
- Sequence<sal_Int8> aSeq(0, 4); //FIXME
- aRet <<= aSeq;
+
+ if (rFlavor.MimeType == "text/plain;charset=utf-16")
+ {
+ const QClipboard* clipboard = QApplication::clipboard();
+ QString clipboardContent = clipboard->text();
+ OUString sContent = toOUString(clipboardContent);
+
+ aRet <<= sContent.replaceAll("\r\n", "\n");
+ }
+
return aRet;
}