summaryrefslogtreecommitdiffstats
path: root/src/network/access/qnetworkreplywasmimpl_p.h
diff options
context:
space:
mode:
authorLorn Potter <lorn.potter@gmail.com>2019-09-07 07:06:30 +1000
committerMorten Johan Sørvig <morten.sorvig@qt.io>2020-03-26 22:36:36 +0000
commit643410136004825cb395e342f5c4ff90e85de4fe (patch)
tree9f0cab449b6b1059e7b132d9a0c3ca5ea42c5c13 /src/network/access/qnetworkreplywasmimpl_p.h
parent96de59d7c1068022dbb590d7abbdcf6eaf5d0566 (diff)
wasm: refactor network to use fetch API
This has better support for threaded use, and gets rid of bind use. This requires emscripten 1.38.37 and above Task-number: QTBUG-76891 Change-Id: Ic30a6820c2ce945c314751c06cfc356914a71217 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
Diffstat (limited to 'src/network/access/qnetworkreplywasmimpl_p.h')
-rw-r--r--src/network/access/qnetworkreplywasmimpl_p.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/network/access/qnetworkreplywasmimpl_p.h b/src/network/access/qnetworkreplywasmimpl_p.h
index e1e6bf4e24..5463ce8a98 100644
--- a/src/network/access/qnetworkreplywasmimpl_p.h
+++ b/src/network/access/qnetworkreplywasmimpl_p.h
@@ -61,8 +61,7 @@
#include <private/qabstractfileengine_p.h>
#include <emscripten.h>
-#include <emscripten/html5.h>
-#include <emscripten/val.h>
+#include <emscripten/fetch.h>
QT_BEGIN_NAMESPACE
@@ -135,10 +134,17 @@ public:
QIODevice *outgoingData;
QSharedPointer<QRingBuffer> outgoingDataBuffer;
- emscripten::val m_xhr = emscripten::val::null();
- void doAbort() const;
+ void doAbort() const;
+
+ static void downloadProgress(emscripten_fetch_t *fetch);
+ static void downloadFailed(emscripten_fetch_t *fetch);
+ static void downloadSucceeded(emscripten_fetch_t *fetch);
+ static void stateChange(emscripten_fetch_t *fetch);
static QNetworkReply::NetworkError statusCodeFromHttp(int httpStatusCode, const QUrl &url);
+
+ emscripten_fetch_t *m_fetch;
+
Q_DECLARE_PUBLIC(QNetworkReplyWasmImpl)
};