2 * SPDX-FileCopyrightText: 2020 Elvis Angelaccio <elvis.angelaccio@kde.org
4 * SPDX-License-Identifier: GPL-2.0-or-later
7 #include "settingsdatasource.h"
8 #include "dolphin_generalsettings.h"
9 #include "dolphinmainwindow.h"
11 #include <KLocalizedString>
12 #include <KUserFeedback/Provider>
14 #include <QApplication>
17 SettingsDataSource::SettingsDataSource()
18 : KUserFeedback::AbstractDataSource(QStringLiteral("settings"), KUserFeedback::Provider::DetailedSystemInformation
)
22 QString
SettingsDataSource::name() const
24 return i18nc("name of kuserfeedback data source provided by dolphin", "Settings");
27 QString
SettingsDataSource::description() const
29 return i18nc("description of kuserfeedback data source provided by dolphin", "A subset of Dolphin settings.");
32 QVariant
SettingsDataSource::data()
35 // This assumes there is only one DolphinMainWindow per process.
36 const auto topLevelWidgets
= QApplication::topLevelWidgets();
37 for (const auto widget
: topLevelWidgets
) {
38 if (qobject_cast
<DolphinMainWindow
*>(widget
)) {
39 m_mainWindow
= static_cast<DolphinMainWindow
*>(widget
);
48 map
.insert(QStringLiteral("informationPanelEnabled"), m_mainWindow
->isInformationPanelEnabled());
49 map
.insert(QStringLiteral("foldersPanelEnabled"), m_mainWindow
->isFoldersPanelEnabled());
52 map
.insert(QStringLiteral("tooltipsEnabled"), GeneralSettings::showToolTips());
53 map
.insert(QStringLiteral("browseArchivesEnable"), GeneralSettings::browseThroughArchives());