@@ -182,7 +182,7 @@ private Q_SLOTS:
182182 QCOMPARE(lvwph->m_clipItem->y(), -5.);
183183 QCOMPARE(lvwph->m_clipItem->clip(), false);
184184 QCOMPARE(lvwph->m_headerItem->y(), -5.);
185− QCOMPARE(lvwph->m_headerItem->height(), 50.);
185+ QCOMPARE(lvwph->m_headerItem->height(), 55.);
186186 QCOMPARE(lvwph->contentY(), -5.);
187187 QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
188188 QVERIFY(QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
@@ -614,227 +614,6 @@ private Q_SLOTS:
614614 QVERIFY(QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
615615 }
616616
617− void testGrowHeaderAtTop()
618− {
619− lvwph->m_headerItem->setHeight(100);
620−
621− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
622− QCOMPARE(lvwph->m_firstVisibleIndex, 0);
623− verifyItem(0, 100., 190., false, "Agressive", false);
624− verifyItem(1, 290., 240., false, "Regular", false);
625− verifyItem(2, 530., 390., false, "Mild", false);
626− QCOMPARE(lvwph->m_minYExtent, 0.);
627− QCOMPARE(lvwph->m_clipItem->y(), 0.);
628− QCOMPARE(lvwph->m_clipItem->clip(), false);
629− QCOMPARE(lvwph->m_headerItem->y(), 0.);
630− QCOMPARE(lvwph->m_headerItem->height(), 100.);
631− QCOMPARE(lvwph->contentY(), 0.);
632− QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
633− QVERIFY(QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
634− }
635−
636− void testGrowHeaderAtBottom()
637− {
638− scrollToBottom();
639− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
640− QCOMPARE(lvwph->m_firstVisibleIndex, 3);
641− verifyItem(0, -588., 390., true, "Bold", true);
642− verifyItem(1, -198, 350., false, QString(), true);
643− verifyItem(2, 152, 390., false, "Lazy", false);
644− QCOMPARE(lvwph->m_minYExtent, 310.);
645− QCOMPARE(lvwph->m_clipItem->y(), 1458.);
646− QCOMPARE(lvwph->m_clipItem->clip(), false);
647− QCOMPARE(lvwph->m_headerItem->y(), 0.);
648− QCOMPARE(lvwph->m_headerItem->height(), 50.);
649− QCOMPARE(lvwph->contentY(), 1458.);
650− QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
651− QVERIFY(!QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
652− QCOMPARE(section(lvwph->m_topSectionItem), QString("Bold"));
653− QCOMPARE(lvwph->m_topSectionItem->y(), 0.);
654−
655− lvwph->m_headerItem->setHeight(100);
656−
657− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
658− QCOMPARE(lvwph->m_firstVisibleIndex, 3);
659− verifyItem(0, -588., 390., true, "Bold", true);
660− verifyItem(1, -198, 350., false, QString(), true);
661− verifyItem(2, 152, 390., false, "Lazy", false);
662− QCOMPARE(lvwph->m_minYExtent, 360.);
663− QCOMPARE(lvwph->m_clipItem->y(), 1458.);
664− QCOMPARE(lvwph->m_clipItem->clip(), false);
665− QCOMPARE(lvwph->m_headerItem->y(), 0.);
666− QCOMPARE(lvwph->m_headerItem->height(), 100.);
667− QCOMPARE(lvwph->contentY(), 1458.);
668− QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
669− QVERIFY(!QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
670− QCOMPARE(section(lvwph->m_topSectionItem), QString("Bold"));
671− QCOMPARE(lvwph->m_topSectionItem->y(), 0.);
672−
673− changeContentY(-30);
674−
675− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
676− QCOMPARE(lvwph->m_firstVisibleIndex, 3);
677− verifyItem(0, -588., 390., true, "Bold", true);
678− verifyItem(1, -198, 350., false, QString(), true);
679− verifyItem(2, 152, 390., false, "Lazy", false);
680− QCOMPARE(lvwph->m_minYExtent, 360.);
681− QCOMPARE(lvwph->m_clipItem->y(), 1458.);
682− QCOMPARE(lvwph->m_clipItem->clip(), true);
683− QCOMPARE(lvwph->m_headerItem->y(), 1358.);
684− QCOMPARE(lvwph->m_headerItem->height(), 100.);
685− QCOMPARE(lvwph->contentY(), 1428.);
686− QCOMPARE(lvwph->m_headerItemShownHeight, 30.);
687− QVERIFY(!QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
688− QCOMPARE(section(lvwph->m_topSectionItem), QString("Bold"));
689− QCOMPARE(lvwph->m_topSectionItem->y(), 0.);
690−
691− scrollToTop();
692−
693− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
694− QCOMPARE(lvwph->m_firstVisibleIndex, 0);
695− verifyItem(0, 100., 190., false, "Agressive", false);
696− verifyItem(1, 290., 240., false, "Regular", false);
697− verifyItem(2, 530., 390., false, "Mild", false);
698− QCOMPARE(lvwph->m_minYExtent, 50.);
699− QCOMPARE(lvwph->m_clipItem->y(), -50.);
700− QCOMPARE(lvwph->m_clipItem->clip(), false);
701− QCOMPARE(lvwph->m_headerItem->y(), -50.);
702− QCOMPARE(lvwph->m_headerItem->height(), 100.);
703− QCOMPARE(lvwph->contentY(), -50.);
704− QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
705− QVERIFY(QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
706− }
707−
708− void testGrowHeaderPartlyShown()
709− {
710− scrollToBottom();
711− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
712− QCOMPARE(lvwph->m_firstVisibleIndex, 3);
713− verifyItem(0, -588., 390., true, "Bold", true);
714− verifyItem(1, -198, 350., false, QString(), true);
715− verifyItem(2, 152, 390., false, "Lazy", false);
716− QCOMPARE(lvwph->m_minYExtent, 310.);
717− QCOMPARE(lvwph->m_clipItem->y(), 1458.);
718− QCOMPARE(lvwph->m_clipItem->clip(), false);
719− QCOMPARE(lvwph->m_headerItem->y(), 0.);
720− QCOMPARE(lvwph->m_headerItem->height(), 50.);
721− QCOMPARE(lvwph->contentY(), 1458.);
722− QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
723− QVERIFY(!QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
724− QCOMPARE(section(lvwph->m_topSectionItem), QString("Bold"));
725− QCOMPARE(lvwph->m_topSectionItem->y(), 0.);
726−
727− changeContentY(-30);
728−
729− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
730− QCOMPARE(lvwph->m_firstVisibleIndex, 3);
731− verifyItem(0, -588., 390., true, "Bold", true);
732− verifyItem(1, -198, 350., false, QString(), true);
733− verifyItem(2, 152, 390., false, "Lazy", false);
734− QCOMPARE(lvwph->m_minYExtent, 310.);
735− QCOMPARE(lvwph->m_clipItem->y(), 1458.);
736− QCOMPARE(lvwph->m_clipItem->clip(), true);
737− QCOMPARE(lvwph->m_headerItem->y(), 1408.);
738− QCOMPARE(lvwph->m_headerItem->height(), 50.);
739− QCOMPARE(lvwph->contentY(), 1428.);
740− QCOMPARE(lvwph->m_headerItemShownHeight, 30.);
741− QVERIFY(!QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
742− QCOMPARE(section(lvwph->m_topSectionItem), QString("Bold"));
743− QCOMPARE(lvwph->m_topSectionItem->y(), 0.);
744−
745− lvwph->m_headerItem->setHeight(100);
746−
747− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
748− QCOMPARE(lvwph->m_firstVisibleIndex, 3);
749− verifyItem(0, -588., 390., true, "Bold", true);
750− verifyItem(1, -198, 350., false, QString(), true);
751− verifyItem(2, 152, 390., false, "Lazy", false);
752− QCOMPARE(lvwph->m_minYExtent, 310.);
753− QCOMPARE(lvwph->m_clipItem->y(), 1508.);
754− QCOMPARE(lvwph->m_clipItem->clip(), true);
755− QCOMPARE(lvwph->m_headerItem->y(), 1408.);
756− QCOMPARE(lvwph->m_headerItem->height(), 100.);
757− QCOMPARE(lvwph->contentY(), 1428.);
758− QCOMPARE(lvwph->m_headerItemShownHeight, 80.);
759− QVERIFY(!QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
760− QCOMPARE(section(lvwph->m_topSectionItem), QString("Bold"));
761− QCOMPARE(lvwph->m_topSectionItem->y(), 0.);
762−
763− scrollToTop();
764−
765− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
766− QCOMPARE(lvwph->m_firstVisibleIndex, 0);
767− verifyItem(0, 100., 190., false, "Agressive", false);
768− verifyItem(1, 290., 240., false, "Regular", false);
769− verifyItem(2, 530., 390., false, "Mild", false);
770− QCOMPARE(lvwph->m_minYExtent, 0.);
771− QCOMPARE(lvwph->m_clipItem->y(), 0.);
772− QCOMPARE(lvwph->m_clipItem->clip(), false);
773− QCOMPARE(lvwph->m_headerItem->y(), 0.);
774− QCOMPARE(lvwph->m_headerItem->height(), 100.);
775− QCOMPARE(lvwph->contentY(), 0.);
776− QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
777− QVERIFY(QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
778− }
779−
780− void testShrinkHeaderMoreThanPartlyShown()
781− {
782− scrollToBottom();
783− lvwph->m_headerItem->setHeight(100);
784− changeContentY(-30);
785−
786− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
787− QCOMPARE(lvwph->m_firstVisibleIndex, 3);
788− verifyItem(0, -588., 390., true, "Bold", true);
789− verifyItem(1, -198, 350., false, QString(), true);
790− verifyItem(2, 152, 390., false, "Lazy", false);
791− QCOMPARE(lvwph->m_minYExtent, 360.);
792− QCOMPARE(lvwph->m_clipItem->y(), 1458.);
793− QCOMPARE(lvwph->m_clipItem->clip(), true);
794− QCOMPARE(lvwph->m_headerItem->y(), 1358.);
795− QCOMPARE(lvwph->m_headerItem->height(), 100.);
796− QCOMPARE(lvwph->contentY(), 1428.);
797− QCOMPARE(lvwph->m_headerItemShownHeight, 30.);
798− QVERIFY(!QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
799− QCOMPARE(section(lvwph->m_topSectionItem), QString("Bold"));
800− QCOMPARE(lvwph->m_topSectionItem->y(), 0.);
801−
802− lvwph->m_headerItem->setHeight(50);
803−
804− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
805− QCOMPARE(lvwph->m_firstVisibleIndex, 3);
806− verifyItem(0, -588., 390., true, "Bold", true);
807− verifyItem(1, -198, 350., false, QString(), true);
808− verifyItem(2, 152, 390., false, "Lazy", false);
809− QCOMPARE(lvwph->m_minYExtent, 340.);
810− QCOMPARE(lvwph->m_clipItem->y(), 1428.);
811− QCOMPARE(lvwph->m_clipItem->clip(), false);
812− QCOMPARE(lvwph->m_headerItem->y(), 1358.);
813− QCOMPARE(lvwph->m_headerItem->height(), 50.);
814− QCOMPARE(lvwph->contentY(), 1428.);
815− QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
816− QTRY_VERIFY(lvwph->isAtYEnd());
817− QVERIFY(!QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
818− QCOMPARE(section(lvwph->m_topSectionItem), QString("Bold"));
819− QCOMPARE(lvwph->m_topSectionItem->y(), 0.);
820−
821− scrollToTop();
822−
823− QTRY_COMPARE(lvwph->m_visibleItems.count(), 3);
824− QCOMPARE(lvwph->m_firstVisibleIndex, 0);
825− verifyItem(0, 50., 190., false, "Agressive", false);
826− verifyItem(1, 240., 240., false, "Regular", false);
827− verifyItem(2, 480., 390., false, "Mild", false);
828− QCOMPARE(lvwph->m_minYExtent, 30.);
829− QCOMPARE(lvwph->m_clipItem->y(), -30.);
830− QCOMPARE(lvwph->m_clipItem->clip(), false);
831− QCOMPARE(lvwph->m_headerItem->y(), -30.);
832− QCOMPARE(lvwph->m_headerItem->height(), 50.);
833− QCOMPARE(lvwph->contentY(), -30.);
834− QCOMPARE(lvwph->m_headerItemShownHeight, 0.);
835− QVERIFY(QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
836− }
837−
838617 void testSetEmptyHeaderAtTop()
839618 {
840619 lvwph->setHeader(nullptr);