From c7fe1d5ea43e7b47bc21eade4914623be935219b Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Sat, 18 Aug 2018 17:23:29 +0200 Subject: Account name from metadata.json --- framework/src/accounts/accountfactory.cpp | 3 +++ framework/src/accounts/accountfactory.h | 2 ++ 2 files changed, 5 insertions(+) (limited to 'framework/src') diff --git a/framework/src/accounts/accountfactory.cpp b/framework/src/accounts/accountfactory.cpp index 7f3f046d..c3c3a170 100644 --- a/framework/src/accounts/accountfactory.cpp +++ b/framework/src/accounts/accountfactory.cpp @@ -64,17 +64,20 @@ void AccountFactory::loadPackage() }(); mUiPath.clear(); mLoginUi.clear(); + mAccountName.clear(); mRequiresKeyring = false; if (pluginPath.isEmpty()) { qWarning() << "Failed to load account package: " << "org.kube.accounts." + mAccountType; } else { mUiPath = QUrl::fromLocalFile(pluginPath + "/AccountSettings.qml"); mLoginUi = QUrl::fromLocalFile(pluginPath + "/Login.qml"); + mAccountName = mAccountType; if (QFileInfo::exists(pluginPath + "/metadata.json")) { QFile file{pluginPath + "/metadata.json"}; file.open(QIODevice::ReadOnly); auto json = QJsonDocument::fromJson(file.readAll()); mRequiresKeyring = json.object().value("RequiresKeyring").toBool(true); + mAccountName = json.object().value("Name").toString(); } else { mRequiresKeyring = true; } diff --git a/framework/src/accounts/accountfactory.h b/framework/src/accounts/accountfactory.h index 10acfbc1..b183f8fe 100644 --- a/framework/src/accounts/accountfactory.h +++ b/framework/src/accounts/accountfactory.h @@ -32,6 +32,7 @@ class KUBE_EXPORT AccountFactory : public QObject Q_OBJECT Q_PROPERTY(QString accountId MEMBER mAccountId WRITE setAccountId); Q_PROPERTY(QString accountType MEMBER mAccountType WRITE setAccountType); + Q_PROPERTY(QString accountName MEMBER mAccountName NOTIFY accountLoaded); Q_PROPERTY(QUrl uiPath MEMBER mUiPath NOTIFY accountLoaded); Q_PROPERTY(QUrl loginUi MEMBER mLoginUi NOTIFY accountLoaded); Q_PROPERTY(bool requiresKeyring MEMBER mRequiresKeyring NOTIFY accountLoaded); @@ -47,6 +48,7 @@ signals: private: void loadPackage(); QString mAccountId; + QString mAccountName; QUrl mUiPath; QUrl mLoginUi; QByteArray mAccountType; -- cgit v1.2.3