diff options
Diffstat (limited to 'src/declarative/scenegraph')
-rw-r--r-- | src/declarative/scenegraph/qsgadaptationlayer_p.h | 3 | ||||
-rw-r--r-- | src/declarative/scenegraph/qsgdistancefieldglyphnode.cpp | 7 |
2 files changed, 6 insertions, 4 deletions
diff --git a/src/declarative/scenegraph/qsgadaptationlayer_p.h b/src/declarative/scenegraph/qsgadaptationlayer_p.h index 820650eb56..f2c0cbe9ef 100644 --- a/src/declarative/scenegraph/qsgadaptationlayer_p.h +++ b/src/declarative/scenegraph/qsgadaptationlayer_p.h @@ -45,7 +45,6 @@ #include "qsgnode.h" #include "qsgtexture.h" #include <private/qsgtext_p.h> - #include <QtCore/qobject.h> #include <QtCore/qrect.h> #include <QtGui/qcolor.h> @@ -53,6 +52,8 @@ #include <QtGui/qglyphrun.h> #include <QtCore/qurl.h> +#include <private/qsgtext_p.h> + QT_BEGIN_HEADER QT_BEGIN_NAMESPACE diff --git a/src/declarative/scenegraph/qsgdistancefieldglyphnode.cpp b/src/declarative/scenegraph/qsgdistancefieldglyphnode.cpp index beeda1e476..cb3dab959c 100644 --- a/src/declarative/scenegraph/qsgdistancefieldglyphnode.cpp +++ b/src/declarative/scenegraph/qsgdistancefieldglyphnode.cpp @@ -167,6 +167,7 @@ void QSGDistanceFieldGlyphNode::updateGeometry() QPointF margins(2, 2); QPointF texMargins = margins / m_glyph_cache->fontScale(); + QVector<QPointF> glyphPositions = m_glyphs.positions(); for (int i = 0; i < glyphIndexes.size(); ++i) { quint32 glyphIndex = glyphIndexes.at(i); QSGDistanceFieldGlyphCache::Metrics metrics = m_glyph_cache->glyphMetrics(glyphIndex); @@ -183,9 +184,9 @@ void QSGDistanceFieldGlyphNode::updateGeometry() c.height += texMargins.y() * 2; } - QPointF glyphPosition = m_glyphs.positions().at(i) + m_position; - qreal x = glyphPosition.x() + metrics.baselineX; - qreal y = glyphPosition.y() - metrics.baselineY; + const QPointF &glyphPosition = glyphPositions.at(i); + qreal x = glyphPosition.x() + metrics.baselineX + m_position.x(); + qreal y = glyphPosition.y() - metrics.baselineY + m_position.y(); boundingRect |= QRectF(x, y, metrics.width, metrics.height); |