summaryrefslogtreecommitdiffstats
path: root/src/webengine/api/qquickwebengineview.cpp
diff options
context:
space:
mode:
authorMichal Klocek <michal.klocek@qt.io>2018-08-01 15:04:35 +0200
committerMichal Klocek <michal.klocek@qt.io>2018-08-09 09:39:56 +0000
commitdb62139e1daea171e08d95592c63f663789d6391 (patch)
treeddce513a2e74bf656466a6f83b57a8efbd3cbe18 /src/webengine/api/qquickwebengineview.cpp
parente50fb187dc4467ac28a724e6ea9f2d51a1f131ba (diff)
Make WebChannel an optional feature
Add webengine-webchannel feature. Change-Id: I600572180f8169aafe79cf0408527cc087d9a007 Reviewed-by: Jüri Valdmann <juri.valdmann@qt.io>
Diffstat (limited to 'src/webengine/api/qquickwebengineview.cpp')
-rw-r--r--src/webengine/api/qquickwebengineview.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/webengine/api/qquickwebengineview.cpp b/src/webengine/api/qquickwebengineview.cpp
index f24ba1d7d..02666d363 100644
--- a/src/webengine/api/qquickwebengineview.cpp
+++ b/src/webengine/api/qquickwebengineview.cpp
@@ -85,7 +85,9 @@
#include <QQmlContext>
#include <QQmlEngine>
#include <QQmlProperty>
+#if QT_CONFIG(webengine_webchannel)
#include <QQmlWebChannel>
+#endif
#include <QQuickWebEngineProfile>
#include <QScreen>
#include <QUrl>
@@ -777,8 +779,10 @@ void QQuickWebEngineViewPrivate::initializationFinished()
if (m_backgroundColor != Qt::white)
adapter->backgroundColorChanged();
+#if QT_CONFIG(webengine_webchannel)
if (m_webChannel)
adapter->setWebChannel(m_webChannel, m_webChannelWorld);
+#endif
if (!qFuzzyCompare(adapter->currentZoomFactor(), m_defaultZoomFactor))
q->setZoomFactor(m_defaultZoomFactor);
@@ -1273,6 +1277,7 @@ QQuickWebEngineHistory *QQuickWebEngineView::navigationHistory() const
QQmlWebChannel *QQuickWebEngineView::webChannel()
{
+#if QT_CONFIG(webengine_webchannel)
Q_D(QQuickWebEngineView);
if (!d->m_webChannel) {
d->m_webChannel = new QQmlWebChannel(this);
@@ -1280,16 +1285,24 @@ QQmlWebChannel *QQuickWebEngineView::webChannel()
}
return d->m_webChannel;
+#endif
+ qWarning("WebEngine compiled without webchannel support");
+ return nullptr;
}
void QQuickWebEngineView::setWebChannel(QQmlWebChannel *webChannel)
{
+#if QT_CONFIG(webengine_webchannel)
Q_D(QQuickWebEngineView);
if (d->m_webChannel == webChannel)
return;
d->m_webChannel = webChannel;
d->adapter->setWebChannel(webChannel, d->m_webChannelWorld);
Q_EMIT webChannelChanged();
+#else
+ Q_UNUSED(webChannel)
+ qWarning("WebEngine compiled without webchannel support");
+#endif
}
uint QQuickWebEngineView::webChannelWorld() const
@@ -1300,12 +1313,17 @@ uint QQuickWebEngineView::webChannelWorld() const
void QQuickWebEngineView::setWebChannelWorld(uint webChannelWorld)
{
+#if QT_CONFIG(webengine_webchannel)
Q_D(QQuickWebEngineView);
if (d->m_webChannelWorld == webChannelWorld)
return;
d->m_webChannelWorld = webChannelWorld;
d->adapter->setWebChannel(d->m_webChannel, d->m_webChannelWorld);
Q_EMIT webChannelWorldChanged(webChannelWorld);
+#else
+ Q_UNUSED(webChannelWorld)
+ qWarning("WebEngine compiled without webchannel support");
+#endif
}
QQuickWebEngineView *QQuickWebEngineView::inspectedView() const