diff --git a/CMakeLists.txt b/CMakeLists.txt
index a8e396b57c..4fbcdbee0d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,7 +11,7 @@ option(KWIN_BUILD_SCRIPTING "Enable building of KWin with scripting support" ON)
option(KWIN_BUILD_KAPPMENU "Enable building of KWin with application menu support" ON)
option(KWIN_BUILD_XRENDER_COMPOSITING "Enable building of KWin with XRender Compositing support" ON)
option(KWIN_BUILD_OPENGL_1_COMPOSITING "Enable support for OpenGL 1.x, automatically disabled when building for OpenGL ES 2.0" ON)
-option(KWIN_BUILD_ACTIVITIES "Enable building of KWin with kactivities support" OFF)
+cmake_dependent_option(KWIN_BUILD_ACTIVITIES "Enable building of KWin with kactivities support" ON "KActivities_FOUND" OFF)
option(KWIN_PLASMA_ACTIVE "Enable building KWin for Plasma Active." OFF)
# Binary name of KWin
@@ -308,7 +308,7 @@ if(KWIN_BUILD_SCRIPTING)
endif()
if(KWIN_BUILD_ACTIVITIES)
- set(kwin_KDE_LIBS ${kwin_KDE_LIBS} ${KACTIVITIES_LIBRARY})
+ set(kwin_KDE_LIBS ${kwin_KDE_LIBS} KF5::KActivities)
endif()
if(OPENGL_EGL_FOUND)
diff --git a/activities.cpp b/activities.cpp
index 96f583323a..85c963a0eb 100644
--- a/activities.cpp
+++ b/activities.cpp
@@ -23,7 +23,6 @@ along with this program. If not, see .
#include "workspace.h"
// KDE
#include
-#include
#include
// Qt
#include
@@ -221,14 +220,14 @@ typedef QPair CurrentAndList;
static AssignedList
fetchActivityList(KActivities::Controller *controller, QStringList *target, bool running) // could be member function, but actually it's much simpler this way
{
- return AssignedList(target, running ? controller->listActivities(KActivities::Info::Running) :
- controller->listActivities());
+ return AssignedList(target, running ? controller->activities(KActivities::Info::Running) :
+ controller->activities());
}
static CurrentAndList
fetchActivityListAndCurrent(KActivities::Controller *controller)
{
- QStringList l = controller->listActivities();
+ QStringList l = controller->activities();
QString c = controller->currentActivity();
return CurrentAndList(c, l);
}
diff --git a/kcmkwin/kwinrules/CMakeLists.txt b/kcmkwin/kwinrules/CMakeLists.txt
index 9ac8aa491f..9c63f821ed 100644
--- a/kcmkwin/kwinrules/CMakeLists.txt
+++ b/kcmkwin/kwinrules/CMakeLists.txt
@@ -28,6 +28,10 @@ set(kcm_libs
${X11_LIBRARIES}
)
+if(KWIN_BUILD_ACTIVITIES)
+ set(kcm_libs ${kcm_libs} KF5::KActivities)
+endif()
+
target_link_libraries(kdeinit_kwin_rules_dialog ${kcm_libs} ${kwin_kcm_rules_XCB_LIBS})
install(TARGETS kdeinit_kwin_rules_dialog ${INSTALL_TARGETS_DEFAULT_ARGS} )
diff --git a/kcmkwin/kwinrules/ruleswidget.cpp b/kcmkwin/kwinrules/ruleswidget.cpp
index ea334c5082..7d5991f574 100644
--- a/kcmkwin/kwinrules/ruleswidget.cpp
+++ b/kcmkwin/kwinrules/ruleswidget.cpp
@@ -31,7 +31,7 @@
#include
#ifdef KWIN_BUILD_ACTIVITIES
-#include
+#include
#endif
#include
@@ -152,8 +152,9 @@ RulesWidget::RulesWidget(QWidget* parent)
#ifdef KWIN_BUILD_ACTIVITIES
static KActivities::Consumer activities;
- foreach (const QString & activityId, activities.listActivities()) {
- activity->addItem(KActivities::Info::name(activityId), activityId);
+ foreach (const QString & activityId, activities.activities()) {
+ const KActivities::Info info(activityId);
+ activity->addItem(info.name(), activityId);
}
// cloned from kactivities/src/lib/core/consumer.cpp
#define NULL_UUID "00000000-0000-0000-0000-000000000000"
diff --git a/useractions.cpp b/useractions.cpp
index 3beff723f0..f858003062 100755
--- a/useractions.cpp
+++ b/useractions.cpp
@@ -71,6 +71,7 @@ along with this program. If not, see .
#include
#include
#include
+#include
#include
#include "killwindow.h"