aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/templates/qquickstackview_p.cpp4
-rw-r--r--src/templates/qquickstackview_p_p.h1
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