diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 7b3ef98fcf..ce0ba97163 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -155,6 +155,7 @@ target_link_libraries( KF5::TextWidgets KF5::ConfigCore KF5::NewStuff + KF5::NewStuffWidgets # KNSWidgets::Button KF5::Parts KF5::WindowSystem KF5::WidgetsAddons diff --git a/src/settings/contextmenu/contextmenusettingspage.cpp b/src/settings/contextmenu/contextmenusettingspage.cpp index 2d6c9279af..548e3e049c 100644 --- a/src/settings/contextmenu/contextmenusettingspage.cpp +++ b/src/settings/contextmenu/contextmenusettingspage.cpp @@ -18,13 +18,19 @@ #include #include #include -#include #include #include #include - #include +#include +#include +#if KNEWSTUFF_VERSION >= QT_VERSION_CHECK(5, 91, 0) +#include +#else +#include +#endif + #include #include #include @@ -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());