Set translation domain for quicksetting plugins

This commit is contained in:
F_Chao Fengchao 2024-06-05 16:15:53 +08:00
parent b0cda701c5
commit 4e1e9e8a9f
2 changed files with 7 additions and 1 deletions

View file

@ -20,6 +20,7 @@ target_link_libraries(quicksettingsplugin PRIVATE
KF6::Service KF6::Service
KF6::ConfigWidgets KF6::ConfigWidgets
KF6::Package KF6::Package
KF6::I18n
) )
ecm_finalize_qml_module(quicksettingsplugin) ecm_finalize_qml_module(quicksettingsplugin)

View file

@ -12,6 +12,8 @@
#include <QFileInfo> #include <QFileInfo>
#include <QQmlComponent> #include <QQmlComponent>
#include <QQmlEngine> #include <QQmlEngine>
#include <QQmlContext>
#include <KLocalizedContext>
QuickSettingsModel::QuickSettingsModel(QObject *parent) QuickSettingsModel::QuickSettingsModel(QObject *parent)
: QAbstractListModel{parent} : QAbstractListModel{parent}
@ -79,7 +81,10 @@ void QuickSettingsModel::loadQuickSettings()
// load QML from kpackage // load QML from kpackage
c->loadUrl(package.fileUrl("mainscript"), QQmlComponent::PreferSynchronous); c->loadUrl(package.fileUrl("mainscript"), QQmlComponent::PreferSynchronous);
KLocalizedContext *i18nContext = new KLocalizedContext(engine);
i18nContext->setTranslationDomain(QLatin1String("plasma_") + metaData.pluginId());
engine->rootContext()->setContextObject(i18nContext);
auto created = c->create(engine->rootContext()); auto created = c->create(engine->rootContext());
auto createdSetting = qobject_cast<QuickSetting *>(created); auto createdSetting = qobject_cast<QuickSetting *>(created);