summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/wasm/qwasmdom.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Replace qdebug.h includes in public headers with forward-declarationsAhmad Samir2025-01-151-0/+1
| | | | | | | | | | | | | | | | | | | qdebug.h includes many Qt and STL headers, so if you include a Qt header you get all those transitive includes, which may affect build time. - Where appropriate use the printf-like syntax of qDebug() and co., these don't need the QDebug streaming operators - qfloat16 is used in an inline member function, so include it explicitly [ChangeLog][Potentially Source Incompatible Changes] Various Qt public headers don't include QDebug any more; if you need QDebug's streaming you'll have to include it in your code. Task-number: QTBUG-132439 Pick-to: 6.9 Change-Id: I750587e17a3b38fa226cd3af8eaccc8da580f436 Reviewed-by: Thiago Macieira <[email protected]>
* wasm: fix drop of small filesMorten Sørvig2024-09-191-3/+2
| | | | | | | | | | | On drop, close the file after write before sending the drop event to make sure file content is flushed to to the file system. Pick-to: 6.7 6.8 6.8.0 Task-number: QTBUG-128855 Change-Id: Ide14bfebbdef07eee03ae1bd19d394da537ab123 Reviewed-by: Piotr Wierciński <[email protected]>
* wasm: fix uri-list handling urlsLorn Potter2024-05-291-2/+9
| | | | | | | | | | | | We were only handling the case where uri-list was a file. This fixes a regression. Also - add dragging url into the clipboard manual test Pick-to: 6.7 6.7.1 Change-Id: Ifbd087ffd157463b6b903199e3ff22c2de1c4942 Reviewed-by: Piotr Wierciński <[email protected]> Reviewed-by: Morten Johan Sørvig <[email protected]>
* CMake: Fix wasm build without PCH enabledAlexandru Croitor2024-02-201-0/+2
| | | | | | | | There were a few missing includes. Pick-to: 6.7 Change-Id: I352f4745a2691e96160408ab234a1ed8549f063c Reviewed-by: Lorn Potter <[email protected]>
* wasm: actually save dropped files to /qt/tmpMorten Sørvig2024-01-081-1/+1
| | | | | | | | | We were reporting the correct url, but saving to the root of the file system. Pick-to: 6.7 Change-Id: I3e1fd63efb77dd75ccf7a8f44a3211965fe11be8 Reviewed-by: Lorn Potter <[email protected]>
* wasm: implement async drag-and-dropMorten Sørvig2023-12-281-52/+88
| | | | | | | | | | | | | | | | | | | | | | | Make toMimeDataWithFile() handle writing files to the in-memory file system correctly: this is an async operation and we need to collect the files as the writes complete and then invoke the callback once all files have been saved. There's then no need for a global static QMimeData. Use toMimeDataWithFile() for both the paste and drop handling, however QPlatformClipboard::setMimeData() takes ownership of the passed in QMimeData and the callback API must be designed accordingly. An open question is when we should delete the files. Deleting them right away (after calling the app event handler) is predictable, however it looks like QPlatformClipboard::setMimeData() retains the current QMimeData until a new one is set, so maybe we should follow that. Pick-to: 6.7 Change-Id: Ia9b825eaef1134ff9a554e51ee7e41d1c2ee779a Reviewed-by: Lorn Potter <[email protected]>
* wasm: write file to storage on dropLorn Potter2023-12-221-9/+53
| | | | | | Change-Id: Ibd1b5d623da07ad611cce577929a23ba991b6738 Pick-to: 6.7 Reviewed-by: Morten Johan Sørvig <[email protected]>
* wasm: move DataTransfer to dom::Lorn Potter2023-12-211-0/+140
| | | | | | Change-Id: I069292154bafd1c08a0d0f2e8a62052f596a80f3 Done-with: [email protected] Reviewed-by: Lorn Potter <[email protected]>
* wasm: move image to web conversion to dom::Lorn Potter2023-12-211-0/+40
| | | | | | | | This allows other areas to utilize this Change-Id: I4bc7e8374289a19afe8b639b2b3b0dc0f8f65a3a Done-with: [email protected] Reviewed-by: Morten Johan Sørvig <[email protected]>
* Revert "Rename {from,to}DOMRect() → {from,to}DomRect()"Volker Hilsheimer2023-02-221-2/+2
| | | | | | | | | | | This reverts commit 81ce878f555d738c4a7ae3383942746dfb9bea54. Reason for revert: The native type is DOMRect, and in Qt, converters to/from native types stick to the native capitalisation (e.g. fromCGRect or fromNSString). Change-Id: Ic44ec79849fc6accdce1153471dd1ad9117e57ce Reviewed-by: Morten Johan Sørvig <[email protected]>
* Rename {from,to}DOMRect() → {from,to}DomRect()Marc Mutz2023-02-211-2/+2
| | | | | | | | | | | | Because it's QDomNode, not QDOMNode, either (abbreviations aren't supposed to be all-caps in Qt). Found in API review. Pick-to: 6.5 Change-Id: I37bcd8c38d396709d11c4eab035cdfd2145eb245 Reviewed-by: Volker Hilsheimer <[email protected]> Reviewed-by: Qt CI Bot <[email protected]>
* Use floating point coords for mouse/wheel events on wasmMikolaj Boc2023-02-141-5/+5
| | | | | | | | | | Fractional mouse movements may be reported on hi-dpi. Floating point event fields help us perform correct calculations in line with the web platform. Change-Id: Ic0c457db408c2bf28179ffcfdb032cde64ca8bbd Reviewed-by: Lorn Potter <[email protected]> Reviewed-by: Aleksandr Reviakin <[email protected]>
* Streamline reading of js DataTransfer objectMikolaj Boc2023-01-181-0/+5
| | | | | | | | | | | | | | | | | | qwasmclipboard.cpp and qwasmdrag.cpp had the same logic that read the js DataTransfer object implemented twice with small differences. Use a single implementation in both. This also introduces a clearer memory ownership model in the reader code, and fixes a potential race condition by introducing a cancellation flag. Removed the useless QWasmDrag type which was in essence a SimpleDrag and made the m_drag in QWasmIntegration a smart pointer. Fixes: QTBUG-109626 Pick-to: 6.5 Change-Id: I5b76dd3b70ab2e5a8364d9a136c970ee8d4fae9c Reviewed-by: Morten Johan Sørvig <[email protected]>
* Move the window through the title bar element itselfMikolaj Boc2022-12-211-0/+36
The compositor is redundant in the process of moving the window. Have the title bar react to move all by itself. Additionally, a clearer structure in the window was introduced. The non-client area has been extracted into a separate class, as was the icon store and free DOM functions used across files. Since it was now easy, made the window maximize/restore on double click on the title element. Fixes: QTBUG-107626 Pick-to: 6.5 Change-Id: Iba7f207e46806ae7162656965892ae5a48ac5ebe Reviewed-by: Morten Johan Sørvig <[email protected]>