summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/wasm/qwasmclipboard.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/wasm/qwasmclipboard.cpp')
-rw-r--r--src/plugins/platforms/wasm/qwasmclipboard.cpp16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/plugins/platforms/wasm/qwasmclipboard.cpp b/src/plugins/platforms/wasm/qwasmclipboard.cpp
index 786267277af..1aa3ffa5b36 100644
--- a/src/plugins/platforms/wasm/qwasmclipboard.cpp
+++ b/src/plugins/platforms/wasm/qwasmclipboard.cpp
@@ -285,20 +285,20 @@ void QWasmClipboard::writeToClipboard()
void QWasmClipboard::sendClipboardData(emscripten::val event)
{
- dom::DataTransfer transfer(event["clipboardData"]);
- QMimeData *mData;
- const auto pointerCallback = std::function([&](QMimeData &data) {
- mData = &data;
+ qDebug() << "sendClipboardData";
+
+ dom::DataTransfer *transfer = new dom::DataTransfer(event["clipboardData"]);
+ const auto mimeCallback = std::function([transfer](QMimeData *data) {
+
// Persist clipboard data so that the app can read it when handling the CTRL+V
- QWasmIntegration::get()->clipboard()->QPlatformClipboard::setMimeData(mData,
- QClipboard::Clipboard);
+ QWasmIntegration::get()->clipboard()->QPlatformClipboard::setMimeData(data, QClipboard::Clipboard);
QWindowSystemInterface::handleKeyEvent(0, QEvent::KeyPress, Qt::Key_V,
Qt::ControlModifier, "V");
QWindowSystemInterface::handleKeyEvent(0, QEvent::KeyRelease, Qt::Key_V,
Qt::ControlModifier, "V");
+ delete transfer;
});
- transfer.toMimeDataWithFile(pointerCallback); // mimedata
-
+ transfer->toMimeDataWithFile(mimeCallback);
}
QT_END_NAMESPACE