From 05e24901a14f1a656359bc649686674a9bca1473 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Thorbj=C3=B8rn=20Lund=20Martsum?= Date: Thu, 23 Feb 2012 08:24:21 +0100 Subject: [PATCH] QHeaderView - minor cleanup in viewportEvent This is an improvement to a previous fix with SHA e62e71162606fec134600955a89b7e0c34a7840b We actually never want to call resizeSections if the parent is hidden. Therefore we can both simplify and improve the code with this patch. When we do show/hide on parent then the visible status is updated before we get into this code. I have verified the patch on the code from: Task-number: QTBUG-14234 Change-Id: If7bfa3b3813c97b4a545e48423526e9cfe118de4 Reviewed-by: Stephen Kelly --- src/widgets/itemviews/qheaderview.cpp | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/src/widgets/itemviews/qheaderview.cpp b/src/widgets/itemviews/qheaderview.cpp index ed71c5a..5d2acea 100644 --- a/src/widgets/itemviews/qheaderview.cpp +++ b/src/widgets/itemviews/qheaderview.cpp @@ -2433,20 +2433,15 @@ bool QHeaderView::viewportEvent(QEvent *e) } return true; } #endif // QT_NO_STATUSTIP - case QEvent::Hide: { - d->invalidateCachedSizeHint(); + case QEvent::Hide: + case QEvent::Show: + case QEvent::FontChange: + case QEvent::StyleChange:{ QAbstractScrollArea *parent = qobject_cast(parentWidget()); if (parent && parent->isVisible()) // Only resize if we have a visible parent resizeSections(); emit geometriesChanged(); break;} - case QEvent::Show: - case QEvent::FontChange: - case QEvent::StyleChange: - d->invalidateCachedSizeHint(); - resizeSections(); - emit geometriesChanged(); - break; case QEvent::ContextMenu: { d->state = QHeaderViewPrivate::NoState; d->pressed = d->section = d->target = -1; -- 2.7.4