From ee5ffafa45c616273148a16cd6a102e4b9b670f6 Mon Sep 17 00:00:00 2001 From: Alessandro Portale Date: Mon, 18 Jul 2022 18:50:26 +0200 Subject: [PATCH] QmlProjectManager: Improve font loading for the QDS landing page MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The Titillium Web font comes in a QML module with FontLoader. Use that instead of QFontDataBase, and retrieve the exact family name. This also ensures that the font is loaded when editing the page in QDS (if it is not loaded before e.g. by the QDS Welcome Screen). Change-Id: I2cbec7fbc09fb4d4d31c513441c7cabbbbc5001d Reviewed-by: Henning Gründl --- .../qmldesigner/landingpage/imports/LandingPage/Values.qml | 3 ++- src/plugins/qmlprojectmanager/qdslandingpage.cpp | 1 + src/plugins/qmlprojectmanager/qmlprojectplugin.cpp | 1 - 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/share/qtcreator/qmldesigner/landingpage/imports/LandingPage/Values.qml b/share/qtcreator/qmldesigner/landingpage/imports/LandingPage/Values.qml index de4ea147c07..33af4b5ac59 100644 --- a/share/qtcreator/qmldesigner/landingpage/imports/LandingPage/Values.qml +++ b/share/qtcreator/qmldesigner/landingpage/imports/LandingPage/Values.qml @@ -25,11 +25,12 @@ pragma Singleton import QtQuick 2.15 +import StudioFonts 1.0 QtObject { id: values - property string baseFont: "Titillium Web" + property string baseFont: StudioFonts.titilliumWeb_regular property real scaleFactor: 1.0 property real checkBoxSize: Math.round(26 * values.scaleFactor) diff --git a/src/plugins/qmlprojectmanager/qdslandingpage.cpp b/src/plugins/qmlprojectmanager/qdslandingpage.cpp index d9fbe8be232..48450b87d99 100644 --- a/src/plugins/qmlprojectmanager/qdslandingpage.cpp +++ b/src/plugins/qmlprojectmanager/qdslandingpage.cpp @@ -74,6 +74,7 @@ QQuickWidget *QdsLandingPageWidget::widget() m_widget->setResizeMode(QQuickWidget::SizeRootObjectToView); m_widget->engine()->addImportPath(landingPath + "/imports"); m_widget->engine()->addImportPath(resourcePath); + m_widget->engine()->addImportPath("qrc:/studiofonts"); m_widget->setSource(QUrl::fromLocalFile(landingPath + "/main.qml")); m_widget->hide(); diff --git a/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp b/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp index 83e8fe4c479..a24beeebc4e 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectplugin.cpp @@ -266,7 +266,6 @@ bool QmlProjectPlugin::initialize(const QStringList &, QString *errorMessage) d = new QmlProjectPluginPrivate; if (!qmlDesignerEnabled()) { - QFontDatabase::addApplicationFont(":/studiofonts/TitilliumWeb-Regular.ttf"); d->landingPage = new QdsLandingPage(); qmlRegisterSingletonInstance("LandingPageApi", 1,