diff options
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.cpp | 9 |
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()); |