]> cloud.milkyroute.net Git - dolphin.git/commitdiff
Port away from deprecated KNewStuff API
authorAhmad Samir <a.samirh78@gmail.com>
Fri, 6 May 2022 15:36:12 +0000 (17:36 +0200)
committerAhmad Samir <a.samirh78@gmail.com>
Tue, 31 May 2022 14:25:13 +0000 (14:25 +0000)
src/CMakeLists.txt
src/settings/contextmenu/contextmenusettingspage.cpp

index 7b3ef98fcf8020ada6a09f38f3d41301f3fa0ecb..ce0ba9716364d07c979758a27e2ce00225740358 100644 (file)
@@ -155,6 +155,7 @@ target_link_libraries(
     KF5::TextWidgets
     KF5::ConfigCore
     KF5::NewStuff
+    KF5::NewStuffWidgets    # KNSWidgets::Button
     KF5::Parts
     KF5::WindowSystem
     KF5::WidgetsAddons
index 2d6c9279afdfb3b1b3d2c12c432f4e51d4e05c36..548e3e049c9a9f869d081fb457e2d607f653694c 100644 (file)
 #include <KFileUtils>
 #include <KLocalizedString>
 #include <KMessageBox>
-#include <KNS3/Button>
 #include <KPluginMetaData>
 #include <KService>
 #include <KServiceTypeTrader>
-
 #include <kio_version.h>
 
+#include <QtGlobal>
+#include <knewstuff_version.h>
+#if KNEWSTUFF_VERSION >= QT_VERSION_CHECK(5, 91, 0)
+#include <KNSWidgets/Button>
+#else
+#include <KNS3/Button>
+#endif
+
 #include <QGridLayout>
 #include <QLabel>
 #include <QListWidget>
@@ -89,17 +95,22 @@ ContextMenuSettingsPage::ContextMenuSettingsPage(QWidget* parent,
     topLayout->addWidget(m_listView);
 
 #ifndef Q_OS_WIN
-    auto *downloadButton = new KNS3::Button(i18nc("@action:button", "Download New Services..."),
-                                                  QStringLiteral("servicemenu.knsrc"),
-                                                  this);
-    connect(downloadButton, &KNS3::Button::dialogFinished, this, [this](const KNS3::Entry::List &changedEntries) {
+#if KNEWSTUFF_VERSION >= QT_VERSION_CHECK(5, 91, 0)
+    using NewStuffButton = KNSWidgets::Button;
+#else
+    using NewStuffButton = KNS3::Button;
+#endif // KNEWSTUFF_VERSION
+    auto *downloadButton = new NewStuffButton(i18nc("@action:button", "Download New Services..."),
+                                              QStringLiteral("servicemenu.knsrc"),
+                                              this);
+    connect(downloadButton, &NewStuffButton::dialogFinished, this, [this](const auto &changedEntries) {
            if (!changedEntries.isEmpty()) {
                m_serviceModel->clear();
                loadServices();
            }
     });
     topLayout->addWidget(downloadButton);
-#endif
+#endif // Q_OS_WIN
 
     m_enabledVcsPlugins = VersionControlSettings::enabledPlugins();
     std::sort(m_enabledVcsPlugins.begin(), m_enabledVcsPlugins.end());