diff options
author | Katarina Behrens <Katarina.Behrens@cib.de> | 2018-09-18 12:23:34 +0200 |
---|---|---|
committer | Katarina Behrens <Katarina.Behrens@cib.de> | 2018-10-04 10:19:48 +0200 |
commit | 309bd0e920aae38c94f2c83dd5ff7d8b9feb9847 (patch) | |
tree | 72e4922a5e2ab65ed7c0aa776ca846456e8fa51a /vcl | |
parent | de40fe552e51e1d634c2401afef305ba4af91799 (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.cxx | 18 |
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; } |