summaryrefslogtreecommitdiffstats
path: root/src/platformsupport/fontdatabases/mac
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@qt.io>2018-11-26 23:01:50 +0100
committerTor Arne Vestbø <tor.arne.vestbo@qt.io>2018-11-30 10:35:52 +0000
commitb926d5f919d2564cfdece497a87111a02e927db2 (patch)
treed5adc92d2e9b5f04b3339e525bae287e25c72e27 /src/platformsupport/fontdatabases/mac
parenteab84914f1a31984f4698bcbca170556a56fd6fb (diff)
CoreText: Remove handling of QFontEngineMulti's highByte
It's a leftover from when the Cocoa plugin used QFontEngineMulti exclusively. Nowadays QFontEngineMulti will strip out the highByte before calling into the real engine. Left an assert just in case.. Change-Id: I6cb26d20a908d7c3aaf096297fca160805fdb85b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Diffstat (limited to 'src/platformsupport/fontdatabases/mac')
-rw-r--r--src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm17
1 files changed, 5 insertions, 12 deletions
diff --git a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
index 7fb22c0675..0f8727a13c 100644
--- a/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
+++ b/src/platformsupport/fontdatabases/mac/qfontengine_coretext.mm
@@ -885,10 +885,8 @@ void QCoreTextFontEngine::recalcAdvances(QGlyphLayout *glyphs, QFontEngine::Shap
QVarLengthArray<CGGlyph> cgGlyphs(numGlyphs);
for (int i = 0; i < numGlyphs; ++i) {
- if (glyphs->glyphs[i] & 0xff000000)
- cgGlyphs[i] = 0;
- else
- cgGlyphs[i] = glyphs->glyphs[i];
+ Q_ASSERT(!QFontEngineMulti::highByte(glyphs->glyphs[i]));
+ cgGlyphs[i] = glyphs->glyphs[i];
}
loadAdvancesForGlyphs(cgGlyphs, glyphs);
@@ -901,14 +899,9 @@ void QCoreTextFontEngine::loadAdvancesForGlyphs(QVarLengthArray<CGGlyph> &cgGlyp
CTFontGetAdvancesForGlyphs(ctfont, kCTFontOrientationHorizontal, cgGlyphs.data(), advances.data(), numGlyphs);
for (int i = 0; i < numGlyphs; ++i) {
- if (glyphs->glyphs[i] & 0xff000000)
- continue;
- glyphs->advances[i] = QFixed::fromReal(advances[i].width);
- }
-
- if (fontDef.styleStrategy & QFont::ForceIntegerMetrics) {
- for (int i = 0; i < numGlyphs; ++i)
- glyphs->advances[i] = glyphs->advances[i].round();
+ QFixed advance = QFixed::fromReal(advances[i].width);
+ glyphs->advances[i] = fontDef.styleStrategy & QFont::ForceIntegerMetrics
+ ? advance.round() : advance;
}
}