@@ -162,6 +162,7 @@ ListViewWithPageHeader::ListViewWithPageHeader()
162162 connect(this, SIGNAL(contentWidthChanged()), this, SLOT(onContentWidthChanged()));
163163 connect(this, SIGNAL(contentHeightChanged()), this, SLOT(onContentHeightChanged()));
164164 connect(this, SIGNAL(heightChanged()), this, SLOT(onHeightChanged()));
165+ connect(m_headerShowAnimation, SIGNAL(stopped()), this, SLOT(onShowHeaderAnimationFinished()));
165166}
166167
167168ListViewWithPageHeader::~ListViewWithPageHeader()
@@ -408,7 +409,6 @@ void ListViewWithPageHeader::viewportMoved(Qt::Orientations orient)
408409 diff += oldHeaderItemShownHeight - m_headerItemShownHeight;
409410 } else {
410411 diff = -diff;
411− m_contentHeightDirty = true;
412412 }
413413 }
414414 if (!m_visibleItems.isEmpty()) {
@@ -851,6 +851,12 @@ void ListViewWithPageHeader::onModelUpdated(const QQuickChangeSet &changeSet, bo
851851 m_contentHeightDirty = true;
852852}
853853
854+void ListViewWithPageHeader::onShowHeaderAnimationFinished()
855+{
856+ m_contentHeightDirty = true;
857+ polish();
858+}
859+
854860void ListViewWithPageHeader::itemGeometryChanged(QQuickItem * /*item*/, const QRectF &newGeometry, const QRectF &oldGeometry)
855861{
856862 const qreal heightDiff = newGeometry.height() - oldGeometry.height();