From 84b3f123104658edabe52c1d9a673f16c31dbaf8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tor=20Arne=20Vestb=C3=B8?= Date: Fri, 7 Apr 2017 14:56:22 +0200 Subject: macOS: Defer population of localized font family aliases until needed Getting the localized family name of a font involves quite a bit of work internally in CoreText, e.g. creating and sorting font descriptors. By deferring population of family aliases until a font match misses we shave off ~1 second of startup time for applications that use non- localized font families (most applications). Change-Id: I021952c311c0d70d7769ccf764dbf997ebf30a4b Reviewed-by: Eskil Abrahamsen Blomfeldt --- src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h') diff --git a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h index a7529b7fb0..9612b909f1 100644 --- a/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h +++ b/src/platformsupport/fontdatabases/mac/qcoretextfontdatabase_p.h @@ -75,7 +75,9 @@ public: QCoreTextFontDatabase(); ~QCoreTextFontDatabase(); void populateFontDatabase() Q_DECL_OVERRIDE; + bool populateFamilyAliases() override; void populateFamily(const QString &familyName) Q_DECL_OVERRIDE; + void invalidate() override; QStringList fallbacksForFamily(const QString &family, QFont::Style style, QFont::StyleHint styleHint, QChar::Script script) const Q_DECL_OVERRIDE; QStringList addApplicationFont(const QByteArray &fontData, const QString &fileName) Q_DECL_OVERRIDE; @@ -96,6 +98,7 @@ private: mutable QSet m_systemFontDescriptors; mutable QHash m_themeFonts; + bool m_hasPopulatedAliases; }; // Split out into separate template class so that the compiler doesn't have -- cgit v1.2.3