diff options
-rw-r--r-- | src/widgets/itemviews/qheaderview.cpp | 1 | ||||
-rw-r--r-- | tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp | 8 |
2 files changed, 8 insertions, 1 deletions
diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp index fa774b5074..21c2e9050c 100644 --- a/src/widgets/itemviews/qheaderview.cpp +++ b/src/widgets/itemviews/qheaderview.cpp @@ -3382,6 +3382,7 @@ void QHeaderViewPrivate::setDefaultSectionSize(int size) } } } + sectionStartposRecalc = true; } void QHeaderViewPrivate::recalcSectionStartPos() const // linear (but fast) diff --git a/tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp b/tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp index 844c66432e..e6181158fe 100644 --- a/tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp +++ b/tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp @@ -1637,9 +1637,15 @@ void tst_QHeaderView::defaultSectionSizeTest() { // Setup QTableView qtv; + QHeaderView *hv = qtv.verticalHeader(); + hv->setDefaultSectionSize(99); // Set it to a value different from defaultSize. QStandardItemModel amodel(4, 4); qtv.setModel(&amodel); - QHeaderView *hv = qtv.verticalHeader(); + QCOMPARE(hv->sectionSize(0), 99); + QCOMPARE(hv->visualIndexAt(50), 0); // <= also make sure that indexes are calculated + hv->setDefaultSectionSize(40); // Set it to a value different from defaultSize. + QCOMPARE(hv->visualIndexAt(50), 1); + const int defaultSize = 26; hv->setDefaultSectionSize(defaultSize + 1); // Set it to a value different from defaultSize. |