summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlessandro Portale <alessandro.portale@nokia.com>2011-06-14 17:24:19 (GMT)
committerAlessandro Portale <alessandro.portale@nokia.com>2011-06-14 18:59:55 (GMT)
commitfcfc19878a0a1a48194a786bba64da11606077d2 (patch)
tree8eb329cb2c22dbc2164601805d0337ae3c528fb3
parenta0af3a2d12828e69a23d3697a4a6c8c03d9bd92f (diff)
downloadQt-fcfc19878a0a1a48194a786bba64da11606077d2.zip
Qt-fcfc19878a0a1a48194a786bba64da11606077d2.tar.gz
Qt-fcfc19878a0a1a48194a786bba64da11606077d2.tar.bz2
Symbian: Fix QFontInfo::pixelSize()
Unlike QFont::pixelSize(), which may return -1 if the font size was defined in points, QFontInfo::pixelSize() always needs to return a valid value. c4ef479906f073fa84999eb950f00e264ebd4e8e which was a fix for QTBUG-13009 tried to fix a similar issue, but failed to do that properly, which resulted in QTBUG-15513 and QTBUG-17844. This commit is supposed to fix all three bugs. Task-Number: QTBUG-13009 Task-Number: QTBUG-15513 Task-Number: QTBUG-17844
-rw-r--r--src/gui/text/qfontdatabase_s60.cpp4
-rw-r--r--src/gui/text/qfontengine_s60.cpp1
2 files changed, 1 insertions, 4 deletions
diff --git a/src/gui/text/qfontdatabase_s60.cpp b/src/gui/text/qfontdatabase_s60.cpp
index f73abcf..3514fd3 100644
--- a/src/gui/text/qfontdatabase_s60.cpp
+++ b/src/gui/text/qfontdatabase_s60.cpp
@@ -1014,10 +1014,6 @@ QFontEngine *QFontDatabase::findFont(int script, const QFontPrivate *d, const QF
const QSymbianTypeFaceExtras *typeFaceExtras =
dbExtras->extras(fontFamily, request.weight > QFont::Normal, request.style != QFont::StyleNormal);
- // We need a valid pixelSize, e.g. for lineThickness()
- if (request.pixelSize < 0)
- request.pixelSize = request.pointSize * d->dpi / 72;
-
fe = new QFontEngineS60(request, typeFaceExtras);
#else // QT_NO_FREETYPE
Q_UNUSED(d)
diff --git a/src/gui/text/qfontengine_s60.cpp b/src/gui/text/qfontengine_s60.cpp
index 39ed0b1..8c60709 100644
--- a/src/gui/text/qfontengine_s60.cpp
+++ b/src/gui/text/qfontengine_s60.cpp
@@ -294,6 +294,7 @@ QFontEngineS60::QFontEngineS60(const QFontDef &request, const QSymbianTypeFaceEx
, m_activeFont(0)
{
QFontEngine::fontDef = request;
+ QFontEngine::fontDef.pixelSize = m_originalFontSizeInPixels; // Needs a valid pixel size. QTBUG-13009, QTBUG-17844
setFontScale(1.0);
cache_cost = sizeof(QFontEngineS60);
}