aboutsummaryrefslogtreecommitdiffstats
path: root/src/quick
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2016-08-15 10:35:53 +0200
committerLars Knoll <lars.knoll@qt.io>2016-10-10 14:11:47 +0000
commit4ee2bc4e9c05d8daec8b04412a0b7c0264fbc1a4 (patch)
tree03b0dd07b6b087b5bdaded499961ee1492d408ae /src/quick
parent11e0e5574a529e337e43ab15fca357b109ea2834 (diff)
Turn the no-network support into a configurable feature
Change-Id: Ic70f60c124fe166b37fbe9b853735be3c5e0d46d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/quick')
-rw-r--r--src/quick/items/qquickanimatedimage.cpp10
-rw-r--r--src/quick/items/qquickanimatedimage_p_p.h6
-rw-r--r--src/quick/items/qquickborderimage.cpp12
-rw-r--r--src/quick/items/qquickborderimage_p.h2
-rw-r--r--src/quick/items/qquickborderimage_p_p.h6
-rw-r--r--src/quick/quick.pro8
-rw-r--r--src/quick/util/qquickfontloader.cpp16
-rw-r--r--src/quick/util/qquickpixmapcache.cpp26
8 files changed, 41 insertions, 45 deletions
diff --git a/src/quick/items/qquickanimatedimage.cpp b/src/quick/items/qquickanimatedimage.cpp
index 6f14bf15fe..85251330cb 100644
--- a/src/quick/items/qquickanimatedimage.cpp
+++ b/src/quick/items/qquickanimatedimage.cpp
@@ -47,7 +47,7 @@
#include <QtQml/qqmlfile.h>
#include <QtQml/qqmlengine.h>
#include <QtGui/qmovie.h>
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
#include <QtNetwork/qnetworkrequest.h>
#include <QtNetwork/qnetworkreply.h>
#endif
@@ -146,7 +146,7 @@ QQuickAnimatedImage::QQuickAnimatedImage(QQuickItem *parent)
QQuickAnimatedImage::~QQuickAnimatedImage()
{
Q_D(QQuickAnimatedImage);
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
if (d->reply)
d->reply->deleteLater();
#endif
@@ -268,7 +268,7 @@ void QQuickAnimatedImage::setSource(const QUrl &url)
if (url == d->url)
return;
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
if (d->reply) {
d->reply->deleteLater();
d->reply = 0;
@@ -325,7 +325,7 @@ void QQuickAnimatedImage::load()
d->_movie = new QMovie(lf);
movieRequestFinished();
} else {
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
if (d->status != Loading) {
d->status = Loading;
emit statusChanged(d->status);
@@ -354,7 +354,7 @@ void QQuickAnimatedImage::movieRequestFinished()
Q_D(QQuickAnimatedImage);
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
if (d->reply) {
d->redirectCount++;
if (d->redirectCount < ANIMATEDIMAGE_MAXIMUM_REDIRECT_RECURSION) {
diff --git a/src/quick/items/qquickanimatedimage_p_p.h b/src/quick/items/qquickanimatedimage_p_p.h
index ed735d1c9c..6d0600b331 100644
--- a/src/quick/items/qquickanimatedimage_p_p.h
+++ b/src/quick/items/qquickanimatedimage_p_p.h
@@ -58,7 +58,7 @@
QT_BEGIN_NAMESPACE
class QMovie;
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
class QNetworkReply;
#endif
@@ -69,7 +69,7 @@ class QQuickAnimatedImagePrivate : public QQuickImagePrivate
public:
QQuickAnimatedImagePrivate()
: playing(true), paused(false), preset_currentframe(0), _movie(0), oldPlaying(false)
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
, reply(0), redirectCount(0)
#endif
, currentSourceSize(0, 0)
@@ -83,7 +83,7 @@ public:
int preset_currentframe;
QMovie *_movie;
bool oldPlaying;
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
QNetworkReply *reply;
int redirectCount;
#endif
diff --git a/src/quick/items/qquickborderimage.cpp b/src/quick/items/qquickborderimage.cpp
index ca5ad8dbbd..2fb151b36f 100644
--- a/src/quick/items/qquickborderimage.cpp
+++ b/src/quick/items/qquickborderimage.cpp
@@ -43,7 +43,7 @@
#include <QtQml/qqmlinfo.h>
#include <QtQml/qqmlfile.h>
#include <QtQml/qqmlengine.h>
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
#include <QtNetwork/qnetworkreply.h>
#endif
#include <QtCore/qfile.h>
@@ -171,7 +171,7 @@ QQuickBorderImage::QQuickBorderImage(QQuickItem *parent)
QQuickBorderImage::~QQuickBorderImage()
{
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
Q_D(QQuickBorderImage);
if (d->sciReply)
d->sciReply->deleteLater();
@@ -274,7 +274,7 @@ void QQuickBorderImage::setSource(const QUrl &url)
if (url == d->url)
return;
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
if (d->sciReply) {
d->sciReply->deleteLater();
d->sciReply = 0;
@@ -317,7 +317,7 @@ void QQuickBorderImage::load()
setGridScaledImage(QQuickGridScaledImage(&file));
return;
} else {
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
if (d->progress != 0.0) {
d->progress = 0.0;
emit progressChanged(d->progress);
@@ -537,7 +537,7 @@ void QQuickBorderImage::requestFinished()
pixmapChange();
}
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
#define BORDERIMAGE_MAX_REDIRECT 16
void QQuickBorderImage::sciRequestFinished()
@@ -567,7 +567,7 @@ void QQuickBorderImage::sciRequestFinished()
setGridScaledImage(sci);
}
}
-#endif // QT_NO_NETWORK
+#endif // qml_network
void QQuickBorderImage::doUpdate()
{
diff --git a/src/quick/items/qquickborderimage_p.h b/src/quick/items/qquickborderimage_p.h
index f2764660f6..844f71e2c9 100644
--- a/src/quick/items/qquickborderimage_p.h
+++ b/src/quick/items/qquickborderimage_p.h
@@ -101,7 +101,7 @@ private:
private Q_SLOTS:
void doUpdate();
void requestFinished() Q_DECL_OVERRIDE;
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
void sciRequestFinished();
#endif
diff --git a/src/quick/items/qquickborderimage_p_p.h b/src/quick/items/qquickborderimage_p_p.h
index 56fbbab049..0f4e7acc05 100644
--- a/src/quick/items/qquickborderimage_p_p.h
+++ b/src/quick/items/qquickborderimage_p_p.h
@@ -58,7 +58,7 @@
QT_BEGIN_NAMESPACE
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
class QNetworkReply;
#endif
class QQuickBorderImagePrivate : public QQuickImageBasePrivate
@@ -69,7 +69,7 @@ public:
QQuickBorderImagePrivate()
: border(0), horizontalTileMode(QQuickBorderImage::Stretch),
verticalTileMode(QQuickBorderImage::Stretch), pixmapChanged(false)
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
, sciReply(0), redirectCount(0)
#endif
{
@@ -108,7 +108,7 @@ public:
QQuickBorderImage::TileMode verticalTileMode;
bool pixmapChanged : 1;
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
QNetworkReply *sciReply;
int redirectCount;
#endif
diff --git a/src/quick/quick.pro b/src/quick/quick.pro
index 4909f7fce8..094791574f 100644
--- a/src/quick/quick.pro
+++ b/src/quick/quick.pro
@@ -1,12 +1,8 @@
TARGET = QtQuick
QT = core-private gui-private qml-private
-!no_network {
- QT_PRIVATE = network
-}
-no_network {
- DEFINES += QT_NO_NETWORK
-}
+qtConfig(qml-network): \
+ QT_PRIVATE += network
DEFINES += QT_NO_URL_CAST_FROM_STRING QT_NO_INTEGER_EVENT_COORDINATES
win32-msvc*:DEFINES *= _CRT_SECURE_NO_WARNINGS
diff --git a/src/quick/util/qquickfontloader.cpp b/src/quick/util/qquickfontloader.cpp
index 6e23d99f7e..d13291c30a 100644
--- a/src/quick/util/qquickfontloader.cpp
+++ b/src/quick/util/qquickfontloader.cpp
@@ -52,7 +52,7 @@
#include <qqmlinfo.h>
#include <qqmlfile.h>
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
#include <QNetworkRequest>
#include <QNetworkReply>
#endif
@@ -70,7 +70,7 @@ Q_OBJECT
public:
explicit QQuickFontObject(int _id = -1);
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
void download(const QUrl &url, QNetworkAccessManager *manager);
Q_SIGNALS:
@@ -82,7 +82,7 @@ private:
private Q_SLOTS:
void replyFinished();
-#endif // QT_NO_NETWORK
+#endif // qml_network
public:
int id;
@@ -92,7 +92,7 @@ public:
QQuickFontObject::QQuickFontObject(int _id)
: QObject(0)
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
,redirectCount(0), reply(0)
#endif
,id(_id)
@@ -100,7 +100,7 @@ QQuickFontObject::QQuickFontObject(int _id)
}
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
void QQuickFontObject::download(const QUrl &url, QNetworkAccessManager *manager)
{
QNetworkRequest req(url);
@@ -141,7 +141,7 @@ void QQuickFontObject::replyFinished()
reply = 0;
}
}
-#endif // QT_NO_NETWORK
+#endif // qml_network
class QQuickFontLoaderPrivate : public QObjectPrivate
{
@@ -268,7 +268,7 @@ void QQuickFontLoader::setSource(const QUrl &url)
}
} else {
if (!fontLoaderFonts()->map.contains(d->url)) {
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
QQuickFontObject *fo = new QQuickFontObject;
fontLoaderFonts()->map[d->url] = fo;
fo->download(d->url, qmlEngine(this)->networkAccessManager());
@@ -282,7 +282,7 @@ void QQuickFontLoader::setSource(const QUrl &url)
} else {
QQuickFontObject *fo = fontLoaderFonts()->map.value(d->url);
if (fo->id == -1) {
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
d->status = Loading;
emit statusChanged();
QObject::connect(fo, SIGNAL(fontDownloaded(QString,QQuickFontLoader::Status)),
diff --git a/src/quick/util/qquickpixmapcache.cpp b/src/quick/util/qquickpixmapcache.cpp
index 9722bf544b..46f6cccc62 100644
--- a/src/quick/util/qquickpixmapcache.cpp
+++ b/src/quick/util/qquickpixmapcache.cpp
@@ -67,7 +67,7 @@
#include <QQmlFile>
#include <QMetaMethod>
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
#include <qqmlnetworkaccessmanagerfactory.h>
#include <QNetworkReply>
#include <QSslError>
@@ -206,7 +206,7 @@ private:
friend class QQuickPixmapReaderThreadObject;
void processJobs();
void processJob(QQuickPixmapReply *, const QUrl &, const QString &, AutoTransform, QQuickImageProvider::ImageType, QQuickImageProvider *);
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
void networkRequestDone(QNetworkReply *);
#endif
void asyncResponseFinished(QQuickImageResponse *);
@@ -220,7 +220,7 @@ private:
QQuickPixmapReaderThreadObject *threadObject;
QWaitCondition waitCondition;
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
QNetworkAccessManager *networkAccessManager();
QNetworkAccessManager *accessManager;
QHash<QNetworkReply*,QQuickPixmapReply*> networkJobs;
@@ -349,7 +349,7 @@ QQuickPixmapReply::Event::~Event()
delete textureFactory;
}
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
QNetworkAccessManager *QQuickPixmapReader::networkAccessManager()
{
if (!accessManager) {
@@ -430,7 +430,7 @@ static bool readImage(const QUrl& url, QIODevice *dev, QImage *image, QString *e
QQuickPixmapReader::QQuickPixmapReader(QQmlEngine *eng)
: QThread(eng), engine(eng), threadObject(0)
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
, accessManager(0)
#endif
{
@@ -454,7 +454,7 @@ QQuickPixmapReader::~QQuickPixmapReader()
delete reply;
}
jobs.clear();
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
const auto cancelJob = [this](QQuickPixmapReply *reply) {
if (reply->loading) {
@@ -476,7 +476,7 @@ QQuickPixmapReader::~QQuickPixmapReader()
wait();
}
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
void QQuickPixmapReader::networkRequestDone(QNetworkReply *reply)
{
QQuickPixmapReply *job = networkJobs.take(reply);
@@ -526,7 +526,7 @@ void QQuickPixmapReader::networkRequestDone(QNetworkReply *reply)
// kick off event loop again incase we have dropped below max request count
threadObject->processJobs();
}
-#endif // QT_NO_NETWORK
+#endif // qml_network
void QQuickPixmapReader::asyncResponseFinished(QQuickImageResponse *response)
{
@@ -577,7 +577,7 @@ bool QQuickPixmapReaderThreadObject::event(QEvent *e)
void QQuickPixmapReaderThreadObject::networkRequestDone()
{
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
QNetworkReply *reply = static_cast<QNetworkReply *>(sender());
reader->networkRequestDone(reply);
#endif
@@ -599,7 +599,7 @@ void QQuickPixmapReader::processJobs()
// Clean cancelled jobs
if (!cancelled.isEmpty()) {
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
for (int i = 0; i < cancelled.count(); ++i) {
QQuickPixmapReply *job = cancelled.at(i);
QNetworkReply *reply = networkJobs.key(job, 0);
@@ -644,7 +644,7 @@ void QQuickPixmapReader::processJobs()
} else {
localFile = QQmlFile::urlToLocalFileOrQrc(url);
usableJob = !localFile.isEmpty()
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
|| networkJobs.count() < IMAGEREQUEST_MAX_NETWORK_REQUEST_COUNT
#endif
;
@@ -772,7 +772,7 @@ void QQuickPixmapReader::processJob(QQuickPixmapReply *runningJob, const QUrl &u
runningJob->postReply(errorCode, errorStr, readSize, QQuickTextureFactory::textureFactoryForImage(image));
mutex.unlock();
} else {
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
// Network resource
QNetworkRequest req(url);
req.setAttribute(QNetworkRequest::HttpPipeliningAllowedAttribute, true);
@@ -841,7 +841,7 @@ void QQuickPixmapReader::cancel(QQuickPixmapReply *reply)
void QQuickPixmapReader::run()
{
if (replyDownloadProgress == -1) {
-#ifndef QT_NO_NETWORK
+#if QT_CONFIG(qml_network)
replyDownloadProgress = QMetaMethod::fromSignal(&QNetworkReply::downloadProgress).methodIndex();
replyFinished = QMetaMethod::fromSignal(&QNetworkReply::finished).methodIndex();
const QMetaObject *ir = &QQuickPixmapReaderThreadObject::staticMetaObject;