summaryrefslogtreecommitdiffstats
path: root/lib/quick/render_widget_host_view_qt_delegate_quick.cpp
diff options
context:
space:
mode:
authorJocelyn Turcotte <jocelyn.turcotte@digia.com>2013-11-13 11:08:06 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-11-15 13:49:20 +0100
commitb6039e76c2ecfd6b95359d6ac1bc7ecbd6c1d9c5 (patch)
tree6db862015e15b9ad30363327c1b43b6a8657a878 /lib/quick/render_widget_host_view_qt_delegate_quick.cpp
parent42a4854214a7440f482f0ba613725701688a7efe (diff)
Add some QQuickWebView graphics stack tests.
This does basic sanity testing of the graphics stack for both the hardware accelerated and software codepaths. This also adds a required signal to report the CompositingSurface later on if the QWindow wasn't available yet when Chromium asked for it. Change-Id: I402ec5ade9114c78bea7960c5f0de989f54110e3 Reviewed-by: Zeno Albisser <zeno.albisser@digia.com>
Diffstat (limited to 'lib/quick/render_widget_host_view_qt_delegate_quick.cpp')
-rw-r--r--lib/quick/render_widget_host_view_qt_delegate_quick.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/quick/render_widget_host_view_qt_delegate_quick.cpp b/lib/quick/render_widget_host_view_qt_delegate_quick.cpp
index dbd1ea911..8d0f5f0cc 100644
--- a/lib/quick/render_widget_host_view_qt_delegate_quick.cpp
+++ b/lib/quick/render_widget_host_view_qt_delegate_quick.cpp
@@ -50,7 +50,7 @@ RenderWidgetHostViewQtDelegateQuick::RenderWidgetHostViewQtDelegateQuick(RenderW
WId RenderWidgetHostViewQtDelegateQuick::nativeWindowIdForCompositor() const
{
- return QQuickItem::window()->winId();
+ return QQuickItem::window() ? QQuickItem::window()->winId() : 0;
}
void RenderWidgetHostViewQtDelegateQuick::update(const QRect&)
@@ -58,6 +58,13 @@ void RenderWidgetHostViewQtDelegateQuick::update(const QRect&)
QQuickItem::update();
}
+void RenderWidgetHostViewQtDelegateQuick::itemChange(ItemChange change, const ItemChangeData &value)
+{
+ QQuickItem::itemChange(change, value);
+ if (change == QQuickItem::ItemSceneChange && value.window)
+ m_client->compositingSurfaceUpdated();
+}
+
QSGNode *RenderWidgetHostViewQtDelegateQuick::updatePaintNode(QSGNode *oldNode, UpdatePaintNodeData *)
{
return m_client->updatePaintNode(oldNode, QQuickItem::window());