KWin
Loading...
Searching...
No Matches
kwinscriptsdata.cpp
Go to the documentation of this file.
1/*
2 SPDX-FileCopyrightText: 2020 Cyril Rossi <cyril.rossi@enioka.com>
3
4 SPDX-License-Identifier: GPL-2.0-or-later
5*/
6
7#include "kwinscriptsdata.h"
8
9#include <KConfigGroup>
10#include <KPackage/Package>
11#include <KPackage/PackageLoader>
12#include <KPackage/PackageStructure>
13#include <KPluginFactory>
14
16 : KCModuleData(parent)
17 , m_kwinConfig(KSharedConfig::openConfig("kwinrc"))
18{
19}
20
21QList<KPluginMetaData> KWinScriptsData::pluginMetaDataList() const
22{
23 const QString scriptFolder = QStringLiteral("kwin/scripts/");
24 return KPackage::PackageLoader::self()->findPackages(QStringLiteral("KWin/Script"), scriptFolder);
25}
26
28{
29 QList<KPluginMetaData> plugins = pluginMetaDataList();
30 KConfigGroup cfgGroup(m_kwinConfig, QStringLiteral("Plugins"));
31 for (auto &plugin : plugins) {
32 if (cfgGroup.readEntry(plugin.pluginId() + QLatin1String("Enabled"), plugin.isEnabledByDefault()) != plugin.isEnabledByDefault()) {
33 return false;
34 }
35 }
36
37 return true;
38}
39
40#include "moc_kwinscriptsdata.cpp"
bool isDefaults() const override
KWinScriptsData(QObject *parent)
QList< KPluginMetaData > pluginMetaDataList() const