summaryrefslogtreecommitdiffstats
path: root/src/widgets/widgets/qabstractspinbox.cpp
diff options
context:
space:
mode:
authorJens Bache-Wiig <jens.bache-wiig@digia.com>2012-11-15 17:38:29 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-11-15 18:15:50 +0100
commit162926414d2586bdf32f7bc61860772d598beaeb (patch)
treee0b52b5ac0565bc5a4c92f41633a27d1e2abb0d9 /src/widgets/widgets/qabstractspinbox.cpp
parent528de79f4be4594c76a36d215ce434de00457a29 (diff)
Fix incorrect size hint for abstract spinbox
This size hint was based on strange logic from an alternate universe. The size hint should only contain the text size and let the style add what is neccessary for the frame rect etc. Most styles have worked around this by simply ignoring it, however some styles could still break a bit. Note that we add 4 since that is the constant that the old code 'usually' ended up at and should be compatible with our existing styles. Change-Id: Iebdbcb8949dd8b7daa7d8cb96ae5ab7351e4f79d Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
Diffstat (limited to 'src/widgets/widgets/qabstractspinbox.cpp')
-rw-r--r--src/widgets/widgets/qabstractspinbox.cpp13
1 files changed, 1 insertions, 12 deletions
diff --git a/src/widgets/widgets/qabstractspinbox.cpp b/src/widgets/widgets/qabstractspinbox.cpp
index 845cb5dbd0..c48d7172ab 100644
--- a/src/widgets/widgets/qabstractspinbox.cpp
+++ b/src/widgets/widgets/qabstractspinbox.cpp
@@ -825,7 +825,7 @@ QSize QAbstractSpinBox::sizeHint() const
ensurePolished();
const QFontMetrics fm(fontMetrics());
- int h = d->edit->sizeHint().height();
+ int h = d->edit->sizeHint().height() + 4;
int w = 0;
QString s;
s = d->prefix + d->textFromValue(d->minimum) + d->suffix + QLatin1Char(' ');
@@ -843,17 +843,6 @@ QSize QAbstractSpinBox::sizeHint() const
QStyleOptionSpinBox opt;
initStyleOption(&opt);
QSize hint(w, h);
- QSize extra(35, 6);
- opt.rect.setSize(hint + extra);
- extra += hint - style()->subControlRect(QStyle::CC_SpinBox, &opt,
- QStyle::SC_SpinBoxEditField, this).size();
- // get closer to final result by repeating the calculation
- opt.rect.setSize(hint + extra);
- extra += hint - style()->subControlRect(QStyle::CC_SpinBox, &opt,
- QStyle::SC_SpinBoxEditField, this).size();
- hint += extra;
-
- opt.rect = rect();
d->cachedSizeHint = style()->sizeFromContents(QStyle::CT_SpinBox, &opt, hint, this)
.expandedTo(QApplication::globalStrut());
}