diff --git a/components/quicksettingsplugin/quicksettingsmodel.cpp b/components/quicksettingsplugin/quicksettingsmodel.cpp index 49077025..448a3c47 100644 --- a/components/quicksettingsplugin/quicksettingsmodel.cpp +++ b/components/quicksettingsplugin/quicksettingsmodel.cpp @@ -72,7 +72,7 @@ void QuickSettingsModel::loadQuickSettings() // loop through enabled quick settings metadata for (const auto &metaData : m_savedQuickSettings->enabledQuickSettingsModel()->list()) { // load kpackage - KPackage::Package package = KPackage::PackageLoader::self()->loadPackage("KPackage/GenericQML", QFileInfo(metaData->fileName()).path()); + KPackage::Package package = KPackage::PackageLoader::self()->loadPackage("KPackage/GenericQML", QFileInfo(metaData.fileName()).path()); if (!package.isValid()) { continue; } diff --git a/components/quicksettingsplugin/savedquicksettings.cpp b/components/quicksettingsplugin/savedquicksettings.cpp index 3800c476..cf0f1cd8 100644 --- a/components/quicksettingsplugin/savedquicksettings.cpp +++ b/components/quicksettingsplugin/savedquicksettings.cpp @@ -10,9 +10,6 @@ SavedQuickSettings::SavedQuickSettings(QObject *parent) : QObject{parent} , m_settings{new QuickSettingsConfig{this}} - , m_validPackages{} - , m_enabledPackages{} - , m_disabledPackages{} , m_enabledQSModel{new SavedQuickSettingsModel{this}} , m_disabledQSModel{new SavedQuickSettingsModel{this}} , m_updateTimer{new QTimer{this}} @@ -34,14 +31,13 @@ SavedQuickSettings::SavedQuickSettings(QObject *parent) // load quicksettings packages auto packages = KPackage::PackageLoader::self()->listPackages(QStringLiteral("KPackage/GenericQML"), "plasma/quicksettings"); - for (auto &metaData : packages) { KPackage::Package package = KPackage::PackageLoader::self()->loadPackage("KPackage/GenericQML", QFileInfo(metaData.fileName()).path()); if (!package.isValid()) { qWarning() << "Quick setting package invalid:" << metaData.fileName(); continue; } - m_validPackages.push_back(new KPluginMetaData{metaData}); + m_validPackages.push_back(metaData); } // subscribe to config changes @@ -53,7 +49,7 @@ SavedQuickSettings::SavedQuickSettings(QObject *parent) }); // subscribe to model changes - connect(m_enabledQSModel, &SavedQuickSettingsModel::dataUpdated, this, [this](QList data) -> void { + connect(m_enabledQSModel, &SavedQuickSettingsModel::dataUpdated, this, [this](QList data) -> void { m_enabledPackages.clear(); for (auto metaData : data) { m_enabledPackages.push_back(metaData); @@ -64,7 +60,7 @@ SavedQuickSettings::SavedQuickSettings(QObject *parent) m_updateTimer->start(); // reset update timer if it's running } }); - connect(m_disabledQSModel, &SavedQuickSettingsModel::dataUpdated, this, [this](QList data) -> void { + connect(m_disabledQSModel, &SavedQuickSettingsModel::dataUpdated, this, [this](QList data) -> void { m_disabledPackages.clear(); for (auto metaData : data) { m_disabledPackages.push_back(metaData); @@ -100,9 +96,9 @@ SavedQuickSettingsModel *SavedQuickSettings::disabledQuickSettingsModel() const void SavedQuickSettings::enableQS(int index) { - KPluginMetaData *tmp = m_disabledQSModel->takeRow(index); + KPluginMetaData tmp = m_disabledQSModel->takeRow(index); - if (!tmp) { + if (!tmp.isValid()) { return; } @@ -111,9 +107,9 @@ void SavedQuickSettings::enableQS(int index) void SavedQuickSettings::disableQS(int index) { - KPluginMetaData *tmp = m_enabledQSModel->takeRow(index); + KPluginMetaData tmp = m_enabledQSModel->takeRow(index); - if (!tmp) { + if (!tmp.isValid()) { return; } @@ -131,7 +127,7 @@ void SavedQuickSettings::refreshModel() // add enabled quick settings in order for (const QString &pluginId : enabledQS) { for (auto &metaData : m_validPackages) { - if (pluginId == metaData->pluginId()) { + if (pluginId == metaData.pluginId()) { m_enabledPackages.push_back(metaData); break; } @@ -141,7 +137,7 @@ void SavedQuickSettings::refreshModel() // add disabled quick settings in order for (const QString &pluginId : disabledQS) { for (auto &metaData : m_validPackages) { - if (pluginId == metaData->pluginId()) { + if (pluginId == metaData.pluginId()) { m_disabledPackages.push_back(metaData); break; } @@ -150,7 +146,7 @@ void SavedQuickSettings::refreshModel() // add undefined quick settings to the back of enabled quick settings for (auto &metaData : m_validPackages) { - if (!enabledQS.contains(metaData->pluginId()) && !disabledQS.contains(metaData->pluginId())) { + if (!enabledQS.contains(metaData.pluginId()) && !disabledQS.contains(metaData.pluginId())) { m_enabledPackages.push_back(metaData); } } @@ -165,10 +161,10 @@ void SavedQuickSettings::saveModel() QList disabledQS; for (auto &metaData : m_enabledPackages) { - enabledQS.push_back(metaData->pluginId()); + enabledQS.push_back(metaData.pluginId()); } for (auto &metaData : m_disabledPackages) { - disabledQS.push_back(metaData->pluginId()); + disabledQS.push_back(metaData.pluginId()); } m_settings->setEnabledQuickSettings(enabledQS); diff --git a/components/quicksettingsplugin/savedquicksettings.h b/components/quicksettingsplugin/savedquicksettings.h index 4dfcf517..7f638043 100644 --- a/components/quicksettingsplugin/savedquicksettings.h +++ b/components/quicksettingsplugin/savedquicksettings.h @@ -42,9 +42,9 @@ private: void saveModel(); QuickSettingsConfig *m_settings; - QList m_validPackages; - QList m_enabledPackages; - QList m_disabledPackages; + QList m_validPackages; + QList m_enabledPackages; + QList m_disabledPackages; SavedQuickSettingsModel *m_enabledQSModel; SavedQuickSettingsModel *m_disabledQSModel; diff --git a/components/quicksettingsplugin/savedquicksettingsmodel.cpp b/components/quicksettingsplugin/savedquicksettingsmodel.cpp index 2de24db1..217db876 100644 --- a/components/quicksettingsplugin/savedquicksettingsmodel.cpp +++ b/components/quicksettingsplugin/savedquicksettingsmodel.cpp @@ -15,11 +15,11 @@ QVariant SavedQuickSettingsModel::data(const QModelIndex &index, int role) const } if (role == NameRole) { - return m_data[index.row()]->name(); + return m_data[index.row()].name(); } else if (role == IconRole) { - return m_data[index.row()]->iconName(); + return m_data[index.row()].iconName(); } else if (role == IdRole) { - return m_data[index.row()]->pluginId(); + return m_data[index.row()].pluginId(); } return QVariant(); } @@ -48,7 +48,7 @@ void SavedQuickSettingsModel::moveRow(int oldIndex, int newIndex) Q_EMIT dataUpdated(m_data); } -void SavedQuickSettingsModel::insertRow(KPluginMetaData *metaData, int index) +void SavedQuickSettingsModel::insertRow(KPluginMetaData metaData, int index) { Q_EMIT beginInsertRows(QModelIndex(), index, index); m_data.insert(index, metaData); @@ -57,14 +57,14 @@ void SavedQuickSettingsModel::insertRow(KPluginMetaData *metaData, int index) Q_EMIT dataUpdated(m_data); } -KPluginMetaData *SavedQuickSettingsModel::takeRow(int index) +KPluginMetaData SavedQuickSettingsModel::takeRow(int index) { if (index < 0 || index >= m_data.size()) { return {}; } Q_EMIT beginRemoveRows(QModelIndex(), index, index); - KPluginMetaData *tmp = m_data.takeAt(index); + KPluginMetaData tmp = m_data.takeAt(index); Q_EMIT endRemoveRows(); Q_EMIT dataUpdated(m_data); @@ -85,12 +85,12 @@ void SavedQuickSettingsModel::removeRow(int index) Q_EMIT dataUpdated(m_data); } -QList SavedQuickSettingsModel::list() const +QList SavedQuickSettingsModel::list() const { return m_data; } -void SavedQuickSettingsModel::updateData(QList data) +void SavedQuickSettingsModel::updateData(QList data) { Q_EMIT beginResetModel(); diff --git a/components/quicksettingsplugin/savedquicksettingsmodel.h b/components/quicksettingsplugin/savedquicksettingsmodel.h index b1973dc6..ad672913 100644 --- a/components/quicksettingsplugin/savedquicksettingsmodel.h +++ b/components/quicksettingsplugin/savedquicksettingsmodel.h @@ -34,18 +34,18 @@ public: QHash roleNames() const override; Q_INVOKABLE void moveRow(int oldIndex, int newIndex); - Q_INVOKABLE void insertRow(KPluginMetaData *metaData, int index); - Q_INVOKABLE KPluginMetaData *takeRow(int index); + Q_INVOKABLE void insertRow(KPluginMetaData metaData, int index); + Q_INVOKABLE KPluginMetaData takeRow(int index); Q_INVOKABLE void removeRow(int index); - QList list() const; + QList list() const; public Q_SLOTS: - void updateData(QList data); + void updateData(QList data); Q_SIGNALS: - void dataUpdated(QList data); + void dataUpdated(QList data); private: - QList m_data; + QList m_data; };