diff options
author | Jarkko T. Toivonen <jarkko.t.toivonen@nokia.com> | 2011-09-15 12:40:51 (GMT) |
---|---|---|
committer | Jarkko T. Toivonen <jarkko.t.toivonen@nokia.com> | 2011-09-15 12:40:51 (GMT) |
commit | b0fbf9dae591dc839e14a087c1d69189e3fe9461 (patch) | |
tree | ba48dc146d729c0a8a3c26710fd926671254f9dc | |
parent | e9060024fa2100ce5c8b2e8689d2ec72b75a3211 (diff) | |
download | Qt-b0fbf9dae591dc839e14a087c1d69189e3fe9461.zip Qt-b0fbf9dae591dc839e14a087c1d69189e3fe9461.tar.gz Qt-b0fbf9dae591dc839e14a087c1d69189e3fe9461.tar.bz2 |
Fix the incorrect sizeHint given by QLabel on Symbian
Using the S60 clientRect width in the QLabel size hint calculation
(instead of assuming that 80 characters will fit on one line).
Task-number: QTBUG-14318
Reviewed-by: Murray Read
-rw-r--r-- | src/gui/widgets/qlabel.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/gui/widgets/qlabel.cpp b/src/gui/widgets/qlabel.cpp index ab88f38..c0be3e1 100644 --- a/src/gui/widgets/qlabel.cpp +++ b/src/gui/widgets/qlabel.cpp @@ -59,6 +59,10 @@ #include <qaccessible.h> #endif +#ifdef Q_OS_SYMBIAN +#include "qt_s60_p.h" +#endif + QT_BEGIN_NAMESPACE /*! @@ -698,7 +702,11 @@ QSize QLabelPrivate::sizeForWidth(int w) const bool tryWidth = (w < 0) && (align & Qt::TextWordWrap); if (tryWidth) +#ifdef Q_OS_SYMBIAN + w = qMin(S60->clientRect().Width(), q->maximumSize().width()); +#else w = qMin(fm.averageCharWidth() * 80, q->maximumSize().width()); +#endif else if (w < 0) w = 2000; w -= (hextra + contentsMargin.width()); |