diff options
author | Martin Jones <martin.jones@nokia.com> | 2012-03-16 18:45:39 +1000 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-03-19 10:49:21 +0100 |
commit | 6deb3ceffa209d710570ffeb361e95c988e6e7cd (patch) | |
tree | c0d7972e3b03771667dc7def07b421bb3763f2dd /src/quick/items/qquickitemview.cpp | |
parent | f079f789c593996b0023afd6318d60d18ac66578 (diff) |
Resetting a model can cause a crash in views with header/footer.
Geometry listeners were called for deleted header/footer.
Change-Id: I47854178232f8a4ab5e19a931901b49741fec388
Reviewed-by: Bea Lam <bea.lam@nokia.com>
Diffstat (limited to 'src/quick/items/qquickitemview.cpp')
-rw-r--r-- | src/quick/items/qquickitemview.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/quick/items/qquickitemview.cpp b/src/quick/items/qquickitemview.cpp index 5089d230d7..50a3216bf0 100644 --- a/src/quick/items/qquickitemview.cpp +++ b/src/quick/items/qquickitemview.cpp @@ -45,11 +45,12 @@ QT_BEGIN_NAMESPACE -FxViewItem::FxViewItem(QQuickItem *i, bool own) +FxViewItem::FxViewItem(QQuickItem *i, bool own, bool trackGeometry) : item(i) , transitionableItem(0) , ownItem(own) , releaseAfterTransition(false) + , trackGeom(trackGeometry) { } @@ -2195,10 +2196,10 @@ bool QQuickItemViewPrivate::releaseItem(FxViewItem *item) QQuickItem *QQuickItemViewPrivate::createHighlightItem() { - return createComponentItem(highlightComponent, true, true); + return createComponentItem(highlightComponent, true); } -QQuickItem *QQuickItemViewPrivate::createComponentItem(QQmlComponent *component, bool receiveItemGeometryChanges, bool createDefault) +QQuickItem *QQuickItemViewPrivate::createComponentItem(QQmlComponent *component, bool createDefault) { Q_Q(QQuickItemView); @@ -2222,10 +2223,6 @@ QQuickItem *QQuickItemViewPrivate::createComponentItem(QQmlComponent *component, if (item) { QQml_setParent_noEvent(item, q->contentItem()); item->setParentItem(q->contentItem()); - if (receiveItemGeometryChanges) { - QQuickItemPrivate *itemPrivate = QQuickItemPrivate::get(item); - itemPrivate->addItemChangeListener(this, QQuickItemPrivate::Geometry); - } } return item; } |