From 19efbb9108cae6fc5f5113321396c0076728982b Mon Sep 17 00:00:00 2001 From: Matt Broadstone Date: Fri, 17 Aug 2007 16:04:49 +0000 Subject: [PATCH] Respect min/max sizeHints when setting geometry svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=701205 --- widgets/widget.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/widgets/widget.cpp b/widgets/widget.cpp index fc318d687..5d8a21d67 100644 --- a/widgets/widget.cpp +++ b/widgets/widget.cpp @@ -158,11 +158,13 @@ QRectF Widget::localGeometry() const void Widget::setGeometry(const QRectF& geometry) { - bool sizeChange = d->size != geometry.size(); - - if ( sizeChange ) { + if ( d->size != geometry.size() ) { prepareGeometryChange(); - d->size = geometry.size(); + qreal width = qBound(d->minimumSize.width(), geometry.size().width(), d->maximumSize.width()); + qreal height = qBound(d->minimumSize.height(), geometry.size().height(), d->maximumSize.height()); + + d->size = QSizeF(width, height); + } setPos(geometry.topLeft());