diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/templates/qquickstackview_p.cpp | 4 | ||||
-rw-r--r-- | src/templates/qquickstackview_p_p.h | 1 |
2 files changed, 4 insertions, 1 deletions
diff --git a/src/templates/qquickstackview_p.cpp b/src/templates/qquickstackview_p.cpp index 101f1f68..05558a95 100644 --- a/src/templates/qquickstackview_p.cpp +++ b/src/templates/qquickstackview_p.cpp @@ -179,7 +179,8 @@ void QQuickStackElement::initialize() Q_ASSERT(v4); QV4::Scope scope(v4); QV4::ScopedValue ipv(scope, properties.value()); - d->initializeObjectWithInitialProperties(ipv, item); + QV4::Scoped<QV4::QmlContext> qmlContext(scope, qmlCallingContext.value()); + d->initializeObjectWithInitialProperties(qmlContext, ipv, item); properties.clear(); } @@ -274,6 +275,7 @@ static bool initProperties(QQuickStackElement *element, const QV4::Value &props, if (!wrapper) { QV4::ExecutionEngine *v4 = args->v4engine(); element->properties.set(v4, props); + element->qmlCallingContext.set(v4, v4->qmlContext()); return true; } } diff --git a/src/templates/qquickstackview_p_p.h b/src/templates/qquickstackview_p_p.h index d14c6326..97cdb109 100644 --- a/src/templates/qquickstackview_p_p.h +++ b/src/templates/qquickstackview_p_p.h @@ -98,6 +98,7 @@ public: QPointer<QQuickItem> originalParent; QQuickStackView::Status status; QV4::PersistentValue properties; + QV4::PersistentValue qmlCallingContext; }; class QQuickStackViewPrivate : public QQuickControlPrivate, public QQuickItemViewTransitionChangeListener |