diff options
author | Liang Qi <liang.qi@theqtcompany.com> | 2016-01-26 11:27:37 +0000 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2016-01-26 11:27:37 +0000 |
commit | 0a1af55a9b69f7fd58dbce43a0d4c1faf0143838 (patch) | |
tree | 26da168e740734d168be37803abec2f8739b213d /src/widgets/itemviews/qtreeview.cpp | |
parent | b8fb0ee999d32401157be8d86e5a03185aadbb9e (diff) | |
parent | 158a3a4159bdc5a49caecd63e021dacbc06cf23c (diff) |
Merge "Merge remote-tracking branch 'origin/5.6' into dev" into refs/staging/dev
Diffstat (limited to 'src/widgets/itemviews/qtreeview.cpp')
-rw-r--r-- | src/widgets/itemviews/qtreeview.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/widgets/itemviews/qtreeview.cpp b/src/widgets/itemviews/qtreeview.cpp index fdd2be69eb..ccc7c34602 100644 --- a/src/widgets/itemviews/qtreeview.cpp +++ b/src/widgets/itemviews/qtreeview.cpp @@ -2836,10 +2836,14 @@ void QTreeView::updateGeometries() if (d->geometryRecursionBlock) return; d->geometryRecursionBlock = true; - QSize hint = d->header->isHidden() ? QSize(0, 0) : d->header->sizeHint(); - setViewportMargins(0, hint.height(), 0, 0); + int height = 0; + if (!d->header->isHidden()) { + height = qMax(d->header->minimumHeight(), d->header->sizeHint().height()); + height = qMin(height, d->header->maximumHeight()); + } + setViewportMargins(0, height, 0, 0); QRect vg = d->viewport->geometry(); - QRect geometryRect(vg.left(), vg.top() - hint.height(), vg.width(), hint.height()); + QRect geometryRect(vg.left(), vg.top() - height, vg.width(), height); d->header->setGeometry(geometryRect); QMetaObject::invokeMethod(d->header, "updateGeometries"); d->updateScrollBars(); |