From d811689c1703d54a7463cf55c4f4cc3726dcff69 Mon Sep 17 00:00:00 2001 From: Ivailo Monev Date: Mon, 27 May 2019 22:44:47 +0000 Subject: [PATCH] QScrollAreaPrivate cleanup Signed-off-by: Ivailo Monev --- src/gui/widgets/qscrollarea.cpp | 5 +++-- src/gui/widgets/qscrollarea_p.h | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/gui/widgets/qscrollarea.cpp b/src/gui/widgets/qscrollarea.cpp index e935af3d7..51d376df3 100644 --- a/src/gui/widgets/qscrollarea.cpp +++ b/src/gui/widgets/qscrollarea.cpp @@ -380,6 +380,9 @@ void QScrollArea::setWidgetResizable(bool resizable) { Q_D(QScrollArea); d->resizable = resizable; + if (d->widget && !d->widgetSize.isValid()) { + d->widgetSize = resizable ? d->widget->sizeHint() : d->widget->size(); + } updateGeometry(); d->updateScrollBars(); } @@ -394,8 +397,6 @@ QSize QScrollArea::sizeHint() const QSize sz(f, f); int h = fontMetrics().height(); if (d->widget) { - if (!d->widgetSize.isValid()) - d->widgetSize = d->resizable ? d->widget->sizeHint() : d->widget->size(); sz += d->widgetSize; } else { sz += QSize(12 * h, 8 * h); diff --git a/src/gui/widgets/qscrollarea_p.h b/src/gui/widgets/qscrollarea_p.h index e18cdcfef..67f4acf46 100644 --- a/src/gui/widgets/qscrollarea_p.h +++ b/src/gui/widgets/qscrollarea_p.h @@ -69,7 +69,7 @@ public: void updateScrollBars(); void updateWidgetPosition(); QPointer widget; - mutable QSize widgetSize; + QSize widgetSize; bool resizable; Qt::Alignment alignment; }; -- 2.11.0