@@ -1416,6 +1416,43 @@ private Q_SLOTS:
14161416 QVERIFY(!lvwph->isAtYEnd());
14171417 }
14181418
1419+ void changeSizeVisibleItemNotOnViewport()
1420+ {
1421+ changeContentY(440);
1422+
1423+ QTRY_COMPARE(lvwph->m_visibleItems.count(), 5);
1424+ QCOMPARE(lvwph->m_firstVisibleIndex, 0);
1425+ verifyItem(0, -390., 150., true);
1426+ verifyItem(1, -240., 200., true);
1427+ verifyItem(2, -40, 350., false);
1428+ verifyItem(3, 310, 350., false);
1429+ verifyItem(4, 660, 350., true);
1430+ QCOMPARE(lvwph->m_minYExtent, 0.);
1431+ QCOMPARE(lvwph->m_clipItem->y(), 440.);
1432+ QCOMPARE(lvwph->m_clipItem->clip(), false);
1433+ QCOMPARE(lvwph->m_headerItem->y(), 0.);
1434+ QCOMPARE(lvwph->m_headerItem->height(), 50.);
1435+ QCOMPARE(lvwph->contentY(), 440.);
1436+ QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
1437+
1438+ model->setProperty(1, "size", 100);
1439+
1440+ QTRY_COMPARE(lvwph->m_visibleItems.count(), 5);
1441+ QCOMPARE(lvwph->m_firstVisibleIndex, 0);
1442+ verifyItem(0, -290., 150., true);
1443+ verifyItem(1, -140., 100., true);
1444+ verifyItem(2, -40, 350., false);
1445+ verifyItem(3, 310, 350., false);
1446+ verifyItem(4, 660, 350., true);
1447+ QCOMPARE(lvwph->m_minYExtent, -100.);
1448+ QCOMPARE(lvwph->m_clipItem->y(), 440.);
1449+ QCOMPARE(lvwph->m_clipItem->clip(), false);
1450+ QCOMPARE(lvwph->m_headerItem->y(), 0.);
1451+ QCOMPARE(lvwph->m_headerItem->height(), 50.);
1452+ QCOMPARE(lvwph->contentY(), 440.);
1453+ QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
1454+ }
1455+
14191456private:
14201457 QQuickView *view;
14211458 ListViewWithPageHeader *lvwph;