summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/widgets/itemviews/qheaderview.cpp1
-rw-r--r--tests/auto/widgets/itemviews/qheaderview/tst_qheaderview.cpp8
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.