diff options
Diffstat (limited to 'src/settings')
18 files changed, 35 insertions, 188 deletions
diff --git a/src/settings/contextmenu/contextmenusettingspage.cpp b/src/settings/contextmenu/contextmenusettingspage.cpp index c363914d0..0dcc1d12b 100644 --- a/src/settings/contextmenu/contextmenusettingspage.cpp +++ b/src/settings/contextmenu/contextmenusettingspage.cpp @@ -20,8 +20,6 @@ #include <KMessageBox> #include <KPluginMetaData> #include <KService> -#include <KServiceTypeTrader> -#include <kio_version.h> #include <kiocore_export.h> #include <kservice_export.h> #include <kwidgetsaddons_version.h> @@ -290,13 +288,6 @@ void ContextMenuSettingsPage::loadServices() const auto locations = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, QStringLiteral("kio/servicemenus"), QStandardPaths::LocateDirectory); QStringList files = KFileUtils::findAllUniqueFiles(locations); -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 90) - const KService::List services = KServiceTypeTrader::self()->query(QStringLiteral("KonqPopupMenu/Plugin")); - for (const KService::Ptr &service : services) { - files << QStandardPaths::locate(QStandardPaths::GenericDataLocation, "kservices5/" % service->entryPath()); - } -#endif - for (const auto &file : qAsConst(files)) { const QList<KServiceAction> serviceActions = KDesktopFileActions::userDefinedServices(KService(file), true); @@ -315,20 +306,8 @@ void ContextMenuSettingsPage::loadServices() } } - // Load service plugins, this is deprecated in KIO 5.82 -#if KIOCORE_BUILD_DEPRECATED_SINCE(5, 82) - const KService::List pluginServices = KServiceTypeTrader::self()->query(QStringLiteral("KFileItemAction/Plugin")); - for (const KService::Ptr &service : pluginServices) { - const QString desktopEntryName = service->desktopEntryName(); - if (!isInServicesList(desktopEntryName)) { - const bool checked = showGroup.readEntry(desktopEntryName, true); - addRow(service->icon(), service->name(), desktopEntryName, checked); - } - } -#endif - // Load JSON-based plugins that implement the KFileItemActionPlugin interface - const auto jsonPlugins = KPluginMetaData::findPlugins(QStringLiteral("kf" QT_STRINGIFY(QT_VERSION_MAJOR)) + QStringLiteral("/kfileitemaction")); + const auto jsonPlugins = KPluginMetaData::findPlugins(QStringLiteral("kf" QT_STRINGIFY(QT_MAJOR_VERSION)) + QStringLiteral("/kfileitemaction")); for (const auto &jsonMetadata : jsonPlugins) { const QString desktopEntryName = jsonMetadata.pluginId(); diff --git a/src/settings/contextmenu/servicemenuinstaller/CMakeLists.txt b/src/settings/contextmenu/servicemenuinstaller/CMakeLists.txt index 74576ad20..603e5c2e5 100644 --- a/src/settings/contextmenu/servicemenuinstaller/CMakeLists.txt +++ b/src/settings/contextmenu/servicemenuinstaller/CMakeLists.txt @@ -5,8 +5,8 @@ add_executable(servicemenuinstaller servicemenuinstaller.cpp) target_link_libraries(servicemenuinstaller PRIVATE Qt${QT_MAJOR_VERSION}::Core Qt${QT_MAJOR_VERSION}::Gui - KF5::I18n - KF5::CoreAddons + KF6::I18n + KF6::CoreAddons ) if(HAVE_PACKAGEKIT) diff --git a/src/settings/general/configurepreviewplugindialog.cpp b/src/settings/general/configurepreviewplugindialog.cpp deleted file mode 100644 index a391812df..000000000 --- a/src/settings/general/configurepreviewplugindialog.cpp +++ /dev/null @@ -1,71 +0,0 @@ -/* - * SPDX-FileCopyrightText: 2011 Peter Penz <[email protected]> - * - * SPDX-License-Identifier: GPL-2.0-or-later - */ - -#include "configurepreviewplugindialog.h" - -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 87) - -#include <KIO/DeleteJob> -#include <KIO/JobUiDelegate> -#include <KIO/ThumbCreator> -#include <KJobWidgets> -#include <KLocalizedString> -#include <QPluginLoader> - -#include <QDialogButtonBox> -#include <QPushButton> -#include <QStandardPaths> -#include <QUrl> -#include <QVBoxLayout> - -ConfigurePreviewPluginDialog::ConfigurePreviewPluginDialog(const QString &pluginName, const QString &desktopEntryName, QWidget *parent) - : QDialog(parent) -{ - QSharedPointer<ThumbCreator> previewPlugin; - const QString pluginPath = QPluginLoader(desktopEntryName).fileName(); - if (!pluginPath.isEmpty()) { - newCreator create = (newCreator)QLibrary::resolve(pluginPath, "new_creator"); - if (create) { - previewPlugin.reset(dynamic_cast<ThumbCreator *>(create())); - } - } - - setWindowTitle(i18nc("@title:window", "Configure Preview for %1", pluginName)); - setSizePolicy(QSizePolicy::Preferred, QSizePolicy::Minimum); - setMinimumWidth(400); - - auto layout = new QVBoxLayout(this); - - if (previewPlugin) { - auto configurationWidget = previewPlugin->createConfigurationWidget(); - configurationWidget->setParent(this); - layout->addWidget(configurationWidget); - - layout->addStretch(); - - connect(this, &ConfigurePreviewPluginDialog::accepted, this, [=] { - // TODO: It would be great having a mechanism to tell PreviewJob that only previews - // for a specific MIME-type should be regenerated. As this is not available yet we - // delete the whole thumbnails directory. - previewPlugin->writeConfiguration(configurationWidget); - - // https://specifications.freedesktop.org/thumbnail-spec/thumbnail-spec-latest.html#DIRECTORY - const QString thumbnailsPath = QStandardPaths::writableLocation(QStandardPaths::GenericCacheLocation) + QLatin1String("/thumbnails/"); - KIO::del(QUrl::fromLocalFile(thumbnailsPath), KIO::HideProgressInfo); - }); - } - - auto buttonBox = new QDialogButtonBox(QDialogButtonBox::Ok | QDialogButtonBox::Cancel, this); - connect(buttonBox, &QDialogButtonBox::accepted, this, &ConfigurePreviewPluginDialog::accept); - connect(buttonBox, &QDialogButtonBox::rejected, this, &ConfigurePreviewPluginDialog::reject); - layout->addWidget(buttonBox); - - auto okButton = buttonBox->button(QDialogButtonBox::Ok); - okButton->setShortcut(Qt::CTRL | Qt::Key_Return); - okButton->setDefault(true); -} - -#endif // KIO_VERSION diff --git a/src/settings/general/configurepreviewplugindialog.h b/src/settings/general/configurepreviewplugindialog.h deleted file mode 100644 index 66504cce2..000000000 --- a/src/settings/general/configurepreviewplugindialog.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - * SPDX-FileCopyrightText: 2011 Peter Penz <[email protected]> - * - * SPDX-License-Identifier: GPL-2.0-or-later - */ - -#ifndef CONFIGUREPREVIEWPLUGINDIALOG_H -#define CONFIGUREPREVIEWPLUGINDIALOG_H - -#include <kiowidgets_export.h> - -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 87) - -#include <QDialog> - -/** - * @brief Dialog for configuring preview-plugins. - */ -class ConfigurePreviewPluginDialog : public QDialog -{ - Q_OBJECT - -public: - /** - * @param pluginName User visible name of the plugin - * @param desktopEntryName The name of the plugin that is noted in the desktopentry. - * Is used to instantiate the plugin to get the configuration - * widget. - * @param parent Parent widget. - */ - ConfigurePreviewPluginDialog(const QString &pluginName, const QString &desktopEntryName, QWidget *parent); - ~ConfigurePreviewPluginDialog() override = default; -}; -#endif // KIOWIDGETS_BUILD_DEPRECATED_SINCE - -#endif diff --git a/src/settings/general/previewssettingspage.cpp b/src/settings/general/previewssettingspage.cpp index 358798f58..fa715237a 100644 --- a/src/settings/general/previewssettingspage.cpp +++ b/src/settings/general/previewssettingspage.cpp @@ -6,7 +6,6 @@ #include "previewssettingspage.h" -#include "configurepreviewplugindialog.h" #include "dolphin_generalsettings.h" #include "settings/serviceitemdelegate.h" #include "settings/servicemodel.h" @@ -45,12 +44,6 @@ PreviewsSettingsPage::PreviewsSettingsPage(QWidget *parent) m_listView = new QListView(this); QScroller::grabGesture(m_listView->viewport(), QScroller::TouchGesture); -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 87) - ServiceItemDelegate *delegate = new ServiceItemDelegate(m_listView, m_listView); - connect(delegate, &ServiceItemDelegate::requestServiceConfiguration, this, &PreviewsSettingsPage::configureService); - m_listView->setItemDelegate(delegate); -#endif - ServiceModel *serviceModel = new ServiceModel(this); QSortFilterProxyModel *proxyModel = new QSortFilterProxyModel(this); proxyModel->setSourceModel(serviceModel); @@ -150,19 +143,6 @@ void PreviewsSettingsPage::showEvent(QShowEvent *event) SettingsPageBase::showEvent(event); } -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 87) -void PreviewsSettingsPage::configureService(const QModelIndex &index) -{ - const QAbstractItemModel *model = index.model(); - const QString pluginName = model->data(index).toString(); - const QString desktopEntryName = model->data(index, ServiceModel::DesktopEntryNameRole).toString(); - - ConfigurePreviewPluginDialog *dialog = new ConfigurePreviewPluginDialog(pluginName, desktopEntryName, this); - dialog->setAttribute(Qt::WA_DeleteOnClose); - dialog->show(); -} -#endif - void PreviewsSettingsPage::loadPreviewPlugins() { QAbstractItemModel *model = m_listView->model(); @@ -176,11 +156,6 @@ void PreviewsSettingsPage::loadPreviewPlugins() model->setData(index, show, Qt::CheckStateRole); model->setData(index, plugin.name(), Qt::DisplayRole); model->setData(index, plugin.pluginId(), ServiceModel::DesktopEntryNameRole); - -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 87) - const bool configurable = plugin.value(QStringLiteral("Configurable"), false); - model->setData(index, configurable, ServiceModel::ConfigurableRole); -#endif } model->sort(Qt::DisplayRole); diff --git a/src/settings/general/previewssettingspage.h b/src/settings/general/previewssettingspage.h index 2c3e4dfef..d6d22ae21 100644 --- a/src/settings/general/previewssettingspage.h +++ b/src/settings/general/previewssettingspage.h @@ -40,9 +40,6 @@ protected: void showEvent(QShowEvent *event) override; private Q_SLOTS: -#if KIOWIDGETS_BUILD_DEPRECATED_SINCE(5, 87) - void configureService(const QModelIndex &index); -#endif private: void loadPreviewPlugins(); diff --git a/src/settings/kcm/kcmdolphingeneral.cpp b/src/settings/kcm/kcmdolphingeneral.cpp index 25e3b6876..4e99a0e14 100644 --- a/src/settings/kcm/kcmdolphingeneral.cpp +++ b/src/settings/kcm/kcmdolphingeneral.cpp @@ -19,16 +19,16 @@ K_PLUGIN_CLASS_WITH_JSON(DolphinGeneralConfigModule, "kcmdolphingeneral.json") -DolphinGeneralConfigModule::DolphinGeneralConfigModule(QWidget *parent, const QVariantList &args) - : KCModule(parent, args) +DolphinGeneralConfigModule::DolphinGeneralConfigModule(QObject *parent, const KPluginMetaData &data) + : KCModule(parent, data) , m_pages() { setButtons(KCModule::Default | KCModule::Help | KCModule::Apply); - QVBoxLayout *topLayout = new QVBoxLayout(this); + QVBoxLayout *topLayout = new QVBoxLayout(widget()); topLayout->setContentsMargins(0, 0, 0, 0); - QTabWidget *tabWidget = new QTabWidget(this); + QTabWidget *tabWidget = new QTabWidget(widget()); // initialize 'Behavior' tab BehaviorSettingsPage *behaviorPage = new BehaviorSettingsPage(QUrl::fromLocalFile(QDir::homePath()), tabWidget); diff --git a/src/settings/kcm/kcmdolphingeneral.h b/src/settings/kcm/kcmdolphingeneral.h index 889317738..828332539 100644 --- a/src/settings/kcm/kcmdolphingeneral.h +++ b/src/settings/kcm/kcmdolphingeneral.h @@ -21,7 +21,7 @@ class DolphinGeneralConfigModule : public KCModule Q_OBJECT public: - DolphinGeneralConfigModule(QWidget *parent, const QVariantList &args); + DolphinGeneralConfigModule(QObject *parent, const KPluginMetaData &data); ~DolphinGeneralConfigModule() override; void save() override; diff --git a/src/settings/kcm/kcmdolphinnavigation.cpp b/src/settings/kcm/kcmdolphinnavigation.cpp index 63591f4fd..c77e198ff 100644 --- a/src/settings/kcm/kcmdolphinnavigation.cpp +++ b/src/settings/kcm/kcmdolphinnavigation.cpp @@ -15,16 +15,16 @@ K_PLUGIN_CLASS_WITH_JSON(DolphinNavigationConfigModule, "kcmdolphinnavigation.json") -DolphinNavigationConfigModule::DolphinNavigationConfigModule(QWidget *parent, const QVariantList &args) - : KCModule(parent, args) +DolphinNavigationConfigModule::DolphinNavigationConfigModule(QObject *parent) + : KCModule(parent) , m_navigation(nullptr) { setButtons(KCModule::Default | KCModule::Help | KCModule::Apply); - QVBoxLayout *topLayout = new QVBoxLayout(this); + QVBoxLayout *topLayout = new QVBoxLayout(widget()); topLayout->setContentsMargins(0, 0, 0, 0); - m_navigation = new NavigationSettingsPage(this); + m_navigation = new NavigationSettingsPage(widget()); connect(m_navigation, &NavigationSettingsPage::changed, this, &DolphinNavigationConfigModule::markAsChanged); topLayout->addWidget(m_navigation, 0, {}); } diff --git a/src/settings/kcm/kcmdolphinnavigation.h b/src/settings/kcm/kcmdolphinnavigation.h index 97d7bff85..a25405155 100644 --- a/src/settings/kcm/kcmdolphinnavigation.h +++ b/src/settings/kcm/kcmdolphinnavigation.h @@ -19,7 +19,7 @@ class DolphinNavigationConfigModule : public KCModule Q_OBJECT public: - DolphinNavigationConfigModule(QWidget *parent, const QVariantList &args); + DolphinNavigationConfigModule(QObject *parent); ~DolphinNavigationConfigModule() override; void save() override; diff --git a/src/settings/kcm/kcmdolphinviewmodes.cpp b/src/settings/kcm/kcmdolphinviewmodes.cpp index 50ee13618..7fcc35ac5 100644 --- a/src/settings/kcm/kcmdolphinviewmodes.cpp +++ b/src/settings/kcm/kcmdolphinviewmodes.cpp @@ -8,6 +8,7 @@ #include "settings/viewmodes/viewsettingstab.h" +#include <KCModule> #include <KLocalizedString> #include <KPluginFactory> @@ -19,16 +20,16 @@ K_PLUGIN_CLASS_WITH_JSON(DolphinViewModesConfigModule, "kcmdolphinviewmodes.json") -DolphinViewModesConfigModule::DolphinViewModesConfigModule(QWidget *parent, const QVariantList &args) - : KCModule(parent, args) +DolphinViewModesConfigModule::DolphinViewModesConfigModule(QObject *parent, const KPluginMetaData &data) + : KCModule(parent, data) , m_tabs() { setButtons(KCModule::Default | KCModule::Help | KCModule::Apply); - QVBoxLayout *topLayout = new QVBoxLayout(this); + QVBoxLayout *topLayout = new QVBoxLayout(widget()); topLayout->setContentsMargins(0, 0, 0, 0); - QTabWidget *tabWidget = new QTabWidget(this); + QTabWidget *tabWidget = new QTabWidget(widget()); // Initialize 'Icons' tab ViewSettingsTab *iconsTab = new ViewSettingsTab(ViewSettingsTab::IconsMode, tabWidget); diff --git a/src/settings/kcm/kcmdolphinviewmodes.h b/src/settings/kcm/kcmdolphinviewmodes.h index 33c0b77a5..59cbca314 100644 --- a/src/settings/kcm/kcmdolphinviewmodes.h +++ b/src/settings/kcm/kcmdolphinviewmodes.h @@ -19,7 +19,7 @@ class DolphinViewModesConfigModule : public KCModule Q_OBJECT public: - DolphinViewModesConfigModule(QWidget *parent, const QVariantList &args); + DolphinViewModesConfigModule(QObject *parent, const KPluginMetaData &data); ~DolphinViewModesConfigModule() override; void save() override; diff --git a/src/settings/serviceitemdelegate.cpp b/src/settings/serviceitemdelegate.cpp index d8f446a37..d95ca7918 100644 --- a/src/settings/serviceitemdelegate.cpp +++ b/src/settings/serviceitemdelegate.cpp @@ -60,7 +60,7 @@ QList<QWidget *> ServiceItemDelegate::createItemWidgets(const QModelIndex &) con return {checkBox, configureButton}; } -void ServiceItemDelegate::updateItemWidgets(const QList<QWidget *> widgets, const QStyleOptionViewItem &option, const QPersistentModelIndex &index) const +void ServiceItemDelegate::updateItemWidgets(const QList<QWidget *> &widgets, const QStyleOptionViewItem &option, const QPersistentModelIndex &index) const { QCheckBox *checkBox = static_cast<QCheckBox *>(widgets[0]); QPushButton *configureButton = static_cast<QPushButton *>(widgets[1]); diff --git a/src/settings/serviceitemdelegate.h b/src/settings/serviceitemdelegate.h index 74f7dfd6a..d7b243878 100644 --- a/src/settings/serviceitemdelegate.h +++ b/src/settings/serviceitemdelegate.h @@ -29,7 +29,7 @@ public: QList<QWidget *> createItemWidgets(const QModelIndex &) const override; - void updateItemWidgets(const QList<QWidget *> widgets, const QStyleOptionViewItem &option, const QPersistentModelIndex &index) const override; + void updateItemWidgets(const QList<QWidget *> &widgets, const QStyleOptionViewItem &option, const QPersistentModelIndex &index) const override; Q_SIGNALS: void requestServiceConfiguration(const QModelIndex &index); diff --git a/src/settings/startup/startupsettingspage.cpp b/src/settings/startup/startupsettingspage.cpp index 689b43cfb..62905021e 100644 --- a/src/settings/startup/startupsettingspage.cpp +++ b/src/settings/startup/startupsettingspage.cpp @@ -135,7 +135,7 @@ void StartupSettingsPage::applySettings() const QUrl url(QUrl::fromUserInput(m_homeUrl->text(), QString(), QUrl::AssumeLocalFile)); if (url.isValid() && KProtocolManager::supportsListing(url)) { - KIO::StatJob *job = KIO::statDetails(url, KIO::StatJob::SourceSide, KIO::StatDetail::StatBasic, KIO::JobFlag::HideProgressInfo); + KIO::StatJob *job = KIO::stat(url, KIO::StatJob::SourceSide, KIO::StatDetail::StatBasic, KIO::JobFlag::HideProgressInfo); connect(job, &KJob::result, this, [this, settings, url](KJob *job) { if (job->error() == 0 && qobject_cast<KIO::StatJob *>(job)->statResult().isDir()) { settings->setHomeUrl(url.toDisplayString(QUrl::PreferLocalFile)); diff --git a/src/settings/trash/trashsettingspage.cpp b/src/settings/trash/trashsettingspage.cpp index 511d6b353..d21b4833e 100644 --- a/src/settings/trash/trashsettingspage.cpp +++ b/src/settings/trash/trashsettingspage.cpp @@ -6,7 +6,8 @@ #include "trashsettingspage.h" -#include <KCModuleProxy> +#include <KCModuleLoader> +#include <KCModule> #include <KPluginMetaData> #include <QFormLayout> @@ -16,12 +17,13 @@ TrashSettingsPage::TrashSettingsPage(QWidget *parent) { QFormLayout *topLayout = new QFormLayout(this); - m_proxy = new KCModuleProxy(KPluginMetaData(QStringLiteral("kcm_trash"))); - topLayout->addRow(m_proxy); + m_kcm = KCModuleLoader::loadModule(KPluginMetaData(QStringLiteral("kcm_trash"))); + + topLayout->addRow(m_kcm->widget()); loadSettings(); - connect(m_proxy, &KCModuleProxy::changed, this, &TrashSettingsPage::changed); + connect(m_kcm, &KCModule::needsSaveChanged, this, &TrashSettingsPage::changed); } TrashSettingsPage::~TrashSettingsPage() @@ -30,15 +32,15 @@ TrashSettingsPage::~TrashSettingsPage() void TrashSettingsPage::applySettings() { - m_proxy->save(); + m_kcm->save(); } void TrashSettingsPage::restoreDefaults() { - m_proxy->defaults(); + m_kcm->defaults(); } void TrashSettingsPage::loadSettings() { - m_proxy->load(); + m_kcm->load(); } diff --git a/src/settings/trash/trashsettingspage.h b/src/settings/trash/trashsettingspage.h index b0e48a018..a5253774c 100644 --- a/src/settings/trash/trashsettingspage.h +++ b/src/settings/trash/trashsettingspage.h @@ -8,7 +8,7 @@ #include "settings/settingspagebase.h" -class KCModuleProxy; +class KCModule; /** * @brief Tab page for the 'Trash' settings of the Dolphin settings dialog, it uses the KCM. @@ -29,7 +29,7 @@ public: private: void loadSettings(); - KCModuleProxy *m_proxy; + KCModule *m_kcm; }; #endif diff --git a/src/settings/userfeedback/userfeedbacksettingspage.cpp b/src/settings/userfeedback/userfeedbacksettingspage.cpp index e51f2e41a..ea8335474 100644 --- a/src/settings/userfeedback/userfeedbacksettingspage.cpp +++ b/src/settings/userfeedback/userfeedbacksettingspage.cpp @@ -7,8 +7,8 @@ #include "userfeedbacksettingspage.h" #include "userfeedback/dolphinfeedbackprovider.h" -#include <KUserFeedback/FeedbackConfigWidget> -#include <KUserFeedback/Provider> +#include <KUserFeedbackQt6/FeedbackConfigWidget> +#include <KUserFeedbackQt6/Provider> #include <QVBoxLayout> |
