From 309bd0e920aae38c94f2c83dd5ff7d8b9feb9847 Mon Sep 17 00:00:00 2001 From: Katarina Behrens Date: Tue, 18 Sep 2018 12:23:34 +0200 Subject: 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 --- vcl/qt5/Qt5Clipboard.cxx | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) (limited to 'vcl/qt5') 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 #include +#include +#include + #include +#include std::vector 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 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; } -- cgit