diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2735250b..18caf7f2 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -80,12 +80,6 @@ set_package_properties(Wayland PROPERTIES DESCRIPTION "The Wayland Client and Se
PURPOSE "Required for building KWin with Wayland support"
)
-find_package(KActivities 6.0.0 CONFIG)
-set_package_properties(KActivities PROPERTIES DESCRIPTION "Interface library for the activity manager"
- URL "https://projects.kde.org/kactivities"
- TYPE REQUIRED
- )
-
if(Q_WS_X11)
find_package(XCB REQUIRED)
set_package_properties(XCB PROPERTIES DESCRIPTION "X protocol C-language Binding"
@@ -204,7 +198,7 @@ configure_file(config-workspace.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-works
add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS} -DHAVE_CONFIG_H=1)
add_definitions(-DQT_USE_FAST_CONCATENATION -DQT_USE_FAST_OPERATOR_PLUS)
-include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES} ${KACTIVITIES_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/libs)
+include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_BINARY_DIR} ${KDE4_INCLUDES} ${CMAKE_SOURCE_DIR}/libs)
# libs
add_subdirectory(cmake)
diff --git a/kwin/CMakeLists.txt b/kwin/CMakeLists.txt
index 75b8dd97..fd4b2f5b 100644
--- a/kwin/CMakeLists.txt
+++ b/kwin/CMakeLists.txt
@@ -10,7 +10,6 @@ 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" ON)
if(${KDE_PLATFORM_PROFILE} STREQUAL "Desktop")
OPTION(KWIN_PLASMA_ACTIVE "Enable building KWin for Plasma Active." OFF)
else()
@@ -184,13 +183,6 @@ if(KWIN_BUILD_KAPPMENU)
)
endif()
-if(KWIN_BUILD_ACTIVITIES)
- set(
- kwin_KDEINIT_SRCS ${kwin_KDEINIT_SRCS}
- activities.cpp
- )
-endif()
-
if(KWIN_HAVE_EGL)
set(kwin_KDEINIT_SRCS ${kwin_KDEINIT_SRCS} eglonxbackend.cpp)
endif()
@@ -274,11 +266,6 @@ if(KWIN_BUILD_SCRIPTING)
set(kwin_QT_LIBS ${kwin_QT_LIBS} ${QT_QTSCRIPT_LIBRARY})
endif()
-if(KWIN_BUILD_ACTIVITIES)
- set(kwin_KDE_LIBS ${kwin_KDE_LIBS} ${KACTIVITIES_LIBRARIES})
- include_directories(${KACTIVITIES_INCLUDE_DIR})
-endif()
-
if(OPENGL_EGL_FOUND)
set(kwin_OPENGL_LIBS ${kwin_OPENGL_LIBS} ${OPENGLES_EGL_LIBRARY})
endif()
diff --git a/kwin/activation.cpp b/kwin/activation.cpp
index 2a95d3fe..a7687298 100644
--- a/kwin/activation.cpp
+++ b/kwin/activation.cpp
@@ -31,9 +31,6 @@ along with this program. If not, see .
#include "focuschain.h"
#include "netinfo.h"
#include "workspace.h"
-#ifdef KWIN_BUILD_ACTIVITIES
-#include "activities.h"
-#endif
#include
#include
@@ -302,14 +299,6 @@ void Workspace::activateClient(Client* c, bool force)
VirtualDesktopManager::self()->setCurrent(c->desktop());
--block_focus;
}
-#ifdef KWIN_BUILD_ACTIVITIES
- if (!c->isOnCurrentActivity()) {
- ++block_focus;
- //DBUS!
- Activities::self()->setCurrent(c->activities().first()); //first isn't necessarily best, but it's easiest
- --block_focus;
- }
-#endif
if (c->isMinimized())
c->unminimize();
diff --git a/kwin/activities.cpp b/kwin/activities.cpp
deleted file mode 100644
index e6f83533..00000000
--- a/kwin/activities.cpp
+++ /dev/null
@@ -1,286 +0,0 @@
-/********************************************************************
- KWin - the KDE window manager
- This file is part of the KDE project.
-
-Copyright (C) 2013 Martin Gräßlin
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see .
-*********************************************************************/
-#include "activities.h"
-// KWin
-#include "client.h"
-#include "workspace.h"
-// KDE
-#include
-#include
-#include
-#include
-// Qt
-#include
-#include
-#include
-#include
-
-namespace KWin
-{
-
-KWIN_SINGLETON_FACTORY(Activities)
-
-Activities::Activities(QObject *parent)
- : QObject(parent)
- , m_controller(new KActivities::Controller(this))
-{
- connect(m_controller, SIGNAL(activityRemoved(QString)), SLOT(slotRemoved(QString)));
- connect(m_controller, SIGNAL(activityRemoved(QString)), SIGNAL(removed(QString)));
- connect(m_controller, SIGNAL(activityAdded(QString)), SLOT(slotAdded(QString)));
- connect(m_controller, SIGNAL(activityAdded(QString)), SIGNAL(added(QString)));
- connect(m_controller, SIGNAL(currentActivityChanged(QString)), SLOT(slotCurrentChanged(QString)));
-}
-
-Activities::~Activities()
-{
- s_self = NULL;
-}
-
-void Activities::setCurrent(const QString &activity)
-{
- m_controller->setCurrentActivity(activity);
-}
-
-void Activities::slotCurrentChanged(const QString &newActivity)
-{
- if (m_current == newActivity) {
- return;
- }
- m_previous = m_current;
- m_current = newActivity;
- emit currentChanged(newActivity);
-}
-
-void Activities::slotAdded(const QString &activity)
-{
- m_all << activity;
-}
-
-void Activities::slotRemoved(const QString &activity)
-{
- m_all.removeOne(activity);
- foreach (Client * client, Workspace::self()->clientList()) {
- client->setOnActivity(activity, false);
- }
- //toss out any session data for it
- KConfigGroup cg(KGlobal::config(), QString("SubSession: ") + activity);
- cg.deleteGroup();
-}
-
-void Activities::toggleClientOnActivity(Client* c, const QString &activity, bool dont_activate)
-{
- //int old_desktop = c->desktop();
- bool was_on_activity = c->isOnActivity(activity);
- bool was_on_all = c->isOnAllActivities();
- //note: all activities === no activities
- bool enable = was_on_all || !was_on_activity;
- c->setOnActivity(activity, enable);
- if (c->isOnActivity(activity) == was_on_activity && c->isOnAllActivities() == was_on_all) // No change
- return;
-
- Workspace *ws = Workspace::self();
- if (c->isOnCurrentActivity()) {
- if (c->wantsTabFocus() && options->focusPolicyIsReasonable() &&
- !was_on_activity && // for stickyness changes
- //FIXME not sure if the line above refers to the correct activity
- !dont_activate)
- ws->requestFocus(c);
- else
- ws->restackClientUnderActive(c);
- } else
- ws->raiseClient(c);
-
- //notifyWindowDesktopChanged( c, old_desktop );
-
- ClientList transients_stacking_order = ws->ensureStackingOrder(c->transients());
- for (ClientList::ConstIterator it = transients_stacking_order.constBegin();
- it != transients_stacking_order.constEnd();
- ++it)
- toggleClientOnActivity(*it, activity, dont_activate);
- ws->updateClientArea();
-}
-
-bool Activities::start(const QString &id)
-{
- Workspace *ws = Workspace::self();
- if (ws->sessionSaving()) {
- return false; //ksmserver doesn't queue requests (yet)
- }
-
- if (!m_all.contains(id)) {
- return false; //bogus id
- }
-
- ws->loadSubSessionInfo(id);
-
- QDBusInterface ksmserver("org.kde.ksmserver", "/KSMServer", "org.kde.KSMServerInterface");
- if (ksmserver.isValid()) {
- ksmserver.asyncCall("restoreSubSession", id);
- } else {
- kDebug(1212) << "couldn't get ksmserver interface";
- return false;
- }
- return true;
-}
-
-bool Activities::stop(const QString &id)
-{
- if (Workspace::self()->sessionSaving()) {
- return false; //ksmserver doesn't queue requests (yet)
- //FIXME what about session *loading*?
- }
-
- //ugly hack to avoid dbus deadlocks
- update(true, false);
- QMetaObject::invokeMethod(this, "reallyStop", Qt::QueuedConnection, Q_ARG(QString, id));
- //then lie and assume it worked.
- return true;
-}
-
-void Activities::reallyStop(const QString &id)
-{
- Workspace *ws = Workspace::self();
- if (ws->sessionSaving())
- return; //ksmserver doesn't queue requests (yet)
-
- kDebug(1212) << id;
-
- QSet saveSessionIds;
- QSet dontCloseSessionIds;
- const ClientList &clients = ws->clientList();
- for (ClientList::const_iterator it = clients.constBegin(); it != clients.constEnd(); ++it) {
- const Client* c = (*it);
- const QByteArray sessionId = c->sessionId();
- if (sessionId.isEmpty()) {
- continue; //TODO support old wm_command apps too?
- }
-
- //kDebug() << sessionId;
-
- //if it's on the activity that's closing, it needs saving
- //but if a process is on some other open activity, I don't wanna close it yet
- //this is, of course, complicated by a process having many windows.
- if (c->isOnAllActivities()) {
- dontCloseSessionIds << sessionId;
- continue;
- }
-
- const QStringList activities = c->activities();
- foreach (const QString & activityId, activities) {
- if (activityId == id) {
- saveSessionIds << sessionId;
- } else if (m_running.contains(activityId)) {
- dontCloseSessionIds << sessionId;
- }
- }
- }
-
- ws->storeSubSession(id, saveSessionIds);
-
- QStringList saveAndClose;
- QStringList saveOnly;
- foreach (const QByteArray & sessionId, saveSessionIds) {
- if (dontCloseSessionIds.contains(sessionId)) {
- saveOnly << sessionId;
- } else {
- saveAndClose << sessionId;
- }
- }
-
- kDebug(1212) << "saveActivity" << id << saveAndClose << saveOnly;
-
- //pass off to ksmserver
- QDBusInterface ksmserver("org.kde.ksmserver", "/KSMServer", "org.kde.KSMServerInterface");
- if (ksmserver.isValid()) {
- ksmserver.asyncCall("saveSubSession", id, saveAndClose, saveOnly);
- } else {
- kDebug(1212) << "couldn't get ksmserver interface";
- }
-}
-
-//BEGIN threaded activity list fetching
-typedef QPair AssignedList;
-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());
-}
-
-static CurrentAndList
-fetchActivityListAndCurrent(KActivities::Controller *controller)
-{
- QStringList l = controller->listActivities();
- QString c = controller->currentActivity();
- return CurrentAndList(c, l);
-}
-
-void Activities::update(bool running, bool updateCurrent, QObject *target, QString slot)
-{
- if (updateCurrent) {
- QFutureWatcher* watcher = new QFutureWatcher;
- connect( watcher, SIGNAL(finished()), SLOT(handleReply()) );
- if (!slot.isEmpty()) {
- watcher->setProperty("activityControllerCallback", slot); // "activity reply trigger"
- watcher->setProperty("activityControllerCallbackTarget", qVariantFromValue((void*)target));
- }
- watcher->setFuture(QtConcurrent::run(fetchActivityListAndCurrent, m_controller));
- } else {
- QFutureWatcher* watcher = new QFutureWatcher;
- connect(watcher, SIGNAL(finished()), SLOT(handleReply()));
- if (!slot.isEmpty()) {
- watcher->setProperty("activityControllerCallback", slot); // "activity reply trigger"
- watcher->setProperty("activityControllerCallbackTarget", qVariantFromValue((void*)target));
- }
- QStringList *target = running ? &m_running : &m_all;
- watcher->setFuture(QtConcurrent::run(fetchActivityList, m_controller, target, running));
- }
-}
-
-void Activities::handleReply()
-{
- QObject *watcherObject = 0;
- if (QFutureWatcher* watcher = dynamic_cast< QFutureWatcher* >(sender())) {
- // we carry over the to-be-updated StringList member as pointer in the threaded return
- *(watcher->result().first) = watcher->result().second;
- watcherObject = watcher;
- }
-
- if (!watcherObject) {
- if (QFutureWatcher* watcher = dynamic_cast< QFutureWatcher* >(sender())) {
- m_all = watcher->result().second;
- slotCurrentChanged(watcher->result().first);
- watcherObject = watcher;
- }
- }
-
- if (watcherObject) {
- QString slot = watcherObject->property("activityControllerCallback").toString();
- QObject *target = static_cast(watcherObject->property("activityControllerCallbackTarget").value());
- watcherObject->deleteLater(); // has done it's job
- if (!slot.isEmpty())
- QMetaObject::invokeMethod(target, slot.toAscii().data(), Qt::DirectConnection);
- }
-}
-//END threaded activity list fetching
-
-} // namespace
diff --git a/kwin/activities.h b/kwin/activities.h
deleted file mode 100644
index 87176116..00000000
--- a/kwin/activities.h
+++ /dev/null
@@ -1,130 +0,0 @@
-/********************************************************************
- KWin - the KDE window manager
- This file is part of the KDE project.
-
-Copyright (C) 2013 Martin Gräßlin
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 2 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see .
-*********************************************************************/
-#ifndef KWIN_ACTIVITIES_H
-#define KWIN_ACTIVITIES_H
-
-#include
-
-#include
-#include
-
-namespace KActivities {
-class Controller;
-}
-
-namespace KWin
-{
-class Client;
-
-class Activities : public QObject
-{
- Q_OBJECT
-
-public:
- ~Activities();
-
- bool stop(const QString &id);
- bool start(const QString &id);
- void update(bool running, bool updateCurrent, QObject *target = NULL, QString slot = QString());
- void setCurrent(const QString &activity);
- /**
- * Adds/removes client \a c to/from \a activity.
- *
- * Takes care of transients as well.
- */
- void toggleClientOnActivity(Client* c, const QString &activity, bool dont_activate);
-
- const QStringList &running() const;
- const QStringList &all() const;
- const QString ¤t() const;
- const QString &previous() const;
-
- static QString nullUuid();
-
-Q_SIGNALS:
- /**
- * This signal is emitted when the global
- * activity is changed
- * @param id id of the new current activity
- */
- void currentChanged(const QString &id);
- /**
- * This signal is emitted when a new activity is added
- * @param id id of the new activity
- */
- void added(const QString &id);
- /**
- * This signal is emitted when the activity
- * is removed
- * @param id id of the removed activity
- */
- void removed(const QString &id);
-
-private Q_SLOTS:
- void slotRemoved(const QString &activity);
- void slotAdded(const QString &activity);
- void slotCurrentChanged(const QString &newActivity);
- void reallyStop(const QString &id); //dbus deadlocks suck
- void handleReply();
-
-private:
- QStringList m_running;
- QStringList m_all;
- QString m_current;
- QString m_previous;
- KActivities::Controller *m_controller;
-
- KWIN_SINGLETON(Activities)
-};
-
-inline
-const QStringList &Activities::all() const
-{
- return m_all;
-}
-
-inline
-const QString &Activities::current() const
-{
- return m_current;
-}
-
-inline
-const QString &Activities::previous() const
-{
- return m_previous;
-}
-
-inline
-const QStringList &Activities::running() const
-{
- return m_running;
-}
-
-inline
-QString Activities::nullUuid()
-{
- // cloned from kactivities/src/lib/core/consumer.cpp
- return QString("00000000-0000-0000-0000-000000000000");
-}
-
-}
-
-#endif // KWIN_ACTIVITIES_H
diff --git a/kwin/client.cpp b/kwin/client.cpp
index fa52acee..79a32c77 100644
--- a/kwin/client.cpp
+++ b/kwin/client.cpp
@@ -21,9 +21,6 @@ along with this program. If not, see .
// own
#include "client.h"
// kwin
-#ifdef KWIN_BUILD_ACTIVITIES
-#include "activities.h"
-#endif
#ifdef KWIN_BUILD_KAPPMENU
#include "appmenu.h"
#endif
@@ -1501,22 +1498,8 @@ void Client::setDesktop(int desktop)
*/
void Client::setOnActivity(const QString &activity, bool enable)
{
-#ifdef KWIN_BUILD_ACTIVITIES
- QStringList newActivitiesList = activities();
- if (newActivitiesList.contains(activity) == enable) //nothing to do
- return;
- if (enable) {
- QStringList allActivities = Activities::self()->all();
- if (!allActivities.contains(activity)) //bogus ID
- return;
- newActivitiesList.append(activity);
- } else
- newActivitiesList.removeOne(activity);
- setOnActivities(newActivitiesList);
-#else
Q_UNUSED(activity)
Q_UNUSED(enable)
-#endif
}
/**
@@ -1524,33 +1507,7 @@ void Client::setOnActivity(const QString &activity, bool enable)
*/
void Client::setOnActivities(QStringList newActivitiesList)
{
-#ifdef KWIN_BUILD_ACTIVITIES
- QString joinedActivitiesList = newActivitiesList.join(",");
- joinedActivitiesList = rules()->checkActivity(joinedActivitiesList, false);
- newActivitiesList = joinedActivitiesList.split(',', QString::SkipEmptyParts);
-
- QStringList allActivities = Activities::self()->all();
- if ( newActivitiesList.isEmpty() ||
- (newActivitiesList.count() > 1 && newActivitiesList.count() == allActivities.count()) ||
- (newActivitiesList.count() == 1 && newActivitiesList.at(0) == Activities::nullUuid())) {
- activityList.clear();
- const QByteArray nullUuid = Activities::nullUuid().toUtf8();
- XChangeProperty(display(), window(), atoms->activities, XA_STRING, 8,
- PropModeReplace, (const unsigned char *)nullUuid.constData(), nullUuid.length());
-
- } else {
- QByteArray joined = joinedActivitiesList.toAscii();
- char *data = joined.data();
- activityList = newActivitiesList;
- XChangeProperty(display(), window(), atoms->activities, XA_STRING, 8,
- PropModeReplace, (unsigned char *)data, joined.size());
-
- }
-
- updateActivities(false);
-#else
Q_UNUSED(newActivitiesList)
-#endif
}
void Client::blockActivityUpdates(bool b)
@@ -1633,16 +1590,6 @@ void Client::setOnAllDesktops(bool b)
*/
void Client::setOnAllActivities(bool on)
{
-#ifdef KWIN_BUILD_ACTIVITIES
- if (on == isOnAllActivities())
- return;
- if (on) {
- setOnActivities(QStringList());
-
- } else {
- setOnActivity(Activities::self()->current(), true);
- }
-#endif
}
/**
@@ -2377,47 +2324,6 @@ QPixmap* kwin_get_menu_pix_hack()
void Client::checkActivities()
{
-#ifdef KWIN_BUILD_ACTIVITIES
- QStringList newActivitiesList;
- QByteArray prop = getStringProperty(window(), atoms->activities);
- activitiesDefined = !prop.isEmpty();
- if (prop == Activities::nullUuid()) {
- //copied from setOnAllActivities to avoid a redundant XChangeProperty.
- if (!activityList.isEmpty()) {
- activityList.clear();
- updateActivities(true);
- }
- return;
- }
- if (prop.isEmpty()) {
- //note: this makes it *act* like it's on all activities but doesn't set the property to 'ALL'
- if (!activityList.isEmpty()) {
- activityList.clear();
- updateActivities(true);
- }
- return;
- }
-
- newActivitiesList = QString(prop).split(',');
-
- if (newActivitiesList == activityList)
- return; //expected change, it's ok.
-
- //otherwise, somebody else changed it. we need to validate before reacting
- QStringList allActivities = Activities::self()->all();
- if (allActivities.isEmpty()) {
- kDebug() << "no activities!?!?";
- //don't touch anything, there's probably something bad going on and we don't wanna make it worse
- return;
- }
- for (int i = 0; i < newActivitiesList.size(); ++i) {
- if (! allActivities.contains(newActivitiesList.at(i))) {
- kDebug() << "invalid:" << newActivitiesList.at(i);
- newActivitiesList.removeAt(i--);
- }
- }
- setOnActivities(newActivitiesList);
-#endif
}
void Client::setSessionInteract(bool needed)
diff --git a/kwin/config-kwin.h.cmake b/kwin/config-kwin.h.cmake
index 3dbd146b..01fd38ea 100644
--- a/kwin/config-kwin.h.cmake
+++ b/kwin/config-kwin.h.cmake
@@ -4,7 +4,6 @@
#cmakedefine KWIN_BUILD_SCREENEDGES 1
#cmakedefine KWIN_BUILD_SCRIPTING 1
#cmakedefine KWIN_BUILD_KAPPMENU 1
-#cmakedefine KWIN_BUILD_ACTIVITIES 1
#cmakedefine KWIN_BUILD_OXYGEN 1
#define KWIN_NAME "${KWIN_NAME}"
#define KWIN_CONFIG "${KWIN_NAME}rc"
diff --git a/kwin/dbusinterface.cpp b/kwin/dbusinterface.cpp
index 10ea3f2f..7c4cdfa8 100644
--- a/kwin/dbusinterface.cpp
+++ b/kwin/dbusinterface.cpp
@@ -30,9 +30,6 @@ along with this program. If not, see .
#include "kwinadaptor.h"
#include "workspace.h"
#include "virtualdesktops.h"
-#ifdef KWIN_BUILD_ACTIVITIES
-#include "activities.h"
-#endif
// Qt
#include
@@ -131,20 +128,12 @@ WRAP(bool, waitForCompositingSetup)
bool DBusInterface::startActivity(const QString &in0)
{
-#ifdef KWIN_BUILD_ACTIVITIES
- return Activities::self()->start(in0);
-#else
return false;
-#endif
}
bool DBusInterface::stopActivity(const QString &in0)
{
-#ifdef KWIN_BUILD_ACTIVITIES
- return Activities::self()->stop(in0);
-#else
return false;
-#endif
}
void DBusInterface::doNotManage(const QString &name)
diff --git a/kwin/effects.cpp b/kwin/effects.cpp
index e2b0e9f1..12d69f51 100644
--- a/kwin/effects.cpp
+++ b/kwin/effects.cpp
@@ -22,9 +22,6 @@ along with this program. If not, see .
#include "effects.h"
#include "effectsadaptor.h"
-#ifdef KWIN_BUILD_ACTIVITIES
-#include "activities.h"
-#endif
#include "decorations.h"
#include "deleted.h"
#include "client.h"
@@ -237,12 +234,6 @@ EffectsHandlerImpl::EffectsHandlerImpl(Compositor *compositor, Scene *scene)
connect(Cursor::self(), SIGNAL(mouseChanged(QPoint,QPoint,Qt::MouseButtons,Qt::MouseButtons,Qt::KeyboardModifiers,Qt::KeyboardModifiers)),
SIGNAL(mouseChanged(QPoint,QPoint,Qt::MouseButtons,Qt::MouseButtons,Qt::KeyboardModifiers,Qt::KeyboardModifiers)));
connect(ws, SIGNAL(propertyNotify(long)), this, SLOT(slotPropertyNotify(long)));
-#ifdef KWIN_BUILD_ACTIVITIES
- Activities *activities = Activities::self();
- connect(activities, SIGNAL(added(QString)), SIGNAL(activityAdded(QString)));
- connect(activities, SIGNAL(removed(QString)), SIGNAL(activityRemoved(QString)));
- connect(activities, SIGNAL(currentChanged(QString)), SIGNAL(currentActivityChanged(QString)));
-#endif
connect(ws, SIGNAL(stackingOrderChanged()), SIGNAL(stackingOrderChanged()));
#ifdef KWIN_BUILD_TABBOX
TabBox::TabBox *tabBox = TabBox::TabBox::self();
@@ -922,11 +913,7 @@ void EffectsHandlerImpl::setShowingDesktop(bool showing)
QString EffectsHandlerImpl::currentActivity() const
{
-#ifdef KWIN_BUILD_ACTIVITIES
- return Activities::self()->current();
-#else
return QString();
-#endif
}
int EffectsHandlerImpl::currentDesktop() const
diff --git a/kwin/kcmkwin/kwinrules/CMakeLists.txt b/kwin/kcmkwin/kwinrules/CMakeLists.txt
index 3cfc1dcc..054d4df0 100644
--- a/kwin/kcmkwin/kwinrules/CMakeLists.txt
+++ b/kwin/kcmkwin/kwinrules/CMakeLists.txt
@@ -1,5 +1,3 @@
-include_directories( ${KACTIVITIES_INCLUDE_DIR} )
-
ADD_DEFINITIONS(-DKCMRULES)
########### next target ###############
@@ -18,7 +16,7 @@ set(kwin_kcm_rules_XCB_LIBS
${X11_XCB_LIBRARIES}
)
-target_link_libraries(kdeinit_kwin_rules_dialog ${KDE4_KDEUI_LIBS} ${KDE4_KIO_LIBS} ${X11_LIBRARIES} ${KACTIVITIES_LIBRARIES} ${kwin_kcm_rules_XCB_LIBS})
+target_link_libraries(kdeinit_kwin_rules_dialog ${KDE4_KDEUI_LIBS} ${KDE4_KIO_LIBS} ${X11_LIBRARIES} ${kwin_kcm_rules_XCB_LIBS})
install(TARGETS kdeinit_kwin_rules_dialog ${INSTALL_TARGETS_DEFAULT_ARGS} )
install(TARGETS kwin_rules_dialog DESTINATION ${LIBEXEC_INSTALL_DIR} )
@@ -30,7 +28,7 @@ set(kcm_kwinrules_PART_SRCS kcm.cpp ${kwinrules_SRCS})
kde4_add_plugin(kcm_kwinrules ${kcm_kwinrules_PART_SRCS})
-target_link_libraries(kcm_kwinrules ${KDE4_KDEUI_LIBS} ${KDE4_KIO_LIBS} ${X11_LIBRARIES} ${KACTIVITIES_LIBRARIES} ${kwin_kcm_rules_XCB_LIBS})
+target_link_libraries(kcm_kwinrules ${KDE4_KDEUI_LIBS} ${KDE4_KIO_LIBS} ${X11_LIBRARIES} ${kwin_kcm_rules_XCB_LIBS})
install(TARGETS kcm_kwinrules DESTINATION ${PLUGIN_INSTALL_DIR} )
diff --git a/kwin/kcmkwin/kwinrules/ruleswidget.cpp b/kwin/kcmkwin/kwinrules/ruleswidget.cpp
index b30db540..50157019 100644
--- a/kwin/kcmkwin/kwinrules/ruleswidget.cpp
+++ b/kwin/kcmkwin/kwinrules/ruleswidget.cpp
@@ -28,9 +28,6 @@
#include
#include
-#ifdef KWIN_BUILD_ACTIVITIES
-#include
-#endif
#include
#include
@@ -89,9 +86,6 @@ RulesWidget::RulesWidget(QWidget* parent)
SETUP(size, set);
SETUP(desktop, set);
SETUP(screen, set);
-#ifdef KWIN_BUILD_ACTIVITIES
- SETUP(activity, set);
-#endif
SETUP(maximizehoriz, set);
SETUP(maximizevert, set);
SETUP(minimize, set);
@@ -130,11 +124,9 @@ RulesWidget::RulesWidget(QWidget* parent)
edit_reg_title->hide();
edit_reg_machine->hide();
-#ifndef KWIN_BUILD_ACTIVITIES
rule_activity->hide();
enable_activity->hide();
activity->hide();
-#endif
int i;
for (i = 1;
i <= KWindowSystem::numberOfDesktops();
@@ -142,16 +134,6 @@ RulesWidget::RulesWidget(QWidget* parent)
desktop->addItem(QString::number(i).rightJustified(2) + ':' + KWindowSystem::desktopName(i));
desktop->addItem(i18n("All Desktops"));
-#ifdef KWIN_BUILD_ACTIVITIES
- static KActivities::Consumer activities;
- foreach (const QString & activityId, activities.listActivities()) {
- activity->addItem(KActivities::Info::name(activityId), activityId);
- }
- // cloned from kactivities/src/lib/core/consumer.cpp
- #define NULL_UUID "00000000-0000-0000-0000-000000000000"
- activity->addItem(i18n("All Activities"), QString::fromLatin1(NULL_UUID));
- #undef NULL_UUID
-#endif
}
#undef SETUP
@@ -168,9 +150,6 @@ UPDATE_ENABLE_SLOT(position)
UPDATE_ENABLE_SLOT(size)
UPDATE_ENABLE_SLOT(desktop)
UPDATE_ENABLE_SLOT(screen)
-#ifdef KWIN_BUILD_ACTIVITIES
-UPDATE_ENABLE_SLOT(activity)
-#endif
UPDATE_ENABLE_SLOT(maximizehoriz)
UPDATE_ENABLE_SLOT(maximizevert)
UPDATE_ENABLE_SLOT(minimize)
@@ -288,28 +267,6 @@ int RulesWidget::comboToDesktop(int val) const
return NET::OnAllDesktops;
return val + 1;
}
-#ifdef KWIN_BUILD_ACTIVITIES
-int RulesWidget::activityToCombo(QString d) const
-{
- // TODO: ivan - do a multiselection list
- for (int i = 0; i < activity->count(); i++) {
- if (activity->itemData(i).toString() == d) {
- return i;
- }
- }
-
- return activity->count() - 1; // on all activities
-}
-
-QString RulesWidget::comboToActivity(int val) const
-{
- // TODO: ivan - do a multiselection list
- if (val < 0 || val >= activity->count())
- return QString();
-
- return activity->itemData(val).toString();
-}
-#endif
static int placementToCombo(Placement::Policy placement)
{
static const int conv[] = {
@@ -444,9 +401,6 @@ void RulesWidget::setRules(Rules* rules)
LINEEDIT_SET_RULE(size, sizeToStr);
COMBOBOX_SET_RULE(desktop, desktopToCombo);
SPINBOX_SET_RULE(screen, inc);
-#ifdef KWIN_BUILD_ACTIVITIES
- COMBOBOX_SET_RULE(activity, activityToCombo);
-#endif
CHECKBOX_SET_RULE(maximizehoriz,);
CHECKBOX_SET_RULE(maximizevert,);
CHECKBOX_SET_RULE(minimize,);
@@ -543,9 +497,6 @@ Rules* RulesWidget::rules() const
LINEEDIT_SET_RULE(size, strToSize);
COMBOBOX_SET_RULE(desktop, comboToDesktop);
SPINBOX_SET_RULE(screen, dec);
-#ifdef KWIN_BUILD_ACTIVITIES
- COMBOBOX_SET_RULE(activity, comboToActivity);
-#endif
CHECKBOX_SET_RULE(maximizehoriz,);
CHECKBOX_SET_RULE(maximizevert,);
CHECKBOX_SET_RULE(minimize,);
diff --git a/kwin/kcmkwin/kwinrules/ruleswidget.h b/kwin/kcmkwin/kwinrules/ruleswidget.h
index 7e875601..2a895736 100644
--- a/kwin/kcmkwin/kwinrules/ruleswidget.h
+++ b/kwin/kcmkwin/kwinrules/ruleswidget.h
@@ -60,9 +60,6 @@ private slots:
void updateEnablesize();
void updateEnabledesktop();
void updateEnablescreen();
-#ifdef KWIN_BUILD_ACTIVITIES
- void updateEnableactivity();
-#endif
void updateEnablemaximizehoriz();
void updateEnablemaximizevert();
void updateEnableminimize();
@@ -98,10 +95,6 @@ private slots:
private:
int desktopToCombo(int d) const;
int comboToDesktop(int val) const;
-#ifdef KWIN_BUILD_ACTIVITIES
- int activityToCombo(QString d) const;
- QString comboToActivity(int val) const;
-#endif
int comboToTiling(int val) const;
int inc(int i) const { return i+1; }
int dec(int i) const { return i-1; }
diff --git a/kwin/manage.cpp b/kwin/manage.cpp
index 99526b9b..9b474475 100644
--- a/kwin/manage.cpp
+++ b/kwin/manage.cpp
@@ -27,9 +27,6 @@ along with this program. If not, see .
#include
#include
-#ifdef KWIN_BUILD_ACTIVITIES
-#include "activities.h"
-#endif
#include "cursor.h"
#include "decorations.h"
#include
@@ -203,18 +200,6 @@ bool Client::manage(xcb_window_t w, bool isMapped)
desk = info->desktop(); // Window had the initial desktop property, force it
if (desktop() == 0 && asn_valid && asn_data.desktop() != 0)
desk = asn_data.desktop();
-#ifdef KWIN_BUILD_ACTIVITIES
- if (!isMapped && !noborder && isNormalWindow() && !activitiesDefined) {
- //a new, regular window, when we're not recovering from a crash,
- //and it hasn't got an activity. let's try giving it the current one.
- //TODO: decide whether to keep this before the 4.6 release
- //TODO: if we are keeping it (at least as an option), replace noborder checking
- //with a public API for setting windows to be on all activities.
- //something like KWindowSystem::setOnAllActivities or
- //KActivityConsumer::setOnAllActivities
- setOnActivity(Activities::self()->current(), true);
- }
-#endif
}
if (desk == 0) // Assume window wants to be visible on the current desktop
diff --git a/kwin/scripting/scripting_model.cpp b/kwin/scripting/scripting_model.cpp
index 849c8764..75929323 100644
--- a/kwin/scripting/scripting_model.cpp
+++ b/kwin/scripting/scripting_model.cpp
@@ -311,20 +311,7 @@ AbstractLevel *AbstractLevel::create(const QList< ClientModel::LevelRestriction
}
switch (restriction) {
case ClientModel::ActivityRestriction: {
-#ifdef KWIN_BUILD_ACTIVITIES
- const QStringList &activities = Activities::self()->all();
- for (QStringList::const_iterator it = activities.begin(); it != activities.end(); ++it) {
- AbstractLevel *childLevel = create(childRestrictions, childrenRestrictions, model, currentLevel);
- if (!childLevel) {
- continue;
- }
- childLevel->setActivity(*it);
- currentLevel->addChild(childLevel);
- }
- break;
-#else
return NULL;
-#endif
}
case ClientModel::ScreenRestriction:
for (int i=0; icount(); ++i) {
@@ -402,11 +389,6 @@ ForkLevel::ForkLevel(const QList &childRestrictio
{
connect(VirtualDesktopManager::self(), SIGNAL(countChanged(uint,uint)), SLOT(desktopCountChanged(uint,uint)));
connect(screens(), SIGNAL(countChanged(int,int)), SLOT(screenCountChanged(int,int)));
-#ifdef KWIN_BUILD_ACTIVITIES
- Activities *activities = Activities::self();
- connect(activities, SIGNAL(added(QString)), SLOT(activityAdded(QString)));
- connect(activities, SIGNAL(removed(QString)), SLOT(activityRemoved(QString)));
-#endif
}
ForkLevel::~ForkLevel()
@@ -478,44 +460,10 @@ void ForkLevel::screenCountChanged(int previousCount, int newCount)
void ForkLevel::activityAdded(const QString &activityId)
{
-#ifdef KWIN_BUILD_ACTIVITIES
- if (restriction() != ClientModel::ClientModel::ActivityRestriction) {
- return;
- }
- // verify that our children do not contain this activity
- foreach (AbstractLevel *child, m_children) {
- if (child->activity() == activityId) {
- return;
- }
- }
- emit beginInsert(m_children.count(), m_children.count(), id());
- AbstractLevel *childLevel = AbstractLevel::create(m_childRestrictions, restrictions(), model(), this);
- if (!childLevel) {
- emit endInsert();
- return;
- }
- childLevel->setActivity(activityId);
- childLevel->init();
- addChild(childLevel);
- emit endInsert();
-#endif
}
void ForkLevel::activityRemoved(const QString &activityId)
{
-#ifdef KWIN_BUILD_ACTIVITIES
- if (restriction() != ClientModel::ClientModel::ActivityRestriction) {
- return;
- }
- for (int i=0; iactivity() == activityId) {
- emit beginRemove(i, i, id());
- delete m_children.takeAt(i);
- emit endRemove();
- break;
- }
- }
-#endif
}
int ForkLevel::count() const
diff --git a/kwin/scripting/workspace_wrapper.cpp b/kwin/scripting/workspace_wrapper.cpp
index fb737119..456773cc 100644
--- a/kwin/scripting/workspace_wrapper.cpp
+++ b/kwin/scripting/workspace_wrapper.cpp
@@ -25,9 +25,6 @@ along with this program. If not, see .
#include "../screens.h"
#include "../virtualdesktops.h"
#include "../workspace.h"
-#ifdef KWIN_BUILD_ACTIVITIES
-#include "../activities.h"
-#endif
#include
@@ -46,14 +43,6 @@ WorkspaceWrapper::WorkspaceWrapper(QObject* parent) : QObject(parent)
connect(vds, SIGNAL(countChanged(uint,uint)), SIGNAL(numberDesktopsChanged(uint)));
connect(vds, SIGNAL(layoutChanged(int,int)), SIGNAL(desktopLayoutChanged()));
connect(ws, SIGNAL(clientDemandsAttentionChanged(KWin::Client*,bool)), SIGNAL(clientDemandsAttentionChanged(KWin::Client*,bool)));
-#ifdef KWIN_BUILD_ACTIVITIES
- KWin::Activities *activities = KWin::Activities::self();
- connect(activities, SIGNAL(currentChanged(QString)), SIGNAL(currentActivityChanged(QString)));
- connect(activities, SIGNAL(added(QString)), SIGNAL(activitiesChanged(QString)));
- connect(activities, SIGNAL(added(QString)), SIGNAL(activityAdded(QString)));
- connect(activities, SIGNAL(removed(QString)), SIGNAL(activitiesChanged(QString)));
- connect(activities, SIGNAL(removed(QString)), SIGNAL(activityRemoved(QString)));
-#endif
connect(QApplication::desktop(), SIGNAL(screenCountChanged(int)), SIGNAL(numberScreensChanged(int)));
connect(QApplication::desktop(), SIGNAL(resized(int)), SIGNAL(screenResized(int)));
foreach (KWin::Client *client, ws->clientList()) {
@@ -92,20 +81,12 @@ GETTER(QList< KWin::Client* >, clientList)
QString WorkspaceWrapper::currentActivity() const
{
-#ifdef KWIN_BUILD_ACTIVITIES
- return Activities::self()->current();
-#else
return QString();
-#endif
}
QStringList WorkspaceWrapper::activityList() const
{
-#ifdef KWIN_BUILD_ACTIVITIES
- return Activities::self()->all();
-#else
return QStringList();
-#endif
}
#define SLOTWRAPPER(name) \
diff --git a/kwin/tabbox/tabbox.cpp b/kwin/tabbox/tabbox.cpp
index 1d5e466a..f8b993be 100644
--- a/kwin/tabbox/tabbox.cpp
+++ b/kwin/tabbox/tabbox.cpp
@@ -29,9 +29,6 @@ along with this program. If not, see .
#include "tabbox/tabboxconfig.h"
#include "tabbox/desktopchain.h"
// kwin
-#ifdef KWIN_BUILD_ACTIVITIES
-#include "activities.h"
-#endif
#include "client.h"
#include "effects.h"
#include "focuschain.h"
@@ -80,9 +77,6 @@ TabBoxHandlerImpl::TabBoxHandlerImpl(TabBox* tabBox)
VirtualDesktopManager *vds = VirtualDesktopManager::self();
connect(vds, SIGNAL(countChanged(uint,uint)), m_desktopFocusChain, SLOT(resize(uint,uint)));
connect(vds, SIGNAL(currentChanged(uint,uint)), m_desktopFocusChain, SLOT(addDesktop(uint,uint)));
-#ifdef KWIN_BUILD_ACTIVITIES
- connect(Activities::self(), SIGNAL(currentChanged(QString)), m_desktopFocusChain, SLOT(useChain(QString)));
-#endif
}
TabBoxHandlerImpl::~TabBoxHandlerImpl()
diff --git a/kwin/toplevel.cpp b/kwin/toplevel.cpp
index 19ed0bd4..41e411dd 100644
--- a/kwin/toplevel.cpp
+++ b/kwin/toplevel.cpp
@@ -22,9 +22,6 @@ along with this program. If not, see .
#include
-#ifdef KWIN_BUILD_ACTIVITIES
-#include "activities.h"
-#endif
#include "atoms.h"
#include "client.h"
#include "client_machine.h"
@@ -451,11 +448,7 @@ bool Toplevel::isDeleted() const
bool Toplevel::isOnCurrentActivity() const
{
-#ifdef KWIN_BUILD_ACTIVITIES
- return isOnActivity(Activities::self()->current());
-#else
return true;
-#endif
}
void Toplevel::elevate(bool elevate)
diff --git a/kwin/useractions.cpp b/kwin/useractions.cpp
index 563cb868..64e8bbfc 100755
--- a/kwin/useractions.cpp
+++ b/kwin/useractions.cpp
@@ -44,10 +44,6 @@ along with this program. If not, see .
#include "scripting/scripting.h"
#endif
-#ifdef KWIN_BUILD_ACTIVITIES
-#include "activities.h"
-#include
-#endif
#include
#include
@@ -426,9 +422,6 @@ void UserActionsMenu::menuAboutToShow()
} else {
initScreenPopup();
}
-#ifdef KWIN_BUILD_ACTIVITIES
- Activities::self()->update(true, false, this, "showHideActivityMenu");
-#endif
m_resizeOperation->setEnabled(m_client.data()->isResizable());
m_moveOperation->setEnabled(m_client.data()->isMovableAcrossScreens());
@@ -476,16 +469,6 @@ void UserActionsMenu::menuAboutToShow()
void UserActionsMenu::showHideActivityMenu()
{
-#ifdef KWIN_BUILD_ACTIVITIES
- const QStringList &openActivities_ = Activities::self()->running();
- kDebug() << "activities:" << openActivities_.size();
- if (openActivities_.size() < 2) {
- delete m_activityMenu;
- m_activityMenu = 0;
- } else {
- initActivityPopup();
- }
-#endif
}
void UserActionsMenu::selectPopupClientTab(QAction* action)
@@ -712,43 +695,6 @@ void UserActionsMenu::activityPopupAboutToShow()
if (!m_activityMenu)
return;
-#ifdef KWIN_BUILD_ACTIVITIES
- m_activityMenu->clear();
- QAction *action = m_activityMenu->addAction(i18n("&All Activities"));
- action->setData(QString());
- action->setCheckable(true);
- static QPointer allActivitiesGroup;
- if (!allActivitiesGroup) {
- allActivitiesGroup = new QActionGroup(m_activityMenu);
- }
- allActivitiesGroup->addAction(action);
-
- if (!m_client.isNull() && m_client.data()->isOnAllActivities())
- action->setChecked(true);
- m_activityMenu->addSeparator();
-
- foreach (const QString &id, Activities::self()->running()) {
- KActivities::Info activity(id);
- QString name = activity.name();
- name.replace('&', "&&");
- QWidgetAction *action = new QWidgetAction(m_activityMenu);
- QCheckBox *box = new QCheckBox(name, m_activityMenu);
- action->setDefaultWidget(box);
- const QString icon = activity.icon();
- if (!icon.isEmpty())
- box->setIcon(KIcon(icon));
- box->setBackgroundRole(m_activityMenu->backgroundRole());
- box->setForegroundRole(m_activityMenu->foregroundRole());
- box->setPalette(m_activityMenu->palette());
- connect (box, SIGNAL(clicked(bool)), action, SIGNAL(triggered(bool)));
- m_activityMenu->addAction(action);
- action->setData(id);
-
- if (!m_client.isNull() &&
- !m_client.data()->isOnAllActivities() && m_client.data()->isOnActivity(id))
- box->setChecked(true);
- }
-#endif
}
void UserActionsMenu::slotWindowOperation(QAction *action)
@@ -815,34 +761,6 @@ void UserActionsMenu::slotSendToScreen(QAction *action)
void UserActionsMenu::slotToggleOnActivity(QAction *action)
{
-#ifdef KWIN_BUILD_ACTIVITIES
- QString activity = action->data().toString();
- if (m_client.isNull())
- return;
- if (activity.isEmpty()) {
- // the 'on_all_activities' menu entry
- m_client.data()->setOnAllActivities(!m_client.data()->isOnAllActivities());
- return;
- }
-
- Activities::self()->toggleClientOnActivity(m_client.data(), activity, false);
- if (m_activityMenu && m_activityMenu->isVisible() && m_activityMenu->actions().count()) {
- const bool isOnAll = m_client.data()->isOnAllActivities();
- m_activityMenu->actions().at(0)->setChecked(isOnAll);
- if (isOnAll) {
- // toggleClientOnActivity interprets "on all" as "on none" and
- // susequent toggling ("off") would move the client to only that activity.
- // bug #330838 -> set all but "on all" off to "force proper usage"
- for (int i = 1; i < m_activityMenu->actions().count(); ++i) {
- if (QWidgetAction *qwa = qobject_cast(m_activityMenu->actions().at(i))) {
- if (QCheckBox *qcb = qobject_cast(qwa->defaultWidget())) {
- qcb->setChecked(false);
- }
- }
- }
- }
- }
-#endif
}
//****************************************
diff --git a/kwin/workspace.cpp b/kwin/workspace.cpp
index 82a7567c..c837ed02 100644
--- a/kwin/workspace.cpp
+++ b/kwin/workspace.cpp
@@ -24,9 +24,6 @@ along with this program. If not, see .
#include
#include
// kwin
-#ifdef KWIN_BUILD_ACTIVITIES
-#include "activities.h"
-#endif
#ifdef KWIN_BUILD_KAPPMENU
#include "appmenu.h"
#endif
@@ -154,10 +151,6 @@ Workspace::Workspace(bool restore)
// start the cursor support
Cursor::create(this);
-#ifdef KWIN_BUILD_ACTIVITIES
- Activities *activities = Activities::create(this);
- connect(activities, SIGNAL(currentChanged(QString)), SLOT(updateCurrentActivity(QString)));
-#endif
// PluginMgr needs access to the config file, so we need to wait for it for finishing
reparseConfigFuture.waitForFinished();
@@ -296,9 +289,6 @@ void Workspace::init()
}
if (!VirtualDesktopManager::self()->setCurrent(initial_desktop))
VirtualDesktopManager::self()->setCurrent(1);
-#ifdef KWIN_BUILD_ACTIVITIES
- Activities::self()->update(false, true);
-#endif
reconfigureTimer.setSingleShot(true);
updateToolWindowsTimer.setSingleShot(true);
@@ -1032,95 +1022,7 @@ Client *Workspace::findClientToActivateOnDesktop(uint desktop)
void Workspace::updateCurrentActivity(const QString &new_activity)
{
-#ifdef KWIN_BUILD_ACTIVITIES
- //closeActivePopup();
- ++block_focus;
- // TODO: Q_ASSERT( block_stacking_updates == 0 ); // Make sure stacking_order is up to date
- StackingUpdatesBlocker blocker(this);
-
- ++block_showing_desktop; //FIXME should I be using that?
- // Optimized Desktop switching: unmapping done from back to front
- // mapping done from front to back => less exposure events
- //Notify::raise((Notify::Event) (Notify::DesktopChange+new_desktop));
-
- ObscuringWindows obs_wins;
-
- const QString &old_activity = Activities::self()->previous();
-
- for (ToplevelList::ConstIterator it = stacking_order.constBegin();
- it != stacking_order.constEnd();
- ++it) {
- Client *c = qobject_cast(*it);
- if (!c) {
- continue;
- }
- if (!c->isOnActivity(new_activity) && c != movingClient && c->isOnCurrentDesktop()) {
- if (c->isShown(true) && c->isOnActivity(old_activity) && !compositing())
- obs_wins.create(c);
- c->updateVisibility();
- }
- }
-
- // Now propagate the change, after hiding, before showing
- //rootInfo->setCurrentDesktop( currentDesktop() );
-
- /* TODO someday enable dragging windows to other activities
- if ( movingClient && !movingClient->isOnDesktop( new_desktop ))
- {
- movingClient->setDesktop( new_desktop );
- */
-
- for (int i = stacking_order.size() - 1; i >= 0 ; --i) {
- Client *c = qobject_cast(stacking_order.at(i));
- if (!c) {
- continue;
- }
- if (c->isOnActivity(new_activity))
- c->updateVisibility();
- }
-
- --block_showing_desktop;
- //FIXME not sure if I should do this either
- if (showingDesktop()) // Do this only after desktop change to avoid flicker
- resetShowingDesktop(false);
-
- // Restore the focus on this desktop
- --block_focus;
- Client* c = 0;
-
- //FIXME below here is a lot of focuschain stuff, probably all wrong now
- if (options->focusPolicyIsReasonable()) {
- // Search in focus chain
- c = FocusChain::self()->getForActivation(VirtualDesktopManager::self()->current());
- }
- // If "unreasonable focus policy" and active_client is on_all_desktops and
- // under mouse (Hence == old_active_client), conserve focus.
- // (Thanks to Volker Schatz )
- else if (active_client && active_client->isShown(true) && active_client->isOnCurrentDesktop() && active_client->isOnCurrentActivity())
- c = active_client;
-
- if (c == NULL && !desktops.isEmpty())
- c = findDesktop(true, VirtualDesktopManager::self()->current());
-
- if (c != active_client)
- setActiveClient(NULL);
-
- if (c)
- requestFocus(c);
- else if (!desktops.isEmpty())
- requestFocus(findDesktop(true, VirtualDesktopManager::self()->current()));
- else
- focusToNull();
-
- // Not for the very first time, only if something changed and there are more than 1 desktops
-
- //if ( effects != NULL && old_desktop != 0 && old_desktop != new_desktop )
- // static_cast( effects )->desktopChanged( old_desktop );
- if (compositing() && m_compositor)
- m_compositor->addRepaintFull();
-#else
Q_UNUSED(new_activity)
-#endif
}
void Workspace::moveClientsFromRemovedDesktops()
diff --git a/libs/taskmanager/CMakeLists.txt b/libs/taskmanager/CMakeLists.txt
index 17cda2d3..d30aaede 100644
--- a/libs/taskmanager/CMakeLists.txt
+++ b/libs/taskmanager/CMakeLists.txt
@@ -31,7 +31,7 @@ set(taskmanager_LIB_SRCS ${taskmanager_LIB_SRCS} task_x11.cpp)
kde4_add_library(taskmanager SHARED ${taskmanager_LIB_SRCS})
-target_link_libraries(taskmanager processcore ${KACTIVITIES_LIBRARIES} ${KDE4_KDEUI_LIBS} ${KDE4_KIO_LIBS} ${X11_LIBRARIES})
+target_link_libraries(taskmanager processcore ${KDE4_KDEUI_LIBS} ${KDE4_KIO_LIBS} ${X11_LIBRARIES})
if (X11_Xfixes_FOUND)
target_link_libraries(taskmanager ${X11_Xfixes_LIB})
endif (X11_Xfixes_FOUND)
@@ -42,8 +42,6 @@ if (X11_Xcomposite_FOUND)
target_link_libraries(taskmanager ${X11_Xcomposite_LIB})
endif (X11_Xcomposite_FOUND)
-include_directories(${KACTIVITIES_INCLUDE_DIR})
-
if (NOT KDE_PLATFORM_FEATURE_BINARY_COMPATIBLE_FEATURE_REDUCTION)
include_directories(${KDEBASE_WORKSPACE_SOURCE_DIR}/libs/kephal)
target_link_libraries(taskmanager kephal)
diff --git a/plasma/desktop/applets/CMakeLists.txt b/plasma/desktop/applets/CMakeLists.txt
index c75edf3d..42d79938 100644
--- a/plasma/desktop/applets/CMakeLists.txt
+++ b/plasma/desktop/applets/CMakeLists.txt
@@ -1,5 +1,4 @@
add_subdirectory(kickoff)
-add_subdirectory(showActivityManager)
add_subdirectory(trash)
#task and windowlist depend on libs/taskmanager
diff --git a/plasma/desktop/applets/pager/CMakeLists.txt b/plasma/desktop/applets/pager/CMakeLists.txt
index 8d3d5ed5..a4ee702f 100644
--- a/plasma/desktop/applets/pager/CMakeLists.txt
+++ b/plasma/desktop/applets/pager/CMakeLists.txt
@@ -1,7 +1,5 @@
project(plasma-pager)
-include_directories(${KACTIVITIES_INCLUDE_DIR})
-
set(pager_SRCS
model.cpp
pager.cpp)
@@ -12,7 +10,6 @@ target_link_libraries(plasma_applet_pager
${KDE4_KIO_LIBS}
${KDE4_PLASMA_LIBS}
${KDE4_KCMUTILS_LIBRARY}
- ${KACTIVITIES_LIBRARIES}
${QT_QTDECLARATIVE_LIBRARY}
taskmanager)
diff --git a/plasma/desktop/applets/showActivityManager/CMakeLists.txt b/plasma/desktop/applets/showActivityManager/CMakeLists.txt
deleted file mode 100644
index 7c730011..00000000
--- a/plasma/desktop/applets/showActivityManager/CMakeLists.txt
+++ /dev/null
@@ -1,15 +0,0 @@
-project(plasma-showActivityManager)
-
-find_package(KDE4 REQUIRED)
-
-include(KDE4Defaults)
-
-install(DIRECTORY package/
- DESTINATION ${DATA_INSTALL_DIR}/plasma/plasmoids/org.kde.showActivityManager)
-
-install(FILES package/metadata.desktop
- DESTINATION ${SERVICES_INSTALL_DIR}
- RENAME plasma-applet-org.kde.showActivityManager.desktop)
-
-install(FILES activities.svgz
- DESTINATION ${DATA_INSTALL_DIR}/desktoptheme/default/widgets/)
diff --git a/plasma/desktop/applets/showActivityManager/Messages.sh b/plasma/desktop/applets/showActivityManager/Messages.sh
deleted file mode 100644
index 43b59b23..00000000
--- a/plasma/desktop/applets/showActivityManager/Messages.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/bash
-$EXTRACTRC `find . -name \*.rc -o -name \*.ui -o -name \*.kcfg` >> rc.cpp
-$XGETTEXT `find . -name \*.qml -o -name \*.cpp` -o $podir/plasma_applet_org.kde.showActivityManager.pot
-rm -f rc.cpp
diff --git a/plasma/desktop/applets/showActivityManager/activities.svgz b/plasma/desktop/applets/showActivityManager/activities.svgz
deleted file mode 100644
index 6d15724c..00000000
Binary files a/plasma/desktop/applets/showActivityManager/activities.svgz and /dev/null differ
diff --git a/plasma/desktop/applets/showActivityManager/package/contents/ui/main.qml b/plasma/desktop/applets/showActivityManager/package/contents/ui/main.qml
deleted file mode 100644
index d56c9aba..00000000
--- a/plasma/desktop/applets/showActivityManager/package/contents/ui/main.qml
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * Copyright 2012 Gregor Taetzner
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License as
- * published by the Free Software Foundation; either version 2 or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-import QtQuick 1.1
-import org.kde.plasma.core 0.1 as PlasmaCore
-import org.kde.plasma.graphicswidgets 0.1 as PlasmaWidgets
-
-Item {
- id: iconContainer
- property string activeSource: "Status"
- property int minimumWidth: 16
- property int minimumHeight: 16
- implicitWidth: theme.iconSizes["panel"]
- implicitHeight: implicitWidth
-
- Component.onCompleted: {
- plasmoid.aspectRatioMode = "ConstrainedSquare"
- }
-
- PlasmaCore.DataSource {
- id: dataSource
- engine: "org.kde.activities"
- connectedSources: [activeSource]
- }
-
- PlasmaCore.ToolTip {
- id: tooltip
- mainText: i18n("Show Activity Manager")
- subText: i18n("Click to show the activity manager")
- target: icon
- image: "preferences-activities"
- }
-
- PlasmaWidgets.IconWidget
- {
- id: icon
- svg: "widgets/activities"
- width: parent.width
- height: parent.height
- onClicked:
- {
- var service = dataSource.serviceForSource(activeSource)
- var operation = service.operationDescription("toggleActivityManager")
- service.startOperationCall(operation)
- }
- }
-}
-
diff --git a/plasma/desktop/applets/showActivityManager/package/metadata.desktop b/plasma/desktop/applets/showActivityManager/package/metadata.desktop
deleted file mode 100644
index bfd1badb..00000000
--- a/plasma/desktop/applets/showActivityManager/package/metadata.desktop
+++ /dev/null
@@ -1,129 +0,0 @@
-[Desktop Entry]
-Name=Activities
-Name[ar]=الأنشطة
-Name[bg]=Дейности
-Name[bs]=motor aktivnosti
-Name[ca]=Activitats
-Name[ca@valencia]=Activitats
-Name[cs]=Aktivity
-Name[da]=Aktiviteter
-Name[de]=Aktivitäten
-Name[el]=Δραστηριότητες
-Name[en_GB]=Activities
-Name[es]=Actividades
-Name[et]=Tegevused
-Name[eu]=Jarduerak
-Name[fa]=فعالیتها
-Name[fi]=Aktiviteetit
-Name[fr]=Activités
-Name[ga]=Gníomhaíochtaí
-Name[gl]=Actividades
-Name[he]=עילויות
-Name[hr]=Aktivnosti
-Name[hu]=Aktivitások
-Name[ia]=Activitates
-Name[is]=Virknistjóri
-Name[it]=Attività
-Name[ja]=アクティビティ
-Name[kk]=Белсенділіктер
-Name[km]=សកម្មភាព
-Name[ko]=활동
-Name[lt]=Veiklos
-Name[lv]=Aktivitātes
-Name[mr]=कार्यपध्दती
-Name[nb]=Aktiviteter
-Name[nds]=Aktiviteten
-Name[nl]=Activiteiten
-Name[pa]=ਸਰਗਰਮੀਆਂ
-Name[pl]=Działania
-Name[pt]=Actividades
-Name[pt_BR]=Atividades
-Name[ro]=Activități
-Name[ru]=Комнаты
-Name[sk]=Aktivity
-Name[sl]=Dejavnosti
-Name[sr]=активности
-Name[sr@ijekavian]=активности
-Name[sr@ijekavianlatin]=aktivnosti
-Name[sr@latin]=aktivnosti
-Name[sv]=Aktiviteter
-Name[tr]=Etkinlikler
-Name[ug]=پائالىيەتلەر
-Name[uk]=Простори дій
-Name[vi]=Hoạt động
-Name[wa]=Activités
-Name[x-test]=xxActivitiesxx
-Name[zh_CN]=活动
-Name[zh_TW]=活動
-Comment=Shows the activity manager
-Comment[bg]=Управление на дейностите
-Comment[bs]=Prikazuje menadžer aktivnosti
-Comment[ca]=Mostra el gestor d'activitats
-Comment[ca@valencia]=Mostra el gestor d'activitats
-Comment[cs]=Zobrazí správce aktivit
-Comment[da]=Vis aktivitetshåndtering
-Comment[de]=Zeigt die Aktivitätenverwaltung an
-Comment[el]=Εμφανίζει το διαχειριστή δραστηριοτήτων
-Comment[en_GB]=Shows the activity manager
-Comment[es]=Muestra el gestor de actividades
-Comment[et]=Tegevuste halduri näitamine
-Comment[eu]=Jarduera-kudeatzailea erakusten du
-Comment[fi]=Näyttää aktiviteettienhallinnan
-Comment[fr]=Affiche le gestionnaire d'activités
-Comment[ga]=Taispeáin an bainisteoir gníomhaíochta
-Comment[gl]=Mostra o xestor da actividade
-Comment[he]=מציג את מנהל פעילויות
-Comment[hr]=Prikazuje upravitelja aktivnosti
-Comment[hu]=Aktivitáskezelő megjelenítése
-Comment[ia]=Monstra le gerente de activitate
-Comment[is]=Birtir virknistjóra
-Comment[it]=Mostra il gestore delle attività
-Comment[kk]=Белсенділік менеджері көрсетеді
-Comment[km]=បង្ហាញកម្មវិធីគ្រប់គ្រងសកម្មភាព
-Comment[ko]=활동 관리자 보이기
-Comment[lt]=Rodo veiklų tvarkyklę
-Comment[lv]=Rāda aktivitāšu pārvaldnieku
-Comment[mr]=कार्यपध्दती व्यवस्थापक दर्शवितो
-Comment[nb]=Viser aktivitetshåndtereren
-Comment[nds]=Wiest den Aktivitetenpleger
-Comment[nl]=Toont de activiteitenbeheerder
-Comment[pa]=ਸਰਗਰਮੀ ਮੈਨੇਜਰ ਵੇਖਾਉਂਦਾ ਹੈ
-Comment[pl]=Pokazuje menadżera działań
-Comment[pt]=Mostra o gestor de actividades
-Comment[pt_BR]=Mostra o gerenciador de atividades
-Comment[ro]=Arată Gestionarul de activități
-Comment[ru]=Показывает диспетчер комнат
-Comment[sk]=Ukáže správcu aktivít
-Comment[sl]=Prikaže upravljalnika dejavnosti
-Comment[sr]=Приказује менаџер активности
-Comment[sr@ijekavian]=Приказује менаџер активности
-Comment[sr@ijekavianlatin]=Prikazuje menadžer aktivnosti
-Comment[sr@latin]=Prikazuje menadžer aktivnosti
-Comment[sv]=Visar Aktivitetshanteraren
-Comment[tr]=Etkinlik yöneticisini gösterir
-Comment[ug]=پائالىيەت باشقۇرغۇچنى كۆرسىتىدۇ
-Comment[uk]=Показує вікно керування просторами дій
-Comment[wa]=Mostrer l' manaedjeu des activités
-Comment[x-test]=xxShows the activity managerxx
-Comment[zh_CN]=显示活动管理器
-Comment[zh_TW]=顯示活動管理員
-Icon=preferences-activities
-Type=Service
-
-X-Plasma-API=declarativeappletscript
-X-Plasma-MainScript=ui/main.qml
-X-Plasma-DefaultSize=200,100
-X-Plasma-Requires-FileDialog=Unused
-X-Plasma-Requires-LaunchApp=Unused
-
-X-KDE-PluginInfo-Author=Gregor Tätzner
-X-KDE-PluginInfo-Email=plasma-devel@kde.org
-X-KDE-PluginInfo-Website=http://plasma.kde.org/
-X-KDE-PluginInfo-Category=Windows and Tasks
-X-KDE-PluginInfo-Name=org.kde.showActivityManager
-X-KDE-PluginInfo-Version=1.0
-X-KDE-PluginInfo-Depends=
-X-KDE-PluginInfo-License=GPL
-X-KDE-PluginInfo-EnabledByDefault=true
-
-X-KDE-ServiceTypes=Plasma/Applet
diff --git a/plasma/desktop/shell/CMakeLists.txt b/plasma/desktop/shell/CMakeLists.txt
index 66796806..495f5f25 100644
--- a/plasma/desktop/shell/CMakeLists.txt
+++ b/plasma/desktop/shell/CMakeLists.txt
@@ -2,20 +2,13 @@ include_directories(${KDEBASE_WORKSPACE_SOURCE_DIR}/libs
${KDEBASE_WORKSPACE_SOURCE_DIR}/libs/plasmagenericshell
${KDEBASE_WORKSPACE_SOURCE_DIR}/plasma/desktop/shell/scripting
${KDEBASE_WORKSPACE_SOURCE_DIR}/libs/kephal
- ${KACTIVITIES_INCLUDE_DIR}
)
add_subdirectory(configupdates)
-set(activitymanager_SRCS
- activitymanager/activitymanager.cpp
- activitymanager/kidenticongenerator.cpp
-)
-
set(plasma_SRCS
accessibility/accessiblefactory.cpp
accessibility/accessibleplasmaview.cpp
- activity.cpp
scripting/desktopscriptengine.cpp
scripting/panel.cpp
checkbox.cpp
@@ -34,7 +27,6 @@ set(plasma_SRCS
positioningruler.cpp
klistconfirmationdialog.cpp
${wallpaper_SRCS}
- ${activitymanager_SRCS}
)
kde4_add_kcfg_files(plasma_SRCS data/plasma-shell-desktop.kcfgc)
@@ -49,7 +41,7 @@ kde4_add_app_icon(plasma_SRCS "${KDE4_INSTALL_DIR}/share/icons/oxygen/*/apps/pla
kde4_add_kdeinit_executable(plasma-desktop ${plasma_SRCS})
-target_link_libraries(kdeinit_plasma-desktop ${KDE4_PLASMA_LIBS} ${KDE4_KIO_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KTEXTEDITOR_LIBS} ${KDE4_KIDLETIME_LIBS} ${QT_QTSCRIPT_LIBRARY} kworkspace ${KACTIVITIES_LIBRARIES} plasmagenericshell ${QT_QTDECLARATIVE_LIBRARY})
+target_link_libraries(kdeinit_plasma-desktop ${KDE4_PLASMA_LIBS} ${KDE4_KIO_LIBS} ${KDE4_KFILE_LIBS} ${KDE4_KTEXTEDITOR_LIBS} ${KDE4_KIDLETIME_LIBS} ${QT_QTSCRIPT_LIBRARY} kworkspace plasmagenericshell ${QT_QTDECLARATIVE_LIBRARY})
if(UNIX AND Q_WS_X11)
target_link_libraries(kdeinit_plasma-desktop ${X11_LIBRARIES})
@@ -67,11 +59,9 @@ install(TARGETS plasma-desktop ${INSTALL_TARGETS_DEFAULT_ARGS})
install(FILES data/plasma.desktop data/plasma-desktop.desktop DESTINATION ${AUTOSTART_INSTALL_DIR})
install(FILES data/plasma-shell-desktop.kcfg DESTINATION ${KCFG_INSTALL_DIR})
install(FILES data/plasma-themes.knsrc DESTINATION ${CONFIG_INSTALL_DIR})
-install(FILES activitymanager/activities.knsrc DESTINATION ${CONFIG_INSTALL_DIR})
install(FILES data/plasma-desktop.notifyrc DESTINATION ${DATA_INSTALL_DIR}/plasma-desktop)
install(FILES data/layouts/00-defaultLayout.js DESTINATION ${DATA_INSTALL_DIR}/plasma-desktop/init)
install(FILES data/plasma-desktop-js.xml DESTINATION ${DATA_INSTALL_DIR}/katepart/syntax/)
-install(DIRECTORY activitymanager/package/ DESTINATION ${DATA_INSTALL_DIR}/plasma/packages/org.kde.desktop.activitymanager)
MACRO(INSTALL_PLASMA_JAVASCRIPT_TEMPLATE dir addonPrefix)
configure_file(${dir}/metadata.desktop ${CMAKE_CURRENT_BINARY_DIR}/plasma-layout-${addonPrefix}.desktop COPYONLY)
@@ -82,7 +72,6 @@ ENDMACRO(INSTALL_PLASMA_JAVASCRIPT_TEMPLATE)
INSTALL_PLASMA_JAVASCRIPT_TEMPLATE(data/layouts/org.kde.plasma-desktop.defaultPanel org.kde.plasma-desktop.defaultPanel)
INSTALL_PLASMA_JAVASCRIPT_TEMPLATE(data/layouts/org.kde.plasma-desktop.findWidgets org.kde.plasma-desktop.findWidgets)
-INSTALL_PLASMA_JAVASCRIPT_TEMPLATE(data/layouts/org.kde.plasma-desktop.photoActivity org.kde.plasma-desktop.photoActivity)
INSTALL_PLASMA_JAVASCRIPT_TEMPLATE(data/layouts/org.kde.plasma-desktop.desktopIcons org.kde.plasma-desktop.desktopIcons)
INSTALL_PLASMA_JAVASCRIPT_TEMPLATE(data/layouts/org.kde.plasma-desktop.SaL org.kde.plasma-desktop.SaL)
diff --git a/plasma/desktop/shell/activitymanager/Messages.sh b/plasma/desktop/shell/activitymanager/Messages.sh
deleted file mode 100644
index a40b5ff5..00000000
--- a/plasma/desktop/shell/activitymanager/Messages.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/bash
-$XGETTEXT `find . -name \*.qml` -L Java -o $podir/plasma_package_org.kde.desktop.activitymanager.pot
-$XGETTEXT `find . -name \*.cpp` -j -o $podir/plasma_package_org.kde.desktop.activitymanager.pot
-rm -f rc.cpp
diff --git a/plasma/desktop/shell/activitymanager/activities.knsrc b/plasma/desktop/shell/activitymanager/activities.knsrc
deleted file mode 100644
index 900ba05f..00000000
--- a/plasma/desktop/shell/activitymanager/activities.knsrc
+++ /dev/null
@@ -1,7 +0,0 @@
-[KNewStuff3]
-ProvidersUrl=http://download.kde.org/ocs/providers.xml
-Categories=Plasma Activity Template
-StandardResource=tmp
-InstallationCommand=plasmapkg -t layout-template -i %f
-UninstallCommand=plasmapkg -t layout-template -r %f
-
diff --git a/plasma/desktop/shell/activitymanager/activitymanager.cpp b/plasma/desktop/shell/activitymanager/activitymanager.cpp
deleted file mode 100644
index 9a8d8432..00000000
--- a/plasma/desktop/shell/activitymanager/activitymanager.cpp
+++ /dev/null
@@ -1,324 +0,0 @@
-/*
- * Copyright (C) 2007 by Ivan Cukic
- * Copyright (C) 2009 by Ana Cecília Martins
- * Copyright 2010 Chani Armitage
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library/Lesser General Public License
- * version 2, or (at your option) any later version, as published by the
- * Free Software Foundation
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library/Lesser General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include "activitymanager.h"
-
-#include
-#include
-#include
-#include
-
-#include
-#include
-#include
-#include
-#include
-#include
-
-#include
-#include
-#include
-#include
-
-#include "kidenticongenerator.h"
-#include "plasmaapp.h"
-
-#include
-#include "scripting/desktopscriptengine.h"
-
-class ActivityManagerPrivate
-{
-
-public:
- ActivityManagerPrivate(ActivityManager *w)
- : q(w),
- containment(0)
- {
- }
-
- void init(Plasma::Location location);
- void containmentDestroyed();
- void setLocation(Plasma::Location location);
-
- Qt::Orientation orientation;
- Plasma::Location location;
- ActivityManager *q;
- Plasma::Containment *containment;
- Plasma::DeclarativeWidget *declarativeWidget;
- Plasma::Package *package;
-
- QGraphicsLinearLayout *mainLayout;
-};
-
-void ActivityManagerPrivate::init(Plasma::Location loc)
-{
- location = loc;
- //init widgets
- if (loc == Plasma::LeftEdge || loc == Plasma::RightEdge) {
- orientation = Qt::Vertical;
- } else {
- orientation = Qt::Horizontal;
- }
-
- mainLayout = new QGraphicsLinearLayout(Qt::Vertical);
- mainLayout->setContentsMargins(0, 0, 0, 0);
- mainLayout->setSpacing(0);
-
-
- Plasma::PackageStructure::Ptr structure = Plasma::PackageStructure::load("Plasma/Generic");
- QString path;
- const QString pluginName = "org.kde.desktop.activitymanager";
-
- QString subPath = structure->defaultPackageRoot() + pluginName + '/';
- path = KStandardDirs::locate("data", subPath + "metadata.desktop");
- if (path.isEmpty()) {
- path = KStandardDirs::locate("data", subPath);
- } else {
- path.remove(QString("metadata.desktop"));
- }
-
- if (!path.endsWith('/')) {
- path.append('/');
- }
- structure->setPath(path);
-
- package = new Plasma::Package(path, pluginName, structure);
- KGlobal::locale()->insertCatalog("plasma_package_" + pluginName);
-
- declarativeWidget = new Plasma::DeclarativeWidget(q);
- declarativeWidget->setInitializationDelayed(true);
- declarativeWidget->setQmlPath(package->filePath("mainscript"));
- mainLayout->addItem(declarativeWidget);
-
- //the activitymanager class will be directly accessible from qml
- if (declarativeWidget->engine()) {
- QDeclarativeContext *ctxt = declarativeWidget->engine()->rootContext();
- if (ctxt) {
- ctxt->setContextProperty("activityManager", q);
- }
- }
-
- q->setLayout(mainLayout);
-}
-
-void ActivityManagerPrivate::setLocation(Plasma::Location loc)
-{
- Qt::Orientation orient;
- if (loc == Plasma::LeftEdge || loc == Plasma::RightEdge) {
- orient = Qt::Vertical;
- } else {
- orient = Qt::Horizontal;
- }
-
- if (orientation == orient) {
- return;
- }
-
- location = loc;
- emit q->orientationChanged();
-}
-
-void ActivityManagerPrivate::containmentDestroyed()
-{
- containment = 0;
-}
-
-//ActivityBar
-
-ActivityManager::ActivityManager(Plasma::Location loc, QGraphicsItem *parent)
- :QGraphicsWidget(parent),
- d(new ActivityManagerPrivate(this))
-{
- d->init(loc);
-}
-
-ActivityManager::ActivityManager(QGraphicsItem *parent)
- :QGraphicsWidget(parent),
- d(new ActivityManagerPrivate(this))
-{
- d->init(Plasma::BottomEdge);
-}
-
-ActivityManager::~ActivityManager()
-{
- delete d;
-}
-
-void ActivityManager::setLocation(Plasma::Location loc)
-{
- d->setLocation(loc);
- emit(locationChanged(loc));
-}
-
-ActivityManager::Location ActivityManager::location()
-{
- return (ActivityManager::Location)d->location;
-}
-
-Qt::Orientation ActivityManager::orientation() const
-{
- return d->orientation;
-}
-
-QPixmap ActivityManager::pixmapForActivity(const QString &activityId)
-{
- return KIdenticonGenerator::self()->generatePixmap(KIconLoader::SizeHuge, activityId);
-}
-
-void ActivityManager::cloneCurrentActivity()
-{
- PlasmaApp::self()->cloneCurrentActivity();
-}
-
-void ActivityManager::createActivity(const QString &pluginName)
-{
- PlasmaApp::self()->createActivity(pluginName);
-}
-
-void ActivityManager::createActivityFromScript(const QString &script, const QString &name, const QString &icon, const QStringList &startupApps)
-{
- PlasmaApp::self()->createActivityFromScript(script, name, icon, startupApps);
-}
-
-void ActivityManager::downloadActivityScripts()
-{
- KNS3::DownloadDialog *dialog = new KNS3::DownloadDialog( "activities.knsrc", 0 );
- connect(dialog, SIGNAL(accepted()), this, SIGNAL(activityTypeActionsChanged()));
- connect(dialog, SIGNAL(accepted()), dialog, SLOT(deleteLater()));
- dialog->show();
-}
-
-void ActivityManager::setContainment(Plasma::Containment *containment)
-{
- kDebug() << "Setting containment to" << containment;
- if (d->containment != containment) {
- if (d->containment) {
- d->containment->disconnect(this);
- }
-
- d->containment = containment;
-
- if (d->containment) {
- connect(d->containment, SIGNAL(destroyed(QObject*)), this, SLOT(containmentDestroyed()));
- }
- }
-}
-
-QList ActivityManager::activityTypeActions()
-{
- QList actions;
-
- QMap sorted; //qmap sorts alphabetically
-
- //regular plugins
- KPluginInfo::List plugins = Plasma::Containment::listContainmentsOfType("desktop");
- foreach (const KPluginInfo& info, plugins) {
- if (info.property("NoDisplay").toBool()) {
- continue;
- }
- QVariantHash actionDescription;
- //skip desktop, it's in the top level menu
- if (info.pluginName() != "desktop") {
- actionDescription["icon"] = info.icon();
- actionDescription["text"] = info.name();
- actionDescription["separator"] = false;
- actionDescription["pluginName"] = info.pluginName();
- sorted.insert(info.name(), actionDescription);
- }
- }
-
- //templates
- const QString constraint = QString("[X-Plasma-Shell] == '%1' and 'desktop' ~in [X-Plasma-ContainmentCategories]")
- .arg(KGlobal::mainComponent().componentName());
- KService::List templates = KServiceTypeTrader::self()->query("Plasma/LayoutTemplate", constraint);
- foreach (const KService::Ptr &service, templates) {
- KPluginInfo info(service);
- Plasma::PackageStructure::Ptr structure(new WorkspaceScripting::LayoutTemplatePackageStructure);
- const QString path = KStandardDirs::locate("data", structure->defaultPackageRoot() + '/' + info.pluginName() + '/');
- if (!path.isEmpty()) {
- Plasma::Package package(path, structure);
- const QString scriptFile = package.filePath("mainscript");
- const QStringList startupApps = service->property("X-Plasma-ContainmentLayout-ExecuteOnCreation", QVariant::StringList).toStringList();
-
- if (!scriptFile.isEmpty() || !startupApps.isEmpty()) {
- QVariantHash actionDescription;
-
- actionDescription["icon"] = info.icon();
- actionDescription["text"] = info.name();
- actionDescription["separator"] = false;
- actionDescription["pluginName"] = QString();
- actionDescription["scriptFile"] = scriptFile;
- actionDescription["startupApps"] = startupApps;
-
- sorted.insert(info.name(), actionDescription);
- }
- }
- }
-
- //set up sorted menu
- foreach (QVariantHash actionDescription, sorted) {
- actions << actionDescription;
- }
-
- //separator
- {
- QVariantHash actionDescription;
- actionDescription["separator"] = true;
- actions << actionDescription;
- }
-
- //ghns
- //FIXME
- {
- QVariantHash actionDescription;
- actionDescription["icon"] = "get-hot-new-stuff";
- actionDescription["text"] = i18n("Get New Templates...");
- actionDescription["separator"] = false;
- actions << actionDescription;
- }
-
- return actions;
-}
-
-QString ActivityManager::chooseIcon() const
-{
- KIconDialog *dialog = new KIconDialog;
- dialog->setup(KIconLoader::Desktop);
- dialog->setProperty("DoNotCloseController", true);
- KWindowSystem::setOnDesktop(dialog->winId(), KWindowSystem::currentDesktop());
- dialog->showDialog();
- KWindowSystem::forceActiveWindow(dialog->winId());
- QString icon = dialog->openDialog();
- dialog->deleteLater();
- return icon;
-}
-
-bool ActivityManager::canAddActivities() const
-{
- return KAuthorized::authorize("plasma-desktop/add_activities");
-}
-
-bool ActivityManager::canAddWidgets() const
-{
- return d->containment && d->containment->corona()->immutability() == Plasma::Mutable;
-}
-
-#include "activitymanager.moc"
diff --git a/plasma/desktop/shell/activitymanager/activitymanager.h b/plasma/desktop/shell/activitymanager/activitymanager.h
deleted file mode 100644
index 44885ef8..00000000
--- a/plasma/desktop/shell/activitymanager/activitymanager.h
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright 2010 by Chani Armitage
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library/Lesser General Public License
- * version 2, or (at your option) any later version, as published by the
- * Free Software Foundation
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library/Lesser General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#ifndef ACTIVITYMANAGER_H
-#define ACTIVITYMANAGER_H
-
-#include
-#include
-
-namespace Plasma
-{
-class Corona;
-class Containment;
-}
-class ActivityManagerPrivate;
-
-class ActivityManager : public QGraphicsWidget
-{
- Q_OBJECT
- /**
- * list of all activity creation actions (ie new desktop, new search and launch, etc)
- */
- Q_PROPERTY(QList activityTypeActions READ activityTypeActions NOTIFY activityTypeActionsChanged)
-
- /**
- * Plasma location of the panel containment the controller is associated to
- */
- Q_PROPERTY(Location location READ location NOTIFY locationChanged)
- Q_ENUMS(Location)
-
- /**
- * Orientation the controller will be disaplayed, depends from location
- */
- Q_PROPERTY(Qt::Orientation orientation READ orientation NOTIFY orientationChanged)
-
- Q_PROPERTY(bool canAddActivities READ canAddActivities CONSTANT)
- Q_PROPERTY(bool canAddWidgets READ canAddWidgets CONSTANT)
-
-public:
- /**
- * The Location enumeration describes where on screen an element, such as an
- * Applet or its managing container, is positioned on the screen.
- **/
- enum Location {
- Floating = 0, /**< Free floating. Neither geometry or z-ordering
- is described precisely by this value. */
- Desktop, /**< On the planar desktop layer, extending across
- the full screen from edge to edge */
- FullScreen, /**< Full screen */
- TopEdge, /**< Along the top of the screen*/
- BottomEdge, /**< Along the bottom of the screen*/
- LeftEdge, /**< Along the left side of the screen */
- RightEdge /**< Along the right side of the screen */
- };
-
- explicit ActivityManager(Plasma::Location loc, QGraphicsItem *parent=0);
- ActivityManager(QGraphicsItem *parent=0);
- ~ActivityManager();
-
- /**
- * Changes the current containment
- * you've got to call this at least once so that it can access the corona
- * FIXME if you can use scene() as corona, get rid of this
- */
- void setContainment(Plasma::Containment *containment);
-
- void setLocation(Plasma::Location loc);
-
- //FIXME: it's asymmetric due to the problems of QML of exporting enums
- ActivityManager::Location location();
-
- Qt::Orientation orientation() const;
-
- QList activityTypeActions();
-
- Q_INVOKABLE QPixmap pixmapForActivity(const QString &activityId);
- Q_INVOKABLE void cloneCurrentActivity();
- Q_INVOKABLE void createActivity(const QString &pluginName);
- Q_INVOKABLE void createActivityFromScript(const QString &script, const QString &name, const QString &icon, const QStringList &startupApps);
- Q_INVOKABLE void downloadActivityScripts();
- Q_INVOKABLE QString chooseIcon() const;
-
- bool canAddActivities() const;
- bool canAddWidgets() const;
-
-Q_SIGNALS:
- void locationChanged(Plasma::Location loc);
- void orientationChanged();
- void closeClicked();
- void addWidgetsRequested();
- void activityTypeActionsChanged();
-
-private:
- Q_PRIVATE_SLOT(d, void containmentDestroyed())
-
- ActivityManagerPrivate * const d;
- friend class ActivityManagerPrivate;
-
-};
-
-#endif
diff --git a/plasma/desktop/shell/activitymanager/kidenticongenerator.cpp b/plasma/desktop/shell/activitymanager/kidenticongenerator.cpp
deleted file mode 100644
index 53ec7838..00000000
--- a/plasma/desktop/shell/activitymanager/kidenticongenerator.cpp
+++ /dev/null
@@ -1,295 +0,0 @@
-/*
- * Copyright 2010 Ivan Cukic
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library/Lesser General Public License
- * version 2, or (at your option) any later version, as published by the
- * Free Software Foundation
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library/Lesser General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include "kidenticongenerator.h"
-
-#include
-#include
-#include
-#include
-
-#include
-
-#include
-#include
-
-#define VALUE_LIMIT_UP 192
-#define VALUE_LIMIT_DOWN 64
-
-class KIdenticonGenerator::Private {
-public:
- QPixmap generatePattern(int size, quint32 hash, QIcon::Mode mode);
-
- QString elementName(const QString & element, QIcon::Mode mode);
- QColor colorForHash(quint32 hash) const;
- quint32 hash(const QString & data);
-
- static KIdenticonGenerator * instance;
-
- Plasma::Svg shapes;
- Plasma::Svg theme;
-};
-
-QPixmap KIdenticonGenerator::Private::generatePattern(int size, quint32 hash, QIcon::Mode mode)
-{
- // We are dividing the pixmap into 9 blocks - 3 x 3
- int blockSize = size / 3;
-
- // pulling parts of the hash
- quint32 tmp = hash;
-
- quint8 block[4];
- block[0] = tmp & 31; tmp >>= 5;
- block[1] = tmp & 31; tmp >>= 5;
- block[2] = tmp & 31; tmp >>= 5;
-
- // Painting alpha channel
- QPixmap pixmapAlpha(size, size);
- pixmapAlpha.fill(Qt::black);
-
- QPainter painterAlpha(& pixmapAlpha);
-
- QRectF rect(0, 0, blockSize + 0.5, blockSize + 0.5);
-
- for (int i = 0; i < 4; i++) {
- // Painting the corner item
- rect.moveTopLeft(QPoint(0, 0));
- shapes.paint(& painterAlpha, rect, "shape" + QString::number(block[0] + 1));
-
- // Painting side item
- rect.moveTopLeft(QPoint(blockSize, 0));
- shapes.paint(& painterAlpha, rect, "shape" + QString::number(block[1] + 1));
-
- // Rotating the canvas to paint other edges
- painterAlpha.translate(size, 0);
- painterAlpha.rotate(90);
- }
-
- // Painting center item
- rect.moveTopLeft(QPoint(blockSize, blockSize));
- shapes.paint(& painterAlpha, rect, "shape" + QString::number(block[2] + 1));
-
- painterAlpha.end();
-
- // Painting final pixmap
- QPixmap pixmapResult(size, size);
-
-
- pixmapResult.fill(Qt::transparent);
-
- // QRadialGradient gradient(50, 50, 100);
- // gradient.setColorAt(0, color.lighter());
- // gradient.setColorAt(1, color.darker());
-
- QPainter resultPainter(& pixmapResult);
- // resultPainter.fillRect(0, 0, size, size, gradient);
- theme.paint(& resultPainter, QRect(0, 0, size, size), elementName("content", mode));
-
- resultPainter.end();
-
- pixmapResult.setAlphaChannel(pixmapAlpha);
-
- // QImage itmp = pixmapResult.toImage();
- // KIconEffect::colorize(itmp, colorForHash(hash), 1.0);
- // pixmapResult = pixmapResult.fromImage(itmp);
-
- return pixmapResult;
-}
-
-QColor KIdenticonGenerator::Private::colorForHash(quint32 hash) const
-{
- // Color is chosen according to hash
- QColor color;
-
- // Getting the value from color theme, but we must restrain it to
- // values in range from VALUE_LIMIT_DOWN to VALUE_LIMIT_UP
-
- int value = Plasma::Theme::defaultTheme()->color(Plasma::Theme::TextColor).value();
- if (value < VALUE_LIMIT_DOWN) {
- value = VALUE_LIMIT_DOWN;
- } else if (value > VALUE_LIMIT_UP) {
- value = VALUE_LIMIT_UP;
- }
-
- color.setHsv(
- hash % 359 + 1, // hue depending on hash
- 250, // high saturation level
- value
- );
-
- return color;
-
-}
-
-QString KIdenticonGenerator::Private::elementName(const QString & element, QIcon::Mode mode)
-{
- QString prefix;
-
- switch (mode) {
- case QIcon::Normal:
- prefix = "normal-";
- break;
-
- case QIcon::Disabled:
- prefix = "disabled-";
- break;
-
- case QIcon::Selected:
- prefix = "selected-";
- break;
-
- case QIcon::Active:
- prefix = "active-";
- break;
-
- default:
- break;
-
- }
-
- if (theme.hasElement(prefix + element)) {
- return prefix + element;
- } else {
- return element;
- }
-}
-
-quint32 KIdenticonGenerator::Private::hash(const QString & data)
-{
- // qHash function doesn't give random enough results
- // and gives similar hashes for similar strings.
-
- QByteArray bytes = QCryptographicHash::hash(data.toUtf8(), QCryptographicHash::Md5);
-
- // Generating hash
- quint32 hash = 0;
-
- char * hashBytes = (char *) & hash;
- for (int i = 0; i < bytes.size(); i++) {
- // Using XOR for mixing the bytes because
- // it is fast and cryptographically safe
- // (more than enough for our use-case)
- hashBytes[i % 4] ^= bytes.at(i);
- }
-
- return hash;
-}
-
-KIdenticonGenerator * KIdenticonGenerator::Private::instance = NULL;
-
-KIdenticonGenerator * KIdenticonGenerator::self()
-{
- if (!Private::instance) {
- Private::instance = new KIdenticonGenerator();
- }
-
- return Private::instance;
-}
-
-KIdenticonGenerator::KIdenticonGenerator()
- : d(new Private())
-{
- // loading SVGs
- d->shapes.setImagePath("widgets/identiconshapes");
- d->shapes.setContainsMultipleImages(true);
-
- d->theme.setImagePath("widgets/identicontheme");
- d->theme.setContainsMultipleImages(true);
-}
-
-#define generateIconModes( PARAM ) \
- for (int omode = QIcon::Normal; omode <= QIcon::Selected; omode++) { \
- QIcon::Mode mode = (QIcon::Mode)omode; \
- result.addPixmap(generatePixmap(size, PARAM, mode), mode); \
- }
-
-QIcon KIdenticonGenerator::generate(int size, quint32 hash)
-{
- QIcon result;
- generateIconModes(hash);
- return result;
-}
-
-QIcon KIdenticonGenerator::generate(int size, const QString & data)
-{
- QIcon result;
- generateIconModes(data);
- return result;
-}
-
-QIcon KIdenticonGenerator::generate(int size, const QIcon & icon)
-{
- QIcon result;
- generateIconModes(icon);
- return result;
-}
-
-QPixmap KIdenticonGenerator::generatePixmap(int size, QString id, QIcon::Mode mode)
-{
- return generatePixmap(size, d->hash(id), mode);
-}
-
-QPixmap KIdenticonGenerator::generatePixmap(int size, quint32 hash, QIcon::Mode mode)
-{
- QPixmap pixmap(size, size);
- pixmap.fill(Qt::transparent);
-
- // Painting background and the pattern
- {
- QPainter painter(& pixmap);
- d->theme.paint(& painter, QRect(0, 0, size, size), d->elementName("background", mode));
- painter.drawPixmap(0, 0, d->generatePattern(size, hash, mode));
- painter.end();
- }
-
- // coloring the painted image
- QImage itmp = pixmap.toImage();
- KIconEffect::colorize(itmp, d->colorForHash(hash), 1.0);
- if (mode == QIcon::Disabled) {
- KIconEffect::toGray(itmp, 0.7);
- }
- pixmap = pixmap.fromImage(itmp);
-
- // Drawing the overlay
- {
- QPainter painter(& pixmap);
- d->theme.paint(& painter, QRect(0, 0, size, size), d->elementName("overlay", mode));
- }
-
- return pixmap;
-}
-
-QPixmap KIdenticonGenerator::generatePixmap(int size, const QIcon & icon, QIcon::Mode mode)
-{
- QPixmap pixmap(size, size);
- pixmap.fill(Qt::transparent);
-
- QRect paintRect(0, 0, size, size);
-
- // Painting background and the pattern
- QPainter painter(& pixmap);
- d->theme.paint(& painter, QRect(0, 0, size, size), d->elementName("background", mode));
-
- icon.paint(& painter, paintRect, Qt::AlignCenter, mode);
-
- painter.end();
-
- return pixmap;
-}
-
diff --git a/plasma/desktop/shell/activitymanager/kidenticongenerator.h b/plasma/desktop/shell/activitymanager/kidenticongenerator.h
deleted file mode 100644
index bbf31ada..00000000
--- a/plasma/desktop/shell/activitymanager/kidenticongenerator.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * Copyright 2010 Ivan Cukic
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library/Lesser General Public License
- * version 2, or (at your option) any later version, as published by the
- * Free Software Foundation
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library/Lesser General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#ifndef KIDENTICONGENERATOR_H
-#define KIDENTICONGENERATOR_H
-
-#include
-#include
-
-#include
-
-class KIdenticonGenerator {
-public:
- static KIdenticonGenerator * self();
-
- QPixmap generatePixmap(int size, QString id, QIcon::Mode mode = QIcon::Normal);
- QPixmap generatePixmap(int size, quint32 hash, QIcon::Mode mode = QIcon::Normal);
- QPixmap generatePixmap(int size, const QIcon & icon, QIcon::Mode mode = QIcon::Normal);
-
- QIcon generate(int size, const QString & data);
- QIcon generate(int size, quint32 hash);
- QIcon generate(int size, const QIcon & icon);
-
-private:
- KIdenticonGenerator();
-
- class Private;
- Private * const d;
-};
-
-#endif // KIDENTICONGENERATOR_H
diff --git a/plasma/desktop/shell/activitymanager/package/contents/ui/.directory b/plasma/desktop/shell/activitymanager/package/contents/ui/.directory
deleted file mode 100644
index ec379397..00000000
--- a/plasma/desktop/shell/activitymanager/package/contents/ui/.directory
+++ /dev/null
@@ -1,5 +0,0 @@
-[Dolphin]
-SortOrder=1
-Sorting=2
-Timestamp=2012,11,28,16,51,54
-Version=3
diff --git a/plasma/desktop/shell/activitymanager/package/contents/ui/ActivityDelegate.qml b/plasma/desktop/shell/activitymanager/package/contents/ui/ActivityDelegate.qml
deleted file mode 100644
index ac3d6240..00000000
--- a/plasma/desktop/shell/activitymanager/package/contents/ui/ActivityDelegate.qml
+++ /dev/null
@@ -1,322 +0,0 @@
-/*
- * Copyright 2011 Marco Martin
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License as
- * published by the Free Software Foundation; either version 2 or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-import QtQuick 1.1
-import org.kde.plasma.core 0.1 as PlasmaCore
-import org.kde.plasma.components 0.1 as PlasmaComponents
-import org.kde.qtextracomponents 0.1
-
-PlasmaCore.FrameSvgItem {
- id: background
-
- width: Math.max((delegateStack.currentPage ? delegateStack.currentPage.implicitWidth : 0) + margins.left + margins.right, list.delegateWidth)
- height: Math.max((delegateStack.currentPage ? delegateStack.currentPage.implicitHeight : 0) + margins.top + margins.bottom, list.delegateHeight)
-
- imagePath: "widgets/viewitem"
- prefix: Current ? (mainMouseArea.containsMouse ? "selected+hover" : "selected") : (mainMouseArea.containsMouse ? "hover" : "normal")
-
- ListView.onRemove: SequentialAnimation {
- PropertyAction {
- target: background
- property: "ListView.delayRemove"
- value: true
- }
- NumberAnimation {
- target: background
- property: "y"
- to: background.height
- duration: 250
- easing.type: Easing.InOutQuad
- }
- PropertyAction {
- target: background
- property: "ListView.delayRemove"
- value: false
- }
- }
-
- ListView.onAdd: NumberAnimation {
- target: background
- property: "y"
- from: -background.height
- to: 0
- duration: 250
- easing.type: Easing.InOutQuad
- }
-
- Behavior on width {
- NumberAnimation { duration: 250 }
- }
- Behavior on height {
- NumberAnimation { duration: 250 }
- }
-
- PlasmaComponents.PageStack {
- id: delegateStack
- anchors {
- fill: parent
- leftMargin: background.margins.left
- topMargin: background.margins.top
- rightMargin: background.margins.right
- bottomMargin: background.margins.bottom
- }
- clip: true
- initialPage: iconComponent
- }
-
- property Item mainMouseArea
- Component {
- id: iconComponent
- Item {
- anchors.fill: parent
-
- MouseArea {
- id: mouseArea
- anchors.fill: parent
- hoverEnabled: true
-
- onClicked: {
- var activityId = model["DataEngineSource"]
- var service = activitySource.serviceForSource(activityId)
- var operation = service.operationDescription("setCurrent")
- service.startOperationCall(operation)
- }
-
- Component.onCompleted: mainMouseArea = mouseArea
-
- QIconItem {
- id: iconWidget
- anchors.verticalCenter: parent.verticalCenter
- x: y
- width: theme.hugeIconSize
- height: width
- icon: QIcon(Icon)
- }
- QPixmapItem {
- anchors.fill: iconWidget
- pixmap: Icon ? undefined : activityManager.pixmapForActivity(model["DataEngineSource"])
- visible: Icon == ""
- }
- QIconItem {
- width: theme.mediumIconSize
- height: width
- anchors.centerIn: iconWidget
- icon: QIcon("media-playback-start")
- visible: model["State"] != "Running"
- }
- Column {
- anchors {
- left: iconWidget.right
- right: parent.right
- verticalCenter: parent.verticalCenter
-
- leftMargin: background.margins.left
- }
- PlasmaComponents.Label {
- id: titleText
- text: Name
- anchors.left: parent.left
- anchors.right: parent.right
- horizontalAlignment: Text.AlignHCenter
- height: paintedHeight
- wrapMode: Text.WordWrap
- //go with nowrap only if there is a single word too long
- onPaintedWidthChanged: {
- wrapTimer.restart()
- }
- Timer {
- id: wrapTimer
- interval: 200
- onTriggered: {
- //give it some pixels of tolerance
- if (titleText.paintedWidth > titleText.width + 3) {
- titleText.wrapMode = Text.NoWrap
- titleText.elide = Text.ElideRight
- } else {
- titleText.wrapMode = Text.WordWrap
- titleText.elide = Text.ElideNone
- }
- }
- }
- }
- Row {
- id: buttonsRow
- visible: model["State"] == "Running"
- anchors.horizontalCenter: parent.horizontalCenter
-
- PlasmaComponents.ToolButton {
- id: configureButton
- flat: false
- iconSource: "configure"
- onClicked: delegateStack.push(configurationComponent)
- }
- PlasmaComponents.ToolButton {
- visible: !model["Current"]
- iconSource: "media-playback-stop"
- flat: false
- onClicked: {
- var activityId = model["DataEngineSource"]
- var service = activitySource.serviceForSource(activityId)
- var operation = service.operationDescription("stop")
- service.startOperationCall(operation)
- }
- }
- }
- PlasmaComponents.ToolButton {
- visible: model["State"] != "Running"
- iconSource: "edit-delete"
- text: i18n("Delete")
- width: Math.min(implicitWidth, parent.width)
- anchors.horizontalCenter: parent.horizontalCenter
- onClicked: delegateStack.push(confirmationComponent)
- }
- }
- }
- }
- }
-
- Component {
- id: confirmationComponent
- MouseArea {
- anchors.fill: parent
-
- //20 is just a number arbitrarly low, won't be followed
- implicitWidth: (activityManager.orientation == Qt.Horizontal) ? confirmationLabel.paintedWidth : 20
- implicitHeight: (activityManager.orientation == Qt.Horizontal) ? 20 : confirmationColumn.childrenRect.height
-
- onClicked: delegateStack.pop()
- Column {
- id: confirmationColumn
- anchors.fill: parent
- spacing: 4
- PlasmaComponents.Label {
- id: confirmationLabel
- anchors {
- left: parent.left
- right: parent.right
- }
- horizontalAlignment: Text.AlignHCenter
- text: i18n("Remove activity %1?", Name)
- wrapMode: (activityManager.orientation == Qt.Horizontal) ? Text.NoWrap : Text.Wrap
- }
-
- PlasmaComponents.Button {
- anchors.horizontalCenter: parent.horizontalCenter
- text: i18n("Remove")
- onClicked: {
- var activityId = model["DataEngineSource"]
- var service = activitySource.serviceForSource(activityId)
- var operation = service.operationDescription("remove")
- operation["Id"] = activityId
- service.startOperationCall(operation)
- }
- }
- PlasmaComponents.Button {
- anchors.horizontalCenter: parent.horizontalCenter
- text: i18n("Cancel")
- onClicked: delegateStack.pop()
- }
- }
- }
- }
-
- Component {
- id: configurationComponent
- MouseArea {
- anchors.fill: parent
-
- //20 is just a number arbitrarly low, won't be followed
- implicitWidth: (activityManager.orientation == Qt.Horizontal) ? (iconButton.x*3 + iconButton.width + theme.defaultFont.mSize.width * 12) : 20
- // set the implicit height to a meaningful value, otherwise the layouting goes a little crazy :)
- implicitHeight: iconButton.y*3
-
- onClicked: delegateStack.pop()
- PlasmaComponents.Button {
- id: iconButton
- iconSource: Icon
- anchors {
- top: configurationLayout.top
- bottom: configurationLayout.bottom
- }
- x: y
- width: height
- QPixmapItem {
- anchors.centerIn: parent
- width: theme.largeIconSize
- height: width
- smooth: true
- visible: iconButton.iconSource == ""
- pixmap: visible ? undefined : activityManager.pixmapForActivity(model["DataEngineSource"])
- }
- onClicked: iconSource = activityManager.chooseIcon()
- }
- Column {
- id: configurationLayout
- anchors {
- left: iconButton.right
- verticalCenter: parent.verticalCenter
- right: parent.right
- leftMargin: iconButton.x
- rightMargin: iconButton.x
- }
- spacing: 4
- PlasmaComponents.TextField {
- id: activityNameField
- text: Name
- anchors {
- left: parent.left
- right: parent.right
- }
- }
-
- PlasmaComponents.Button {
- anchors.horizontalCenter: parent.horizontalCenter
- text: i18n("Apply")
- onClicked: {
- var activityId = model["DataEngineSource"]
- var service = activitySource.serviceForSource(activityId)
-
- var operation = service.operationDescription("setName")
- operation["Name"] = activityNameField.text
- service.startOperationCall(operation)
-
- var operation = service.operationDescription("setIcon")
- operation["Icon"] = iconButton.iconSource
- service.startOperationCall(operation)
-
- delegateStack.pop()
- }
- anchors {
- left: parent.left
- right: parent.right
- }
- }
- PlasmaComponents.Button {
- anchors.horizontalCenter: parent.horizontalCenter
- text: i18n("Cancel")
- onClicked: delegateStack.pop()
- anchors {
- left: parent.left
- right: parent.right
- }
- }
- }
- }
- }
-}
diff --git a/plasma/desktop/shell/activitymanager/package/contents/ui/main.qml b/plasma/desktop/shell/activitymanager/package/contents/ui/main.qml
deleted file mode 100644
index f59874c2..00000000
--- a/plasma/desktop/shell/activitymanager/package/contents/ui/main.qml
+++ /dev/null
@@ -1,305 +0,0 @@
-/*
- * Copyright 2011 Marco Martin
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License as
- * published by the Free Software Foundation; either version 2 or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-import QtQuick 1.1
-import org.kde.plasma.components 0.1 as PlasmaComponents
-import org.kde.plasma.core 0.1 as PlasmaCore
-import org.kde.qtextracomponents 0.1
-
-Item {
- id: main
-
- //this is used to perfectly align the filter field and delegates
- property int cellWidth: theme.defaultFont.mSize.width * 20
-
- property int minimumWidth: cellWidth + (
- activityManager.orientation == Qt.Horizontal
- ? 0
- : (scrollBar.width + 4 * 2) // 4 * 2 == left and right margins
- )
- property int minimumHeight: topBar.height + list.delegateHeight + (activityManager.orientation == Qt.Horizontal ? scrollBar.height : 0) + 4
-
-
- PlasmaCore.DataSource {
- id: activitySource
- engine: "org.kde.activities"
- onSourceAdded: {
- if (source != "Status") {
- connectSource(source)
- }
- }
- Component.onCompleted: {
- connectedSources = sources.filter(function(val) {
- return val != "Status";
- })
- }
- }
-
- PlasmaComponents.ContextMenu {
- id: newActivityMenu
- visualParent: topBar.newActivityButton
- PlasmaComponents.MenuItem {
- id: templatesItem
- text: i18n("Templates")
- onClicked: activityTemplatesMenu.open()
- }
- PlasmaComponents.MenuItem {
- icon: QIcon("user-desktop")
- text: i18n("Empty Desktop")
- onClicked: activityManager.createActivity("desktop")
- }
- PlasmaComponents.MenuItem {
- icon: QIcon("edit-copy")
- text: i18n("Clone current activity")
- onClicked: activityManager.cloneCurrentActivity()
- }
- }
-
-
- PlasmaComponents.ContextMenu {
- id: activityTemplatesMenu
- visualParent: templatesItem
- }
- Repeater {
- parent: activityTemplatesMenu
- model: activityManager.activityTypeActions
- delegate: PlasmaComponents.MenuItem {
- icon: QIcon(modelData.icon)
- text: modelData.text
- separator: modelData.separator
- onClicked: {
- //is a plugin?
- if (modelData.pluginName) {
- activityManager.createActivity(modelData.pluginName)
- //is a script?
- } else if (modelData.scriptFile) {
- activityManager.createActivityFromScript(modelData.scriptFile, modelData.text, modelData.icon, modelData.startupApps)
- //invoke ghns
- } else {
- activityManager.downloadActivityScripts()
- }
- }
- Component.onCompleted: {
- parent = activityTemplatesMenu
- }
- }
- }
-
-
- Loader {
- id: topBar
- property string query
- property Item newActivityButton
-
- sourceComponent: (activityManager.orientation == Qt.Horizontal) ? horizontalTopBarComponent : verticalTopBarComponent
- height: item.height + 2
- anchors {
- top: parent.top
- left: parent.left
- right: parent.right
-
- topMargin: activityManager.orientation == Qt.Horizontal ? 4 : 0
- leftMargin: 4
- }
- }
- Component {
- id: horizontalTopBarComponent
- Item {
- anchors {
- top: parent.top
- left:parent.left
- right: parent.right
- }
- height: filterField.height
-
- PlasmaComponents.TextField {
- id: filterField
- anchors {
- left: parent.left
- leftMargin: 2
- }
- width: list.width / Math.floor(list.width / cellWidth) - 4
- clearButtonShown: true
- onTextChanged: topBar.query = text
- placeholderText: i18n("Enter search term...")
- Component.onCompleted: forceActiveFocus()
- }
-
- Row {
- anchors.right: parent.right
- spacing: 4
- PlasmaComponents.Button {
- id: newActivityButton
- visible: activityManager.canAddActivities
- iconSource: "list-add"
- text: i18n("Create activity...")
- onClicked: newActivityMenu.open()
- }
- PlasmaComponents.Button {
- iconSource: "plasma"
- visible: activityManager.canAddWidgets
- text: i18n("Add widgets")
- onClicked: activityManager.addWidgetsRequested()
- }
- PlasmaComponents.ToolButton {
- iconSource: "window-close"
- onClicked: activityManager.closeClicked()
- }
- }
- Component.onCompleted: {
- topBar.newActivityButton = newActivityButton
- }
- }
- }
- Component {
- id: verticalTopBarComponent
- Column {
- spacing: 4
- anchors {
- top: parent.top
- left:parent.left
- right: parent.right
- }
-
- PlasmaComponents.ToolButton {
- anchors.right: parent.right
- iconSource: "window-close"
- onClicked: activityManager.closeClicked()
- }
-
- PlasmaComponents.TextField {
- id: filterField
- anchors {
- left: parent.left
- right: parent.right
- }
- clearButtonShown: true
- onTextChanged: topBar.query = text
- placeholderText: i18n("Enter search term...")
- Component.onCompleted: forceActiveFocus()
- }
-
- PlasmaComponents.Button {
- id: newActivityButton
- anchors {
- left: parent.left
- right: parent.right
- }
- iconSource: "list-add"
- text: i18n("Create activity...")
- onClicked: newActivityMenu.open()
- }
- Component.onCompleted: {
- topBar.newActivityButton = newActivityButton
- }
- }
- }
-
- MouseEventListener {
- id: listParent
- anchors {
- top: topBar.bottom
- left: parent.left
- right: activityManager.orientation == Qt.Horizontal
- ? parent.right
- : (scrollBar.visible ? scrollBar.left : parent.right)
- bottom: activityManager.orientation == Qt.Horizontal ? scrollBar.top : bottomBar.top
- leftMargin: 4
- bottomMargin: 4
- }
- onWheelMoved: {
- //use this only if the wheel orientation is vertical and the list orientation is horizontal, otherwise will be the list itself managing the wheel
- if (wheel.orientation == Qt.Vertical && list.orientation == ListView.Horizontal) {
- var delta = wheel.delta > 0 ? 20 : -20
- list.contentX = Math.min(Math.max(0, list.contentWidth - list.width),
- Math.max(0, list.contentX - delta))
- }
- }
- ListView {
- id: list
-
- property int delegateWidth: (activityManager.orientation == Qt.Horizontal) ? (list.width / Math.floor(list.width / cellWidth)) : list.width
- property int delegateHeight: theme.defaultFont.mSize.height * 7 - 4
-
-
- anchors.fill: parent
-
- orientation: activityManager.orientation == Qt.Horizontal ? ListView.Horizontal : ListView.vertical
- snapMode: ListView.SnapToItem
- model: PlasmaCore.SortFilterModel {
- sourceModel: PlasmaCore.DataModel {
- dataSource: activitySource
- }
- filterRole: "Name"
- filterRegExp: ".*"+topBar.query+".*"
- }
- clip: activityManager.orientation == Qt.Vertical
-
- delegate: ActivityDelegate {}
- }
- }
- PlasmaComponents.ScrollBar {
- id: scrollBar
- orientation: activityManager.orientation == Qt.Horizontal ? ListView.Horizontal : ListView.Vertical
- anchors {
- top: activityManager.orientation == Qt.Horizontal ? undefined : listParent.top
- bottom: activityManager.orientation == Qt.Horizontal ? parent.bottom : bottomBar.top
- left: activityManager.orientation == Qt.Horizontal ? parent.left : undefined
- right: parent.right
- }
- flickableItem: list
- }
-
- Loader {
- id: bottomBar
-
- sourceComponent: (activityManager.orientation == Qt.Horizontal) ? undefined : verticalBottomBarComponent
- height: item.height
- anchors {
- left: parent.left
- right: parent.right
- bottom: parent.bottom
- leftMargin: 4
- }
- }
-
- Component {
- id: verticalBottomBarComponent
- Column {
- anchors {
- left: parent.left
- right: parent.right
- bottom: parent.bottom
- }
-
- spacing: 4
-
- PlasmaComponents.Button {
- anchors {
- left: parent.left
- right: parent.right
- }
- iconSource: "plasma"
- visible: activityManager.canAddWidgets
- text: i18n("Add widgets")
- onClicked: activityManager.addWidgetsRequested()
- }
- }
- }
-}
diff --git a/plasma/desktop/shell/activitymanager/package/metadata.desktop b/plasma/desktop/shell/activitymanager/package/metadata.desktop
deleted file mode 100644
index 84a2428d..00000000
--- a/plasma/desktop/shell/activitymanager/package/metadata.desktop
+++ /dev/null
@@ -1,60 +0,0 @@
-[Desktop Entry]
-Encoding=UTF-8
-Keywords=
-Name=Activity manager for the desktop
-Name[bs]=Aktivnost menadžera za desktop
-Name[ca]=Gestor d'activitats per l'escriptori
-Name[ca@valencia]=Gestor d'activitats per l'escriptori
-Name[cs]=Správce aktivit pro pracovní plochu
-Name[da]=Aktivitetshåndtering til desktoppen
-Name[de]=Aktivitätenverwaltung für die Arbeitsfläche
-Name[el]=Διαχειριστής δραστηριοτήτων για την επιφάνεια εργασίας
-Name[en_GB]=Activity manager for the desktop
-Name[es]=Gestor de actividades para el escritorio
-Name[et]=Töölaua tegevuste haldur
-Name[eu]=Mahaigainerako jarduera-kudeatzailea
-Name[fi]=Työpöydän aktiviteettienhallinta
-Name[fr]=Gestionnaire d'activités pour le bureau
-Name[gl]=Xestor de actividades para dispositivos o escritorio
-Name[he]=מנהל משימות עבור שולחן העבודה
-Name[hu]=Aktivitáskezelő az asztalhoz
-Name[ia]=Un gerente de activitate per le scriptorio
-Name[kk]=Осы үстелдің белсенділік менеджері
-Name[km]=កម្មវិធីគ្រប់គ្រងសកម្មផាពសម្រាប់ផ្ទៃតុ
-Name[ko]=데스크톱 활동 관리자
-Name[lt]=Darbastalio veiklos tvarkytuvė
-Name[mr]=डेस्कटॉप करिता कार्यपध्दती व्यवस्थापक
-Name[nb]=Aktivitetsbehandler for skrivebordet
-Name[nds]=Aktivitetenpleger för den Schriefdisch
-Name[nl]=Activiteitenbeheerder voor het bureaublad
-Name[pa]=ਡੈਸਕਟਾਪ ਲਈ ਸਰਗਰਮੀ ਮੈਨੇਜਰ
-Name[pl]=Zarządzanie działaniami dla pulpitu
-Name[pt]=Gestor de actividades para o ecrã
-Name[pt_BR]=Gerenciador de atividades para a área de trabalho
-Name[ro]=Gestionar de activități pentru birou
-Name[ru]=Диспетчер комнат для рабочего стола
-Name[sk]=Správca aktivít pre plochu
-Name[sl]=Upravljalnik dejavnosti za namizje
-Name[sr]=Менаџер активности за површ
-Name[sr@ijekavian]=Менаџер активности за површ
-Name[sr@ijekavianlatin]=Menadžer aktivnosti za površ
-Name[sr@latin]=Menadžer aktivnosti za površ
-Name[sv]=Aktivitetshanterare för skrivbordet
-Name[tr]=Masaüstü için etkinlik yöneticisi
-Name[uk]=Керування просторами дій для стільниці
-Name[vi]=Trình quản lý Hoạt động cho máy tính
-Name[x-test]=xxActivity manager for the desktopxx
-Name[zh_CN]=桌面的活动管理器
-Name[zh_TW]=桌面使用的活動管理員
-Type=Service
-
-X-KDE-ServiceTypes=Plasma/GenericPackage
-X-KDE-ParentApp=
-X-KDE-PluginInfo-Author=Marco Martin
-X-KDE-PluginInfo-Category=
-X-KDE-PluginInfo-Email=mart@kde.org
-X-KDE-PluginInfo-License=GPL
-X-KDE-PluginInfo-Name=org.kde.desktop.activitymanager
-X-KDE-PluginInfo-Version=
-X-KDE-PluginInfo-Website=
-X-Plasma-MainScript=ui/main.qml
diff --git a/plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.photoActivity/contents/layout.js b/plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.photoActivity/contents/layout.js
deleted file mode 100644
index 7ffc5ba3..00000000
--- a/plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.photoActivity/contents/layout.js
+++ /dev/null
@@ -1,15 +0,0 @@
-var activity = new Activity
-activity.name = i18n("Photos Activity")
-
-var pictures = userDataPath("pictures")
-
-var folderview = activity.addWidget("folderview")
-folderview.writeConfig("url", pictures)
-
-var frame = activity.addWidget("frame")
-frame.writeConfig("slideshow", true)
-frame.writeConfig("recursive slideshow", true)
-frame.writeConfig("slideshow paths", pictures)
-frame.writeConfig("slideshow time", 300)
-frame.writeConfig("random", true)
-
diff --git a/plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.photoActivity/metadata.desktop b/plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.photoActivity/metadata.desktop
deleted file mode 100644
index d46cd51c..00000000
--- a/plasma/desktop/shell/data/layouts/org.kde.plasma-desktop.photoActivity/metadata.desktop
+++ /dev/null
@@ -1,72 +0,0 @@
-[Desktop Entry]
-Encoding=UTF-8
-Name=Photos Activity
-Name[ar]=أنشطة الصور
-Name[ast]=Photos Activity
-Name[bs]=Aktivnost fotografija
-Name[ca]=Activitat de fotos
-Name[ca@valencia]=Activitat de fotos
-Name[cs]=Aktivita fotografií
-Name[da]=Fotoaktivitet
-Name[de]=Aktivität Fotos
-Name[el]=Δραστηριότητα φωτογραφιών
-Name[en_GB]=Photos Activity
-Name[es]=Actividad de fotos
-Name[et]=Fototegevus
-Name[eu]=Argazki-jarduera
-Name[fi]=Valokuva-aktiviteetti
-Name[fr]=Activité photos
-Name[gl]=Fotografía
-Name[he]=פעילות תמונות
-Name[hi]=फोटो क्रियाएँ
-Name[hr]=Fotografska aktivnost
-Name[hu]=Fényképek aktivitás
-Name[ia]=Activitate de photos
-Name[is]=Ljósmyndavirkni
-Name[ja]=フォトアクティビティ
-Name[kk]=Фотомен айналысу
-Name[km]=សកម្មភាពរូបថត
-Name[ko]=사진 활동
-Name[lt]=Nuotraukų veikla
-Name[lv]=Aktivitāte 'Fotogrāfijas'
-Name[mr]=फोटो कार्यपध्दती
-Name[nb]=Foto-aktivitet
-Name[nds]=Foto-Akschonen
-Name[nl]=Activiteit met foto's
-Name[pa]=ਫੋਟੋ ਸਰਗਰਮੀ
-Name[pl]=Działania na zdjęciach
-Name[pt]=Actividade de Fotografias
-Name[pt_BR]=Atividade fotográfica
-Name[ro]=Activitate fotografică
-Name[ru]=Фотокомната
-Name[sk]=Aktivita pre fotografie
-Name[sl]=Dejavnost Fotografije
-Name[sr]=Активност фотографија
-Name[sr@ijekavian]=Активност фотографија
-Name[sr@ijekavianlatin]=Aktivnost fotografija
-Name[sr@latin]=Aktivnost fotografija
-Name[sv]=Fotoaktivitet
-Name[th]=ความเคลื่อนไหวของรูปภาพ
-Name[tr]=Fotoğraf Etkinliği
-Name[ug]=سۈرەت پائالىيىتى
-Name[uk]=Простір дій фотографій
-Name[wa]=Activité fotos
-Name[x-test]=xxPhotos Activityxx
-Name[zh_CN]=照片活动
-Name[zh_TW]=相片活動
-Icon=digikam
-Type=Service
-ServiceTypes=Plasma/LayoutTemplate
-X-Plasma-Shell=plasma-desktop
-X-Plasma-ContainmentCategories=desktop
-X-Plasma-ContainmentLayout-ExecuteOnCreation=gwenview $pictures,digikam
-X-Plasma-ContainmentLayout-ShowAsExisting=true
-X-KDE-PluginInfo-Author=Chani Armitage
-X-KDE-PluginInfo-Email=chani@kde.org
-X-KDE-PluginInfo-Name=org.kde.plasma-desktop.photoActivity
-X-KDE-PluginInfo-Version=1.0
-X-KDE-PluginInfo-Website=http://plasma.kde.org/
-X-KDE-PluginInfo-Category=
-X-KDE-PluginInfo-Depends=
-X-KDE-PluginInfo-License=GPL
-X-KDE-PluginInfo-EnabledByDefault=true
diff --git a/plasma/generic/applets/CMakeLists.txt b/plasma/generic/applets/CMakeLists.txt
index 784cc5f9..8b717120 100644
--- a/plasma/generic/applets/CMakeLists.txt
+++ b/plasma/generic/applets/CMakeLists.txt
@@ -1,4 +1,3 @@
-add_subdirectory(activitybar)
add_subdirectory(icon)
add_subdirectory(lock_logout)
add_subdirectory(panelspacer)
diff --git a/plasma/generic/applets/activitybar/CMakeLists.txt b/plasma/generic/applets/activitybar/CMakeLists.txt
deleted file mode 100644
index 51a2edb0..00000000
--- a/plasma/generic/applets/activitybar/CMakeLists.txt
+++ /dev/null
@@ -1,17 +0,0 @@
-# Project Needs a name ofcourse
-project(plasma-activitybar)
-include_directories(${KDEBASE_WORKSPACE_SOURCE_DIR}/libs/kworkspace)
-
-# We add our source code here
-set(activitybar_SRCS activitybar.cpp)
-
-# Now make sure all files get to the right place
-kde4_add_plugin(plasma_applet_activitybar ${activitybar_SRCS})
-target_link_libraries(plasma_applet_activitybar
- plasma ${KDE4_KDEUI_LIBS} kworkspace)
-
-install(TARGETS plasma_applet_activitybar
- DESTINATION ${PLUGIN_INSTALL_DIR})
-
-install(FILES plasma-applet-activitybar.desktop
- DESTINATION ${SERVICES_INSTALL_DIR})
diff --git a/plasma/generic/applets/activitybar/Messages.sh b/plasma/generic/applets/activitybar/Messages.sh
deleted file mode 100644
index 1f26347c..00000000
--- a/plasma/generic/applets/activitybar/Messages.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/bin/bash
-$XGETTEXT *.cpp -o $podir/plasma_applet_activitybar.pot
diff --git a/plasma/generic/applets/activitybar/activitybar.cpp b/plasma/generic/applets/activitybar/activitybar.cpp
deleted file mode 100644
index e66bf04b..00000000
--- a/plasma/generic/applets/activitybar/activitybar.cpp
+++ /dev/null
@@ -1,372 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2008 by Marco Martin *
- * Copyright (C) 2010 by Chani Armitage *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
- ***************************************************************************/
-
-#include "activitybar.h"
-
-#include
-#include
-
-#include
-#include
-#include
-
-#include
-#include
-#include
-#include
-#include
-#include
-
-ActivityBar::ActivityBar(QObject *parent, const QVariantList &args)
- : Plasma::Applet(parent, args),
- m_engine(0)
-{
- resize(200, 60);
- setAspectRatioMode(Plasma::IgnoreAspectRatio);
- setSizePolicy(QSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding));
-}
-
-
-ActivityBar::~ActivityBar()
-{
-}
-
-void ActivityBar::init()
-{
- QGraphicsLinearLayout *layout = new QGraphicsLinearLayout(this);
- m_tabBar = new Plasma::TabBar(this);
- m_tabBar->nativeWidget()->setDrawBase(false);
- layout->addItem(m_tabBar);
- layout->setContentsMargins(0,0,0,0);
- //layout->setSizePolicy(QSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding));
-
- //This is an awful hack, but I need to keep the old behaviour for plasma-netbook
- //while using the new activity API for plasma-desktop.
- //TODO 4.6 convert netbook to the activity API so we won't need this
- if (qApp->applicationName() == "plasma-desktop") {
- m_engine = dataEngine("org.kde.activities");
- Plasma::DataEngine::Data data = m_engine->query("Status");
- QStringList activities = data["Running"].toStringList();
- //kDebug() << "$$$$$$$$$$$$# sources:" << activities.size();
- foreach (const QString &id, activities) {
- insertActivity(id);
- }
- m_engine->connectAllSources(this);
- connect(m_engine, SIGNAL(sourceAdded(QString)), this, SLOT(activityAdded(QString)));
- connect(m_engine, SIGNAL(sourceRemoved(QString)), this, SLOT(activityRemoved(QString)));
- connect(m_tabBar, SIGNAL(currentChanged(int)), this, SLOT(switchActivity(int)));
- } else {
- m_tabBar->nativeWidget()->installEventFilter(this);
- if (containment()) {
- Plasma::Corona *c = containment()->corona();
-
- if (!c) {
- kDebug() << "No corona, can't happen";
- setFailedToLaunch(true);
- return;
- }
-
- QList containments = c->containments();
- foreach (Plasma::Containment *cont, containments) {
- if (cont->containmentType() == Plasma::Containment::PanelContainment || cont->containmentType() == Plasma::Containment::CustomPanelContainment || c->offscreenWidgets().contains(cont)) {
- continue;
- }
-
- insertContainment(cont);
-
- connect(cont, SIGNAL(destroyed(QObject*)), this, SLOT(containmentDestroyed(QObject*)));
- connect(cont, SIGNAL(screenChanged(int,int,Plasma::Containment*)), this, SLOT(screenChanged(int,int,Plasma::Containment*)));
- connect(cont, SIGNAL(contextChanged(Plasma::Context*)), this, SLOT(contextChanged(Plasma::Context*)));
- }
-
- connect(c, SIGNAL(containmentAdded(Plasma::Containment*)), this, SLOT(containmentAdded(Plasma::Containment*)));
- }
-
- connect(m_tabBar, SIGNAL(currentChanged(int)), this, SLOT(switchContainment(int)));
-
- connect(KWindowSystem::self(), SIGNAL(currentDesktopChanged(int)), this, SLOT(currentDesktopChanged(int)));
- }
-
- setPreferredSize(m_tabBar->nativeWidget()->sizeHint());
- emit sizeHintChanged(Qt::PreferredSize);
-}
-
-void ActivityBar::insertContainment(Plasma::Containment *cont)
-{
- QList::iterator i = m_containments.begin();
- int index = 0;
- int myScreen = containment()->screen();
-
- for (; i != m_containments.end(); ++i) {
- if (cont->id() < (*i)->id()) {
- m_containments.insert(i, cont);
- break;
- }
- ++index;
- }
- if (i == m_containments.end()) {
- m_containments.append(cont);
- }
-
- if (cont->activity().isNull()) {
- m_tabBar->insertTab(index, cont->name());
- } else {
- m_tabBar->insertTab(index, cont->activity());
- }
-
- QString iconName = cont->icon();
-
- if (!iconName.isEmpty() && iconName != "user-desktop") {
- m_tabBar->nativeWidget()->setTabIcon(index, KIcon(iconName));
- }
-
- if (cont->screen() != -1 &&
- cont->screen() == myScreen &&
- (cont->desktop() == -1 || cont->desktop() == KWindowSystem::currentDesktop()-1)) {
- m_tabBar->setCurrentIndex(index);
- }
-}
-
-void ActivityBar::insertActivity(const QString &id)
-{
- //assumption: activities are always added at the end of the list
- //kDebug() << "activity" << id;
- m_activities.append(id);
- m_tabBar->addTab(QString()); //name will be added on dataUpdated
-}
-
-void ActivityBar::constraintsEvent(Plasma::Constraints constraints)
-{
- if (constraints & Plasma::FormFactorConstraint ||
- constraints & Plasma::SizeConstraint) {
- if ((formFactor() == Plasma::Vertical ||
- size().height() > size().width()) &&
- m_tabBar->nativeWidget()->shape() != QTabBar::RoundedWest) {
- m_tabBar->nativeWidget()->setShape(QTabBar::RoundedWest);
- } else if (m_tabBar->nativeWidget()->shape() != QTabBar::RoundedNorth &&
- (formFactor() == Plasma::Horizontal ||
- size().height() <= size().width())) {
- m_tabBar->nativeWidget()->setShape(QTabBar::RoundedNorth);
- } else {
- return;
- }
-
- setPreferredSize(m_tabBar->nativeWidget()->sizeHint());
- setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding));
- emit sizeHintChanged(Qt::PreferredSize);
- }
-}
-
-bool ActivityBar::eventFilter(QObject *watched, QEvent *event)
-{
- //request an activate also if the user clicks on the current active tab
- if (watched == m_tabBar->nativeWidget() && event->type() == QEvent::MouseButtonRelease) {
- QMouseEvent *me = static_cast(event);
- switchContainment(m_tabBar->nativeWidget()->tabAt(me->pos()));
- }
- return false;
-}
-
-void ActivityBar::switchContainment(int newActive)
-{
- Plasma::Containment *ownCont = containment();
- if (!ownCont || newActive > m_containments.count()-1 || newActive < 0) {
- return;
- }
- Plasma::Corona *c = containment()->corona();
- if (!c) {
- return;
- }
-
-
- Plasma::Containment *oldCont = c->containmentForScreen(ownCont->screen(), KWindowSystem::currentDesktop() - 1);
-
- if (oldCont) {
- m_containments[newActive]->setScreen(oldCont->screen(), oldCont->desktop());
- } else {
- m_containments[newActive]->setScreen(ownCont->screen(), ownCont->desktop());
- }
-}
-
-void ActivityBar::switchActivity(int newActive)
-{
- if (newActive >= m_activities.count() || newActive < 0) {
- return;
- }
- Plasma::Service *service = m_engine->serviceForSource(m_activities.at(newActive));
- KConfigGroup op = service->operationDescription("setCurrent");
- Plasma::ServiceJob *job = service->startOperationCall(op);
- connect(job, SIGNAL(finished(KJob*)), service, SLOT(deleteLater()));
-}
-
-void ActivityBar::currentDesktopChanged(const int currentDesktop)
-{
- Plasma::Corona *c = containment()->corona();
- if (!c) {
- return;
- }
-
- //-1 because kwindowsystem counts desktop from 1 :)
- Plasma::Containment *cont = c->containmentForScreen(containment()->screen(), currentDesktop - 1);
-
- if (!cont) {
- return;
- }
-
- int index = m_containments.indexOf(cont);
-
- if (index != -1) {
- m_tabBar->setCurrentIndex(index);
- }
-}
-
-void ActivityBar::containmentAdded(Plasma::Containment *cont)
-{
- if (cont->containmentType() == Plasma::Containment::PanelContainment ||
- cont->containmentType() == Plasma::Containment::CustomPanelContainment ||
- m_containments.contains(cont) || (containment() && containment()->corona()->offscreenWidgets().contains(cont))) {
- return;
- }
-
- insertContainment(cont);
-
- connect(cont, SIGNAL(destroyed(QObject*)), this, SLOT(containmentDestroyed(QObject*)));
- connect(cont, SIGNAL(screenChanged(int,int,Plasma::Containment*)), this, SLOT(screenChanged(int,int,Plasma::Containment*)));
- connect(cont, SIGNAL(contextChanged(Plasma::Context*)), this, SLOT(contextChanged(Plasma::Context*)));
-
- setPreferredSize(m_tabBar->nativeWidget()->sizeHint());
- emit sizeHintChanged(Qt::PreferredSize);
-}
-
-void ActivityBar::activityAdded(const QString &id)
-{
- insertActivity(id);
- m_engine->connectSource(id, this);
-
- setPreferredSize(m_tabBar->nativeWidget()->sizeHint());
- emit sizeHintChanged(Qt::PreferredSize);
-}
-
-void ActivityBar::containmentDestroyed(QObject *obj)
-{
- Plasma::Containment *destroyedContainment = static_cast(obj);
-
- int index = m_containments.indexOf(destroyedContainment);
- if (index != -1) {
- m_containments.removeAt(index);
- m_tabBar->blockSignals(true);
- m_tabBar->removeTab(index);
- m_tabBar->blockSignals(false);
- }
-
- setPreferredSize(m_tabBar->nativeWidget()->sizeHint());
- emit sizeHintChanged(Qt::PreferredSize);
-}
-
-void ActivityBar::activityRemoved(const QString &id)
-{
- int index = m_activities.indexOf(id);
- if (index < 0) {
- return;
- }
-
- m_activities.removeAt(index);
-
- m_tabBar->blockSignals(true);
- m_tabBar->removeTab(index);
- m_tabBar->blockSignals(false);
-
- setPreferredSize(m_tabBar->nativeWidget()->sizeHint());
- emit sizeHintChanged(Qt::PreferredSize);
-}
-
-void ActivityBar::screenChanged(int wasScreen, int isScreen, Plasma::Containment *cont)
-{
- Q_UNUSED(wasScreen)
- //Q_UNUSED(isScreen)
-
- int index = m_containments.indexOf(cont);
-
- //FIXME: how is supposed to work containment()->desktop() when the pervirtialthing is off?
- if (index != -1 &&
- containment()->screen() == isScreen &&
- (cont->desktop() == -1 || cont->desktop() == KWindowSystem::currentDesktop()-1)) {
- m_tabBar->setCurrentIndex(index);
- }
-}
-
-void ActivityBar::contextChanged(Plasma::Context *context)
-{
- Plasma::Containment *cont = qobject_cast(sender());
-
- if (!cont) {
- return;
- }
-
- int index = m_containments.indexOf(cont);
- if (index != -1) {
- m_tabBar->setTabText(index, context->currentActivity());
- }
-}
-
-void ActivityBar::dataUpdated(const QString &source, const Plasma::DataEngine::Data &data)
-{
- //kDebug() << "$$$$$$$$$$$$$$$$$$$" << source;
- if (source == "Status") {
- //special source, not used yet
- return;
- }
-
- int index = m_activities.indexOf(source);
- if (data["State"].toString() == "Stopped") {
- if (index >= 0) {
- //take it out
- m_activities.removeAt(index);
- m_tabBar->blockSignals(true);
- m_tabBar->removeTab(index);
- m_tabBar->blockSignals(false);
-
- setPreferredSize(m_tabBar->nativeWidget()->sizeHint());
- emit sizeHintChanged(Qt::PreferredSize);
- }
- return;
- } else if (index < 0) {
- //add it back in
- index = m_activities.size();
- insertActivity(source);
- }
-
- //update the actual content
- m_tabBar->setTabText(index, data["Name"].toString().replace('&', "&&"));
-
- QString iconName = data["Icon"].toString();
- if (!iconName.isEmpty() && iconName != "user-desktop") {
- m_tabBar->nativeWidget()->setTabIcon(index, KIcon(iconName));
- }
-
- if (data["Current"].toBool()) {
- m_tabBar->setCurrentIndex(index);
- }
-
- setPreferredSize(m_tabBar->nativeWidget()->sizeHint());
- emit sizeHintChanged(Qt::PreferredSize);
-}
-
-#include "activitybar.moc"
diff --git a/plasma/generic/applets/activitybar/activitybar.h b/plasma/generic/applets/activitybar/activitybar.h
deleted file mode 100644
index b95cb0c8..00000000
--- a/plasma/generic/applets/activitybar/activitybar.h
+++ /dev/null
@@ -1,72 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2008 by Marco Martin *
- * Copyright (C) 2010 by Chani Armitage *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
- ***************************************************************************/
-
-#ifndef ACTIVITYBAR_H
-#define ACTIVITYBAR_H
-
-
-#include
-#include
-
-namespace Plasma
-{
- class TabBar;
- class Containment;
-}
-
-class ActivityBar : public Plasma::Applet
-{
-Q_OBJECT
-public:
- ActivityBar(QObject *parent, const QVariantList &args);
- ~ActivityBar();
-
- void init();
- void constraintsEvent(Plasma::Constraints constraints);
- //insert in m_containments, keeping it ordered by id()
- void insertContainment(Plasma::Containment *cont);
- void insertActivity(const QString &id);
-
-protected:
- bool eventFilter(QObject *watched, QEvent *event);
-
-private Q_SLOTS:
- void switchContainment(int newActive);
- void containmentAdded(Plasma::Containment *containment);
- void containmentDestroyed(QObject *obj);
- void screenChanged(int wasScreen, int isScreen, Plasma::Containment *containment);
- void contextChanged(Plasma::Context *context);
- void currentDesktopChanged(const int currentDesktop);
-
- void switchActivity(int newActive);
- void activityAdded(const QString &id);
- void activityRemoved(const QString &id);
- void dataUpdated(const QString &source, const Plasma::DataEngine::Data &data);
-
-private:
- Plasma::TabBar *m_tabBar;
- QList m_containments;
- QStringList m_activities;
- Plasma::DataEngine *m_engine;
-};
-
-
-K_EXPORT_PLASMA_APPLET(activitybar, ActivityBar)
-#endif
diff --git a/plasma/generic/applets/activitybar/plasma-applet-activitybar.desktop b/plasma/generic/applets/activitybar/plasma-applet-activitybar.desktop
deleted file mode 100644
index f158f7bc..00000000
--- a/plasma/generic/applets/activitybar/plasma-applet-activitybar.desktop
+++ /dev/null
@@ -1,160 +0,0 @@
-[Desktop Entry]
-Name=Activity Bar
-Name[ar]=شريط الأنشطة
-Name[ast]=Barra de xera
-Name[be@latin]=Panel zaniatkaŭ
-Name[bg]=Лента за активност
-Name[bs]=traka aktivnosti
-Name[ca]=Barra d'activitat
-Name[ca@valencia]=Barra d'activitat
-Name[cs]=Pruh aktivit
-Name[da]=Aktivitetslinje
-Name[de]=Aktivitätsleiste
-Name[el]=Γραμμή δραστηριότητας
-Name[en_GB]=Activity Bar
-Name[eo]=Aktiveca Nivelo
-Name[es]=Barra de actividad
-Name[et]=Tegevusriba
-Name[eu]=Jarduera-barra
-Name[fi]=Aktiviteettipalkki
-Name[fr]=Barre d'activités
-Name[fy]=Aktiviteitsbalke
-Name[ga]=Barra Gníomhaíochta
-Name[gl]=Barra de actividades
-Name[gu]=ક્રિયા પટ્ટી
-Name[he]=סרגל פעילויות
-Name[hi]=कार्य पट्टी
-Name[hne]=सक्रियता पट्टी
-Name[hr]=Traka aktivnosti
-Name[hsb]=Pas aktiwitow
-Name[hu]=Aktivitásjelző
-Name[ia]=Barra de activitate
-Name[id]=Batang Aktivitas
-Name[is]=Virknislá
-Name[it]=Barra delle attività
-Name[ja]=アクティビティバー
-Name[kk]=Белсенділік панелі
-Name[km]=របារសកម្មភាព
-Name[kn]=ಚಟುವಟಿಕೆ ಪಟ್ಟಿ
-Name[ko]=활동 표시줄
-Name[ku]=Darika Çalakiyan
-Name[lt]=Veiklų juosta
-Name[lv]=Aktivitāšu josla
-Name[mk]=Лента за активности
-Name[ml]=ആക്ടിവിറ്റി ബാര്
-Name[mr]=कार्यपध्दती पट्टी
-Name[nb]=Aktivitetsstolpe
-Name[nds]=Aktivitetenbalken
-Name[nl]=Activiteitsbalk
-Name[nn]=Aktivitetslinje
-Name[pa]=ਸਰਗਰਮੀ ਪੱਟੀ
-Name[pl]=Pasek działań
-Name[pt]=Barra de Actividades
-Name[pt_BR]=Barra de atividades
-Name[ro]=Bară de activitate
-Name[ru]=Панель комнат
-Name[si]=ක්රියා තීරුව
-Name[sk]=Panel aktivít
-Name[sl]=Pas z dejavnostmi
-Name[sr]=трака активности
-Name[sr@ijekavian]=трака активности
-Name[sr@ijekavianlatin]=traka aktivnosti
-Name[sr@latin]=traka aktivnosti
-Name[sv]=Aktivitetsrad
-Name[ta]=Activity Bar
-Name[te]=క్రియాశీలత పట్టీ
-Name[tg]=Панели фаъолиятӣ
-Name[th]=แถบกิจกรรม
-Name[tr]=Etkinlik Çubuğu
-Name[ug]=پائالىيەت بالدىقى
-Name[uk]=Панель дій
-Name[vi]=Thanh Hoạt động
-Name[wa]=Bår d' activité
-Name[x-test]=xxActivity Barxx
-Name[zh_CN]=活动栏
-Name[zh_TW]=活動列
-Comment=Tab bar to switch activities
-Comment[ar]=شريط ألسنة للتبديل بين الأنشطة
-Comment[ast]=Barra de llingüetes pa camudar actividaes
-Comment[bg]=Лента за превключване на активността
-Comment[bs]=Traka jezičaka za prebacivanje aktivnosti
-Comment[ca]=Barra de pestanyes per a canviar d'activitats
-Comment[ca@valencia]=Barra de pestanyes per a canviar d'activitats
-Comment[cs]=Lišta pro přepínání aktivit
-Comment[da]=Fanebladslinje til at skifte mellem aktiviteter
-Comment[de]=Leiste zum Wechseln von Aktivitäten
-Comment[el]=Γραμμή καρτελών για την εναλλαγή δραστηριότητας
-Comment[en_GB]=Tab bar to switch activities
-Comment[eo]=Langetobreto por ŝalti aktivecojn
-Comment[es]=Barra de pestañas para cambiar actividades
-Comment[et]=Kaardiriba tegevuse lülitamiseks
-Comment[eu]=Jardueraz aldatzeko fitxa-barra
-Comment[fi]=Välilehtipalkki aktiviteettien vaihtamiseen
-Comment[fr]=Barre d'onglets permettant de changer d'activité
-Comment[fy]=Ljepper om tusken aktiviteiten te wikseljen
-Comment[ga]=Barra na gcluaisíní chun an ghníomhaíocht a mhalartú
-Comment[gl]=Barra de lapelas para trocar entre actividades
-Comment[gu]=ક્રિયાઓ બદલવા માટે ટેબ પટ્ટી
-Comment[he]=סרגל לשוניות למעבר בין פעילויות
-Comment[hi]=क्रिया स्विच करने के लिए टैबपट्टी
-Comment[hr]=Traka za mijenjanje aktivnosti
-Comment[hu]=Aktivitások közötti váltásra szolgáló lapozóelem
-Comment[ia]=Barra de scheda pro commutar activitates
-Comment[id]=Batang tab untuk berpindah aktivitas
-Comment[is]=Flipaslá til að skipta um verkefni
-Comment[it]=Barra a schede per cambiare attività
-Comment[ja]=アクティビティを切り替えるタブバー
-Comment[kk]=Белсенділікті ауыстыру панелі
-Comment[km]=របារផ្ទាំងដើម្បីប្ដូរសកម្មភាព
-Comment[kn]=ಚಟುವಟಿಕೆಗಳನ್ನು ಬದಲಾಯಿಸುವ ಟ್ಯಾಬ್ ಪಟ್ಟಿ
-Comment[ko]=활동 사이를 전환할 수 있는 탭 표시줄
-Comment[lt]=Kortelių juosta veiklų keitimui
-Comment[lv]=Ciļnu josla aktivitāšu pārslēgšanai
-Comment[mai]=क्रियाकलाप स्विच करबाक लेल टैबपट्टी
-Comment[ml]=പ്രവര്ത്തനങ്ങള് മാറ്റാന് ടാബ്-ബാര്
-Comment[mr]=कार्यपध्दती बदलण्याकरिता टॅब बार
-Comment[nb]=Fanelinje for å bytte mellom aktiviteter
-Comment[nds]=Paneelbalken, mit den sik Aktiviteten wesseln laat
-Comment[nl]=Tabbalk om van activiteit te wisselen
-Comment[nn]=Fanelinje for å byta mellom aktivitetar
-Comment[pa]=ਐਕਟੀਵਿਟੀ ਬਦਲਣ ਲਈ ਟੈਬਬਾਰ
-Comment[pl]=Pasek kart do przełączania działań
-Comment[pt]=Barra de páginas para mudar de actividades
-Comment[pt_BR]=Barra de abas para alternar atividades
-Comment[ro]=Bară cu file pentru comutarea activităților
-Comment[ru]=Переключение комнат
-Comment[si]=ක්රියාකාරකම් මාරු කිරීමට ටැබ් තීරුවක්
-Comment[sk]=Panel na prepínanie aktivít
-Comment[sl]=Pas za preklapljanje med dejavnostmi
-Comment[sr]=Трака језичака за пребацивање активности
-Comment[sr@ijekavian]=Трака језичака за пребацивање активности
-Comment[sr@ijekavianlatin]=Traka jezičaka za prebacivanje aktivnosti
-Comment[sr@latin]=Traka jezičaka za prebacivanje aktivnosti
-Comment[sv]=Flikrad för att byta aktiviteter
-Comment[tg]=Переключиться в командную строку
-Comment[th]=แถบแท็บเพื่อใช้สลับกิจกรรม
-Comment[tr]=Eylemleri seçmek için sekme çubuğu
-Comment[ug]=پائالىيەت ئالماشتۇرىدىغان بەتكۈچ بالداق
-Comment[uk]=Панель з вкладками для перемикання дій
-Comment[wa]=Båre di linwetes po candjî d' activités
-Comment[x-test]=xxTab bar to switch activitiesxx
-Comment[zh_CN]=切换活动的标签栏
-Comment[zh_TW]=切換活動的分頁列
-Type=Service
-Icon=tab-new
-
-X-KDE-ServiceTypes=Plasma/Applet
-X-KDE-Library=plasma_applet_activitybar
-X-KDE-PluginInfo-Author=Marco Martin
-X-KDE-PluginInfo-Email=notmart@gmail.com
-X-KDE-PluginInfo-Name=activitybar
-X-KDE-PluginInfo-Version=1.0
-X-KDE-PluginInfo-Website=http://plasma.kde.org/
-X-KDE-PluginInfo-Category=Windows and Tasks
-X-KDE-PluginInfo-Depends=
-X-KDE-PluginInfo-License=GPL
-X-KDE-PluginInfo-EnabledByDefault=true
-
-X-Plasma-Requires-FileDialog=Unused
-X-Plasma-Requires-LaunchApp=Unused
-
diff --git a/plasma/generic/dataengines/CMakeLists.txt b/plasma/generic/dataengines/CMakeLists.txt
index 1aa637f7..ab3c1454 100644
--- a/plasma/generic/dataengines/CMakeLists.txt
+++ b/plasma/generic/dataengines/CMakeLists.txt
@@ -1,5 +1,4 @@
add_subdirectory(applicationjobs)
-add_subdirectory(activities)
add_subdirectory(apps)
add_subdirectory(devicenotifications)
add_subdirectory(dict)
diff --git a/plasma/generic/dataengines/activities/ActivityData.cpp b/plasma/generic/dataengines/activities/ActivityData.cpp
deleted file mode 100644
index d98e8c1e..00000000
--- a/plasma/generic/dataengines/activities/ActivityData.cpp
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Copyright (C) 2011 Ivan Cukic
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2,
- * or (at your option) any later version, as published by the Free
- * Software Foundation
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include "ActivityData.h"
-
-#include
-#include
-
-class ActivityDataStaticInit {
-public:
- ActivityDataStaticInit()
- {
- qDBusRegisterMetaType < ActivityData > ();
- qDBusRegisterMetaType < QList < ActivityData > > ();
- }
-
- static ActivityDataStaticInit _instance;
-
-};
-
-ActivityDataStaticInit ActivityDataStaticInit::_instance;
-
-ActivityData::ActivityData()
-{
-}
-
-ActivityData::ActivityData(const ActivityData & source)
-{
- score = source.score;
- id = source.id;
-}
-
-ActivityData & ActivityData::operator = (const ActivityData & source)
-{
- if (&source != this) {
- score = source.score;
- id = source.id;
- }
-
- return *this;
-}
-
-QDBusArgument & operator << (QDBusArgument & arg, const ActivityData r)
-{
- arg.beginStructure();
-
- arg << r.id;
- arg << r.score;
-
- arg.endStructure();
-
- return arg;
-}
-
-const QDBusArgument & operator >> (const QDBusArgument & arg, ActivityData & r)
-{
- arg.beginStructure();
-
- arg >> r.id;
- arg >> r.score;
-
- arg.endStructure();
-
- return arg;
-}
-
-QDebug operator << (QDebug dbg, const ActivityData & r)
-{
- dbg << "ActivityData(" << r.score << r.id << ")";
- return dbg.space();
-}
diff --git a/plasma/generic/dataengines/activities/ActivityData.h b/plasma/generic/dataengines/activities/ActivityData.h
deleted file mode 100644
index a36e85a2..00000000
--- a/plasma/generic/dataengines/activities/ActivityData.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2011 Ivan Cukic
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2,
- * or (at your option) any later version, as published by the Free
- * Software Foundation
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#ifndef ACTIVITY_DATA_H_
-#define ACTIVITY_DATA_H_
-
-#include
-#include
-#include
-#include
-
-class ActivityData {
-public:
- ActivityData();
- ActivityData(const ActivityData & source);
- ActivityData & operator = (const ActivityData & source);
-
- double score;
- QString id;
-
-};
-
-typedef QList ActivityDataList;
-Q_DECLARE_METATYPE(ActivityData)
-Q_DECLARE_METATYPE(ActivityDataList)
-
-QDBusArgument & operator << (QDBusArgument & arg, const ActivityData);
-const QDBusArgument & operator >> (const QDBusArgument & arg, ActivityData & rec);
-
-QDebug operator << (QDebug dbg, const ActivityData & r);
-
-#endif // ACTIVITY_DATA_H_
diff --git a/plasma/generic/dataengines/activities/CMakeLists.txt b/plasma/generic/dataengines/activities/CMakeLists.txt
deleted file mode 100644
index 6ddd7e6b..00000000
--- a/plasma/generic/dataengines/activities/CMakeLists.txt
+++ /dev/null
@@ -1,30 +0,0 @@
-project(activityengine)
-
-include_directories( ${KACTIVITIES_INCLUDE_DIR} )
-
-set(activity_engine_SRCS
- ActivityData.cpp
- activityengine.cpp
- activityservice.cpp
- activityjob.cpp)
-
-set_source_files_properties(org.kde.ActivityManager.ActivityRanking.xml PROPERTIES INCLUDE "ActivityData.h")
-qt4_add_dbus_interface(
- activity_engine_SRCS org.kde.ActivityManager.ActivityRanking.xml
- ActivityRankingInterface
- )
-
-kde4_add_plugin(plasma_engine_activities ${activity_engine_SRCS})
-target_link_libraries(plasma_engine_activities
- ${KDE4_KDECORE_LIBS}
- ${KDE4_PLASMA_LIBS}
- ${KACTIVITIES_LIBRARIES})
-
-install(TARGETS plasma_engine_activities
- DESTINATION ${PLUGIN_INSTALL_DIR})
-
-install(FILES plasma-engine-activities.desktop
- DESTINATION ${SERVICES_INSTALL_DIR})
-
-install(FILES activities.operations
- DESTINATION ${DATA_INSTALL_DIR}/plasma/services)
diff --git a/plasma/generic/dataengines/activities/activities.operations b/plasma/generic/dataengines/activities/activities.operations
deleted file mode 100644
index c438c506..00000000
--- a/plasma/generic/dataengines/activities/activities.operations
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/plasma/generic/dataengines/activities/activityengine.cpp b/plasma/generic/dataengines/activities/activityengine.cpp
deleted file mode 100644
index 2774a01c..00000000
--- a/plasma/generic/dataengines/activities/activityengine.cpp
+++ /dev/null
@@ -1,270 +0,0 @@
-/*
- * Copyright 2010 Chani Armitage
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License as
- * published by the Free Software Foundation; either version 2 or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include "activityengine.h"
-#include "activityservice.h"
-#include "ActivityRankingInterface.h"
-
-#include
-#include
-
-#include
-#include
-
-#define ACTIVITYMANAGER_SERVICE "org.kde.kactivitymanagerd"
-#define ACTIVITYRANKING_OBJECT "/ActivityRanking"
-
-ActivityEngine::ActivityEngine(QObject* parent, const QVariantList& args)
- : Plasma::DataEngine(parent, args)
-{
- Q_UNUSED(args);
-}
-
-void ActivityEngine::init()
-{
- if (qApp->applicationName() == "plasma-netbook") {
- //hack for the netbook
- //FIXME can I read a setting or something instead?
- } else {
- m_activityController = new KActivities::Controller(this);
- m_currentActivity = m_activityController->currentActivity();
- QStringList activities = m_activityController->listActivities();
- //setData("allActivities", activities);
- foreach (const QString &id, activities) {
- insertActivity(id);
- }
-
- connect(m_activityController, SIGNAL(activityAdded(QString)), this, SLOT(activityAdded(QString)));
- connect(m_activityController, SIGNAL(activityRemoved(QString)), this, SLOT(activityRemoved(QString)));
- connect(m_activityController, SIGNAL(currentActivityChanged(QString)), this, SLOT(currentActivityChanged(QString)));
-
- //some convenience sources for times when checking every activity source would suck
- //it starts with _ so that it can easily be filtered out of sources()
- //maybe I should just make it not included in sources() instead?
- m_runningActivities = m_activityController->listActivities(KActivities::Info::Running);
- setData("Status", "Current", m_currentActivity);
- setData("Status", "Running", m_runningActivities);
-
- m_watcher = new QDBusServiceWatcher(
- ACTIVITYMANAGER_SERVICE,
- QDBusConnection::sessionBus(),
- QDBusServiceWatcher::WatchForRegistration
- | QDBusServiceWatcher::WatchForUnregistration,
- this);
-
- connect(m_watcher, SIGNAL(serviceRegistered(QString)),
- this, SLOT(enableRanking()));
- connect(m_watcher, SIGNAL(serviceUnregistered(QString)),
- this, SLOT(disableRanking()));
-
- if (QDBusConnection::sessionBus().interface()->isServiceRegistered(ACTIVITYMANAGER_SERVICE)) {
- enableRanking();
- }
- }
-}
-
-void ActivityEngine::insertActivity(const QString &id)
-{
- //id -> name, icon, state
- KActivities::Info *activity = new KActivities::Info(id, this);
- m_activities[id] = activity;
- setData(id, "Name", activity->name());
- setData(id, "Icon", activity->icon());
- setData(id, "Current", m_currentActivity == id);
- setData(id, "Encrypted", false);
-
- QString state;
- switch (activity->state()) {
- case KActivities::Info::Running:
- state = "Running";
- break;
- case KActivities::Info::Starting:
- state = "Starting";
- break;
- case KActivities::Info::Stopping:
- state = "Stopping";
- break;
- case KActivities::Info::Stopped:
- state = "Stopped";
- break;
- case KActivities::Info::Invalid:
- default:
- state = "Invalid";
- }
- setData(id, "State", state);
- setData(id, "Score", m_activityScores.value(id));
-
- connect(activity, SIGNAL(infoChanged()), this, SLOT(activityDataChanged()));
- connect(activity, SIGNAL(stateChanged(KActivities::Info::State)), this, SLOT(activityStateChanged()));
-
- m_runningActivities << id;
-}
-
-void ActivityEngine::disableRanking()
-{
- delete m_activityRankingClient;
-}
-
-void ActivityEngine::enableRanking()
-{
- m_activityRankingClient = new org::kde::ActivityManager::ActivityRanking(
- ACTIVITYMANAGER_SERVICE,
- ACTIVITYRANKING_OBJECT,
- QDBusConnection::sessionBus()
- );
- connect(m_activityRankingClient, SIGNAL(rankingChanged(QStringList,ActivityDataList)),
- this, SLOT(rankingChanged(QStringList,ActivityDataList)));
-
- QDBusMessage msg = QDBusMessage::createMethodCall(ACTIVITYMANAGER_SERVICE,
- ACTIVITYRANKING_OBJECT,
- "org.kde.ActivityManager.ActivityRanking",
- "activities");
- QDBusPendingReply reply = QDBusConnection::sessionBus().asyncCall(msg);
- QDBusPendingCallWatcher *watcher = new QDBusPendingCallWatcher(reply, this);
- QObject::connect(watcher, SIGNAL(finished(QDBusPendingCallWatcher*)),
- this, SLOT(activityScoresReply(QDBusPendingCallWatcher*)));
-}
-
-void ActivityEngine::activityScoresReply(QDBusPendingCallWatcher *watcher)
-{
- QDBusPendingReply reply = *watcher;
- if (reply.isError()) {
- kDebug() << "Error getting activity scores: " << reply.error().message();
- } else {
- setActivityScores(reply.value());
- }
-
- watcher->deleteLater();
-}
-
-void ActivityEngine::rankingChanged(const QStringList &topActivities, const ActivityDataList &activities)
-{
- Q_UNUSED(topActivities)
-
- setActivityScores(activities);
-}
-
-void ActivityEngine::setActivityScores(const ActivityDataList &activities)
-{
- QSet presentActivities;
- m_activityScores.clear();
-
- foreach (const ActivityData &activity, activities) {
- if (m_activities.contains(activity.id)) {
- setData(activity.id, "Score", activity.score);
- }
- presentActivities.insert(activity.id);
- m_activityScores[activity.id] = activity.score;
- }
-
- foreach (const QString &activityId, m_activityController->listActivities()) {
- if (!presentActivities.contains(activityId) && m_activities.contains(activityId)) {
- setData(activityId, "Score", 0);
- }
- }
-}
-
-void ActivityEngine::activityAdded(const QString &id)
-{
- insertActivity(id);
- setData("Status", "Running", m_runningActivities);
-}
-
-void ActivityEngine::activityRemoved(const QString &id)
-{
- removeSource(id);
- KActivities::Info *activity = m_activities.take(id);
- if (activity) {
- delete activity;
- }
- m_runningActivities.removeAll(id);
- setData("Status", "Running", m_runningActivities);
-}
-
-void ActivityEngine::currentActivityChanged(const QString &id)
-{
- setData(m_currentActivity, "Current", false);
- m_currentActivity = id;
- setData(id, "Current", true);
- setData("Status", "Current", id);
-}
-
-void ActivityEngine::activityDataChanged()
-{
- KActivities::Info *activity = qobject_cast(sender());
- if (!activity) {
- return;
- }
- setData(activity->id(), "Name", activity->name());
- setData(activity->id(), "Icon", activity->icon());
- setData(activity->id(), "Encrypted", false);
- setData(activity->id(), "Current", m_currentActivity == activity->id());
- setData(activity->id(), "Score", m_activityScores.value(activity->id()));
-}
-
-void ActivityEngine::activityStateChanged()
-{
- KActivities::Info *activity = qobject_cast(sender());
- const QString id = activity->id();
- if (!activity) {
- return;
- }
- QString state;
- switch (activity->state()) {
- case KActivities::Info::Running:
- state = "Running";
- break;
- case KActivities::Info::Starting:
- state = "Starting";
- break;
- case KActivities::Info::Stopping:
- state = "Stopping";
- break;
- case KActivities::Info::Stopped:
- state = "Stopped";
- break;
- case KActivities::Info::Invalid:
- default:
- state = "Invalid";
- }
- setData(id, "State", state);
-
- if (activity->state() == KActivities::Info::Running) {
- if (!m_runningActivities.contains(id)) {
- m_runningActivities << id;
- }
- } else {
- m_runningActivities.removeAll(id);
- }
-
- setData("Status", "Running", m_runningActivities);
-}
-
-
-Plasma::Service *ActivityEngine::serviceForSource(const QString &source)
-{
- //FIXME validate the name
- ActivityService *service = new ActivityService(m_activityController, source);
- service->setParent(this);
- return service;
-}
-
-K_EXPORT_PLASMA_DATAENGINE(activities, ActivityEngine)
-
-#include "activityengine.moc"
diff --git a/plasma/generic/dataengines/activities/activityengine.h b/plasma/generic/dataengines/activities/activityengine.h
deleted file mode 100644
index d6824a06..00000000
--- a/plasma/generic/dataengines/activities/activityengine.h
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * Copyright 2010 Chani Armitage
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License as
- * published by the Free Software Foundation; either version 2 or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#ifndef ACTIVITY_ENGINE_H
-#define ACTIVITY_ENGINE_H
-
-#include
-
-#include
-#include
-
-#include "ActivityData.h"
-#include "ActivityRankingInterface.h"
-
-
-class QDBusServiceWatcher;
-
-class ActivityService;
-
-namespace KActivities
-{
- class Controller;
- class Info;
-}
-
-
-class ActivityEngine : public Plasma::DataEngine
-{
- Q_OBJECT
-
-public:
- ActivityEngine(QObject* parent, const QVariantList& args);
- Plasma::Service *serviceForSource(const QString &source);
- void init();
-
-public slots:
- void activityAdded(const QString &id);
- void activityRemoved(const QString &id);
- void currentActivityChanged(const QString &id);
-
- void activityDataChanged();
- void activityStateChanged();
-
- void disableRanking();
- void enableRanking();
- void rankingChanged(const QStringList &topActivities, const ActivityDataList &activities);
- void activityScoresReply(QDBusPendingCallWatcher *watcher);
-
-private:
- void insertActivity(const QString &id);
- void setActivityScores(const ActivityDataList &activities);
-
- KActivities::Controller *m_activityController;
- QHash m_activities;
- QStringList m_runningActivities;
- QString m_currentActivity;
-
- org::kde::ActivityManager::ActivityRanking *m_activityRankingClient;
- QDBusServiceWatcher *m_watcher;
- QHash m_activityScores;
-
- friend class ActivityService;
-};
-
-#endif // SEARCHLAUNCH_ENGINE_H
diff --git a/plasma/generic/dataengines/activities/activityjob.cpp b/plasma/generic/dataengines/activities/activityjob.cpp
deleted file mode 100644
index 77ce52ad..00000000
--- a/plasma/generic/dataengines/activities/activityjob.cpp
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright 2009 Chani Armitage
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License version 2 as
- * published by the Free Software Foundation
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include "activityjob.h"
-
-#include
-#include
-
-#include
-#include
-
-ActivityJob::ActivityJob(KActivities::Controller *controller, const QString &id, const QString &operation, QMap ¶meters, QObject *parent) :
- ServiceJob(parent->objectName(), operation, parameters, parent),
- m_activityController(controller),
- m_id(id)
-{
-}
-
-ActivityJob::~ActivityJob()
-{
-}
-
-void ActivityJob::start()
-{
- const QString operation = operationName();
- if (operation == "add") {
- //I wonder how well plasma will handle this...
- QString name = parameters()["Name"].toString();
- if (name.isEmpty()) {
- name = i18n("unnamed");
- }
- const QString activityId = m_activityController->addActivity(name);
- setResult(activityId);
- return;
- }
- if (operation == "remove") {
- QString id = parameters()["Id"].toString();
- m_activityController->removeActivity(id);
- setResult(true);
- return;
- }
-
- //m_id is needed for the rest
- if (m_id.isEmpty()) {
- setResult(false);
- return;
- }
- if (operation == "setCurrent") {
- m_activityController->setCurrentActivity(m_id);
- setResult(true);
- return;
- }
- if (operation == "stop") {
- m_activityController->stopActivity(m_id);
- setResult(true);
- return;
- }
- if (operation == "start") {
- m_activityController->startActivity(m_id);
- setResult(true);
- return;
- }
- if (operation == "setName") {
- m_activityController->setActivityName(m_id, parameters()["Name"].toString());
- setResult(true);
- return;
- }
- if (operation == "setIcon") {
- m_activityController->setActivityIcon(m_id, parameters()["Icon"].toString());
- setResult(true);
- return;
- }
- if (operation == "setEncrypted") {
- m_activityController->setActivityEncrypted(m_id, parameters()["Encrypted"].toBool());
- setResult(true);
- return;
- }
- if (operation == "toggleActivityManager") {
- QDBusMessage message = QDBusMessage::createMethodCall("org.kde.plasma-desktop",
- "/App",
- QString(),
- "toggleActivityManager");
- QDBusConnection::sessionBus().call(message, QDBus::NoBlock);
- setResult(true);
- return;
- }
- setResult(false);
-}
-
-#include "activityjob.moc"
diff --git a/plasma/generic/dataengines/activities/activityjob.h b/plasma/generic/dataengines/activities/activityjob.h
deleted file mode 100644
index a8d59d39..00000000
--- a/plasma/generic/dataengines/activities/activityjob.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright 2009 Chani Armitage
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License version 2 as
- * published by the Free Software Foundation
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#ifndef ACTIVITYJOB_H
-#define ACTIVITYJOB_H
-
-// plasma
-#include
-
-namespace KActivities
-{
- class Controller;
-} // namespace KActivities
-
-class ActivityJob : public Plasma::ServiceJob
-{
-
- Q_OBJECT
-
- public:
- ActivityJob(KActivities::Controller *controller, const QString &id, const QString &operation, QMap ¶meters, QObject *parent = 0);
- ~ActivityJob();
-
- protected:
- void start();
-
- private:
- KActivities::Controller *m_activityController;
- QString m_id;
-
-};
-
-#endif // TASKJOB_H
diff --git a/plasma/generic/dataengines/activities/activityservice.cpp b/plasma/generic/dataengines/activities/activityservice.cpp
deleted file mode 100644
index 4760d108..00000000
--- a/plasma/generic/dataengines/activities/activityservice.cpp
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Copyright 2010 Chani Armitage
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License as
- * published by the Free Software Foundation; either version 2 or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include "activityservice.h"
-#include "activityjob.h"
-
-ActivityService::ActivityService(KActivities::Controller *controller, const QString &source)
- : m_activityController(controller),
- m_id(source)
-{
- setName("activities");
-}
-
-ServiceJob *ActivityService::createJob(const QString &operation, QMap ¶meters)
-{
- return new ActivityJob(m_activityController, m_id, operation, parameters, this);
-}
-
-#include "activityservice.moc"
diff --git a/plasma/generic/dataengines/activities/activityservice.h b/plasma/generic/dataengines/activities/activityservice.h
deleted file mode 100644
index e964a81d..00000000
--- a/plasma/generic/dataengines/activities/activityservice.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
- * Copyright 2010 Chani Armitage
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License as
- * published by the Free Software Foundation; either version 2 or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#ifndef ACTIVITY_SERVICE_H
-#define ACTIVITY_SERVICE_H
-
-#include "activityengine.h"
-
-#include
-#include
-
-using namespace Plasma;
-
-namespace KActivities
-{
- class Controller;
-} // namespace KActivities
-
-
-class ActivityService : public Plasma::Service
-{
- Q_OBJECT
-
-public:
- ActivityService(KActivities::Controller *controller, const QString &source);
- ServiceJob *createJob(const QString &operation,
- QMap ¶meters);
-
-private:
- KActivities::Controller *m_activityController;
- QString m_id;
-};
-
-#endif // SEARCHLAUNCH_SERVICE_H
diff --git a/plasma/generic/dataengines/activities/org.kde.ActivityManager.ActivityRanking.xml b/plasma/generic/dataengines/activities/org.kde.ActivityManager.ActivityRanking.xml
deleted file mode 100644
index 7eacc8be..00000000
--- a/plasma/generic/dataengines/activities/org.kde.ActivityManager.ActivityRanking.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/plasma/generic/dataengines/activities/plasma-engine-activities.desktop b/plasma/generic/dataengines/activities/plasma-engine-activities.desktop
deleted file mode 100644
index 1409da77..00000000
--- a/plasma/generic/dataengines/activities/plasma-engine-activities.desktop
+++ /dev/null
@@ -1,130 +0,0 @@
-[Desktop Entry]
-Name=Activities Engine
-Name[ar]=محرك الأنشطة
-Name[bg]=Ядро за дейности
-Name[bs]=motor aktivnosti
-Name[ca]=Motor d'activitats
-Name[ca@valencia]=Motor d'activitats
-Name[cs]=Stroj aktivit
-Name[da]=Aktivitetsmotor
-Name[de]=Aktivitätenverwaltung
-Name[el]=Μηχανή δραστηριοτήτων
-Name[en_GB]=Activities Engine
-Name[es]=Motor de actividades
-Name[et]=Tegevuste mootor
-Name[eu]=Jarduera-motorra
-Name[fi]=Aktiviteettimoottori
-Name[fr]=Moteur d'activités
-Name[ga]=Inneall Gníomhaíochta
-Name[gl]=Motor de actividades
-Name[he]=מנוע הפעילויות
-Name[hr]=Mehanizam aktivnosti
-Name[hu]=Aktivitások modul
-Name[ia]=Motor de activitate
-Name[is]=Virknivél
-Name[it]=Motore delle attività
-Name[ja]=アクティビティエンジン
-Name[kk]=Белсенділік тетігі
-Name[km]=ម៉ាស៊ីនសកម្មភាព
-Name[kn]=ಚಟುವಟಿಕೆ ಎಂಜಿನ್
-Name[ko]=활동 엔진
-Name[lt]=Veiklų modulis
-Name[lv]=Aktivitāšu dzinējs
-Name[mr]=कार्यपध्दती इंजिन
-Name[nb]=Aktivitetsmotor
-Name[nds]=Aktivitetenpleger
-Name[nl]=Activiteiten-engine
-Name[pa]=ਸਰਗਰਮੀ ਇੰਜਣ
-Name[pl]=Silnik działań
-Name[pt]=Motor de Actividades
-Name[pt_BR]=Mecanismo de atividades
-Name[ro]=Motor de activități
-Name[ru]=Источник данных для комнат
-Name[sk]=Nástroj aktivít
-Name[sl]=Pogon za dejavnosti
-Name[sr]=мотор активности
-Name[sr@ijekavian]=мотор активности
-Name[sr@ijekavianlatin]=motor aktivnosti
-Name[sr@latin]=motor aktivnosti
-Name[sv]=Aktivitetsgränssnitt
-Name[th]=กลไกจัดการกิจกรรม
-Name[tr]=Etkinlik Motoru
-Name[ug]=پائالىيەت ماتورى
-Name[uk]=Рушій просторів дій
-Name[vi]=Cơ chế cho Hoạt động
-Name[wa]=Moteur d' activités
-Name[x-test]=xxActivities Enginexx
-Name[zh_CN]=活动引擎
-Name[zh_TW]=活動引擎
-Comment=Information on Plasma Activities
-Comment[ar]=معلومات عن أنشطة بلازما
-Comment[bg]=Данни за дейности в Plasma
-Comment[bs]=Podaci o plazma aktivnostima
-Comment[ca]=Informació quant a activitats del Plasma
-Comment[ca@valencia]=Informació quant a activitats del Plasma
-Comment[cs]=Informace o Plasma aktivitách.
-Comment[da]=Information om Plasma-aktiviteter
-Comment[de]=Informationen über Plasma-Aktivitäten
-Comment[el]=Πληροφορίες για τις δραστηριότητες Plasma
-Comment[en_GB]=Information on Plasma Activities
-Comment[es]=Información sobre las actividades de Plasma
-Comment[et]=Teave Plasma tegevuste kohta.
-Comment[eu]=Plasmaren jarduerei buruzko informazioa
-Comment[fi]=Tietoja Plasma-aktiviteeteista
-Comment[fr]=Informations sur les activités de Plasma
-Comment[gl]=Información acerca das actividades de Plasma
-Comment[he]=מידע אודות הפעילויות של Plasma
-Comment[hr]=Informacije o Plasminim aktivnostima
-Comment[hu]=Információk a Plasma aktivitásokról
-Comment[ia]=Information re activitates de Plasma
-Comment[is]=Upplýsingar um Plasma virkni
-Comment[it]=Informazioni sulle attività di Plasma
-Comment[ja]=Plasma アクティビティの情報
-Comment[kk]=Plasma белсенділігі туралы мәлімет
-Comment[km]=ព័ត៌មានអំពីសកម្មភាពប្លាស្មា
-Comment[kn]=ಪ್ಲಾಸ್ಮಾ ಚಟುವಟಿಕೆಗಳ ಬಗೆಗೆ ಮಾಹಿತಿ.
-Comment[ko]=Plasma 활동 정보
-Comment[lt]=Informacija apie Plasma veiklas
-Comment[lv]=Informācija par Plasma aktivitātēm
-Comment[mr]=प्लाज्मा कार्यपध्दती बद्दल माहिती
-Comment[nb]=Informasjon om Plasma-aktiviteter
-Comment[nds]=Informatschonen över Plasma-Aktiviteten
-Comment[nl]=Informatie over Plasma activiteiten
-Comment[nn]=Informasjon om Plasma-aktivitetar
-Comment[pa]=ਪਲਾਜ਼ਮਾ ਸਰਗਰਮੀਆਂ ਲਈ ਜਾਣਕਾਰੀ
-Comment[pl]=Informacje o działaniach Plazmy
-Comment[pt]=Informação sobre as Actividades do Plasma
-Comment[pt_BR]=Informações sobre as atividades do Plasma
-Comment[ro]=Informații despre activitățile Plasma
-Comment[ru]=Сведения о комнатах Plasma
-Comment[sk]=Informácie o Plasma aktivitách
-Comment[sl]=Podatki o dejavnostih za Plasmo
-Comment[sr]=Подаци о плазма активностима
-Comment[sr@ijekavian]=Подаци о плазма активностима
-Comment[sr@ijekavianlatin]=Podaci o plasma aktivnostima
-Comment[sr@latin]=Podaci o plasma aktivnostima
-Comment[sv]=Information om aktiviteter i Plasma
-Comment[th]=ข้อมูลเกี่ยวกับกิจกรรมต่างๆ ของพลาสมา
-Comment[tr]=Plasma Etkinliklerindeki Bilgiler
-Comment[ug]=پلازما پائالىيىتىدىكى ئۇچۇر
-Comment[uk]=Інформація про простори дій Плазми
-Comment[vi]=Thông tin về các Hoạt động Plasma
-Comment[wa]=Pondants et djondants so les activités di Plasma
-Comment[x-test]=xxInformation on Plasma Activitiesxx
-Comment[zh_CN]=关于 Plasma 活动的信息
-Comment[zh_TW]=Plasma 活動的資訊
-Type=Service
-Icon=preferences-activities
-
-X-KDE-ServiceTypes=Plasma/DataEngine
-X-KDE-Library=plasma_engine_activities
-X-Plasma-EngineName=activities
-X-KDE-PluginInfo-Author=Chani Armitage
-X-KDE-PluginInfo-Email=chani@kde.org
-X-KDE-PluginInfo-Name=org.kde.activities
-X-KDE-PluginInfo-Version=0.1
-X-KDE-PluginInfo-Website=http://plasma.kde.org/
-X-KDE-PluginInfo-Category=
-X-KDE-PluginInfo-Depends=
-X-KDE-PluginInfo-License=LGPL
-X-KDE-PluginInfo-EnabledByDefault=true
diff --git a/plasma/generic/declarativeimports/plasmaextracomponents/CMakeLists.txt b/plasma/generic/declarativeimports/plasmaextracomponents/CMakeLists.txt
index f1d288b5..b9d471c8 100644
--- a/plasma/generic/declarativeimports/plasmaextracomponents/CMakeLists.txt
+++ b/plasma/generic/declarativeimports/plasmaextracomponents/CMakeLists.txt
@@ -7,14 +7,12 @@ set(plasmaextracomponents_SRCS
fallbackcomponent.cpp
)
-include_directories( ${KACTIVITIES_INCLUDE_DIR} )
-
qt4_automoc(${plasmaextracomponents_SRCS})
add_library(plasmaextracomponentsplugin SHARED ${plasmaextracomponents_SRCS})
target_link_libraries(plasmaextracomponentsplugin ${QT_QTCORE_LIBRARY} ${QT_QTDECLARATIVE_LIBRARY}
- ${QT_QTGUI_LIBRARY} ${KDE4_PLASMA_LIBS} ${KACTIVITIES_LIBRARIES} )
+ ${QT_QTGUI_LIBRARY} ${KDE4_PLASMA_LIBS} )
install(TARGETS plasmaextracomponentsplugin DESTINATION ${IMPORTS_INSTALL_DIR}/org/kde/plasma/extras)
diff --git a/plasma/generic/runners/CMakeLists.txt b/plasma/generic/runners/CMakeLists.txt
index 573b5087..37e7a819 100644
--- a/plasma/generic/runners/CMakeLists.txt
+++ b/plasma/generic/runners/CMakeLists.txt
@@ -1,4 +1,3 @@
-add_subdirectory(activities)
add_subdirectory(bookmarks)
add_subdirectory(calculator)
add_subdirectory(locations)
diff --git a/plasma/generic/runners/activities/CMakeLists.txt b/plasma/generic/runners/activities/CMakeLists.txt
deleted file mode 100644
index c5e2337f..00000000
--- a/plasma/generic/runners/activities/CMakeLists.txt
+++ /dev/null
@@ -1,12 +0,0 @@
-include_directories(${KDEBASE_WORKSPACE_SOURCE_DIR}/libs ${KACTIVITIES_INCLUDE_DIR})
-
-set(krunner_activities_SRCS
- activityrunner.cpp
-)
-
-kde4_add_plugin(krunner_activities ${krunner_activities_SRCS})
-target_link_libraries(krunner_activities ${KDE4_PLASMA_LIBS} ${KACTIVITIES_LIBRARIES})
-
-install(TARGETS krunner_activities DESTINATION ${PLUGIN_INSTALL_DIR})
-install(FILES plasma-runner-activityrunner.desktop DESTINATION ${SERVICES_INSTALL_DIR})
-
diff --git a/plasma/generic/runners/activities/Messages.sh b/plasma/generic/runners/activities/Messages.sh
deleted file mode 100755
index b0d1be69..00000000
--- a/plasma/generic/runners/activities/Messages.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-#!/bin/bash
-$EXTRACTRC *.ui >> rc.cpp
-$XGETTEXT *.cpp -o $podir/plasma_runner_activities.pot
-rm -f rc.cpp
diff --git a/plasma/generic/runners/activities/activityrunner.cpp b/plasma/generic/runners/activities/activityrunner.cpp
deleted file mode 100644
index 728e155a..00000000
--- a/plasma/generic/runners/activities/activityrunner.cpp
+++ /dev/null
@@ -1,173 +0,0 @@
-/*
- * Copyright (C) 2011 Aaron Seigo
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License version 2 as
- * published by the Free Software Foundation
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#include "activityrunner.h"
-
-#include
-#include
-#include
-
-ActivityRunner::ActivityRunner(QObject *parent, const QVariantList &args)
- : Plasma::AbstractRunner(parent, args),
- m_activities(0),
- m_keywordi18n(i18nc("KRunner keyword", "activity")),
- m_keyword("activity"),
- m_enabled(false)
-{
- setObjectName(QLatin1String("Activities"));
- setIgnoredTypes(Plasma::RunnerContext::Directory | Plasma::RunnerContext::File |
- Plasma::RunnerContext::NetworkLocation | Plasma::RunnerContext::Help);
-
- connect(this, SIGNAL(prepare()), this, SLOT(prep()));
- connect(this, SIGNAL(teardown()), this, SLOT(down()));
-
- serviceStatusChanged(KActivities::Consumer::FullFunctionality);
-}
-
-void ActivityRunner::prep()
-{
- if (!m_activities) {
- m_activities = new KActivities::Controller(this);
- connect(m_activities, SIGNAL(serviceStatusChanged(KActivities::Consumer::ServiceStatus)),
- this, SLOT(serviceStatusChanged(KActivities::Consumer::ServiceStatus)));
- serviceStatusChanged(m_activities->serviceStatus());
- }
-}
-
-void ActivityRunner::down()
-{
- delete m_activities;
- m_activities = 0;
-}
-
-void ActivityRunner::serviceStatusChanged(KActivities::Consumer::ServiceStatus status)
-{
- const bool active = status != KActivities::Consumer::NotRunning;
- if (m_enabled == active) {
- return;
- }
-
- m_enabled = active;
- QList syntaxes;
- if (m_enabled) {
- setDefaultSyntax(Plasma::RunnerSyntax(m_keywordi18n, i18n("Lists all activities currently available to be run.")));
- addSyntax(Plasma::RunnerSyntax(i18nc("KRunner keyword", "activity :q:"), i18n("Switches to activity :q:.")));
- }
-}
-
-ActivityRunner::~ActivityRunner()
-{
-}
-
-void ActivityRunner::match(Plasma::RunnerContext &context)
-{
- if (!m_enabled) {
- return;
- }
-
- const QString term = context.query().trimmed();
- bool list = false;
- QString name;
-
- if (term.startsWith(m_keywordi18n, Qt::CaseInsensitive)) {
- if (term.size() == m_keywordi18n.size()) {
- list = true;
- } else {
- name = term.right(term.size() - m_keywordi18n.size()).trimmed();
- list = name.isEmpty();
- }
- } else if (term.startsWith(m_keyword, Qt::CaseInsensitive)) {
- if (term.size() == m_keyword.size()) {
- list = true;
- } else {
- name = term.right(term.size() - m_keyword.size()).trimmed();
- list = name.isEmpty();
- }
- } else if (context.singleRunnerQueryMode()) {
- name = term;
- } else {
- return;
- }
-
- QList matches;
- QStringList activities = m_activities->listActivities();
- qSort(activities);
-
- const QString current = m_activities->currentActivity();
-
- if (!context.isValid()) {
- return;
- }
-
- if (list) {
- foreach (const QString &activity, activities) {
- if (current == activity) {
- continue;
- }
-
- KActivities::Info info(activity);
- addMatch(info, matches);
-
- if (!context.isValid()) {
- return;
- }
- }
- } else {
- foreach (const QString &activity, activities) {
- if (current == activity) {
- continue;
- }
-
- KActivities::Info info(activity);
- if (info.name().startsWith(name, Qt::CaseInsensitive)) {
- addMatch(info, matches);
- }
-
- if (!context.isValid()) {
- return;
- }
- }
- }
-
- context.addMatches(context.query(), matches);
-}
-
-void ActivityRunner::addMatch(const KActivities::Info &activity, QList &matches)
-{
- Plasma::QueryMatch match(this);
- match.setData(activity.id());
- match.setType(Plasma::QueryMatch::ExactMatch);
- match.setIcon(activity.icon().isEmpty() ? KIcon("preferences-activities") : KIcon(activity.icon()));
- match.setText(i18n("Switch to \"%1\"", activity.name()));
- match.setRelevance(0.7 + ((activity.state() == KActivities::Info::Running ||
- activity.state() == KActivities::Info::Starting) ? 0.1 : 0));
- matches << match;
-}
-
-void ActivityRunner::run(const Plasma::RunnerContext &context, const Plasma::QueryMatch &match)
-{
- Q_UNUSED(context)
-
- if (!m_enabled || !m_activities) {
- return;
- }
-
- m_activities->setCurrentActivity(match.data().toString());
-}
-
-#include "activityrunner.moc"
diff --git a/plasma/generic/runners/activities/activityrunner.h b/plasma/generic/runners/activities/activityrunner.h
deleted file mode 100644
index 7fef7492..00000000
--- a/plasma/generic/runners/activities/activityrunner.h
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright (C) 2011 Aaron Seigo
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License version 2 as
- * published by the Free Software Foundation
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-#ifndef ACTIVITYRUNNER_H
-#define ACTIVITYRUNNER_H
-
-#include
-
-#include
-
-class ActivityRunner : public Plasma::AbstractRunner
-{
- Q_OBJECT
-
- public:
- ActivityRunner(QObject *parent, const QVariantList &args);
- ~ActivityRunner();
-
- void match(Plasma::RunnerContext &context);
- void run(const Plasma::RunnerContext &context, const Plasma::QueryMatch &action);
-
- private Q_SLOTS:
- void prep();
- void down();
- void serviceStatusChanged(KActivities::Consumer::ServiceStatus status);
-
- private:
- void addMatch(const KActivities::Info &activity, QList &matches);
-
- KActivities::Controller *m_activities;
- const QString m_keywordi18n;
- const QString m_keyword;
- bool m_enabled;
-};
-
-K_EXPORT_PLASMA_RUNNER(activities, ActivityRunner)
-
-#endif
diff --git a/plasma/generic/runners/activities/plasma-runner-activityrunner.desktop b/plasma/generic/runners/activities/plasma-runner-activityrunner.desktop
deleted file mode 100644
index f1ecde23..00000000
--- a/plasma/generic/runners/activities/plasma-runner-activityrunner.desktop
+++ /dev/null
@@ -1,121 +0,0 @@
-[Desktop Entry]
-Name=Activities
-Name[ar]=الأنشطة
-Name[bg]=Дейности
-Name[bs]=motor aktivnosti
-Name[ca]=Activitats
-Name[ca@valencia]=Activitats
-Name[cs]=Aktivity
-Name[da]=Aktiviteter
-Name[de]=Aktivitäten
-Name[el]=Δραστηριότητες
-Name[en_GB]=Activities
-Name[es]=Actividades
-Name[et]=Tegevused
-Name[eu]=Jarduerak
-Name[fa]=فعالیتها
-Name[fi]=Aktiviteetit
-Name[fr]=Activités
-Name[ga]=Gníomhaíochtaí
-Name[gl]=Actividades
-Name[he]=עילויות
-Name[hr]=Aktivnosti
-Name[hu]=Aktivitások
-Name[ia]=Activitates
-Name[is]=Virknistjóri
-Name[it]=Attività
-Name[ja]=アクティビティ
-Name[kk]=Белсенділіктер
-Name[km]=សកម្មភាព
-Name[ko]=활동
-Name[lt]=Veiklos
-Name[lv]=Aktivitātes
-Name[mr]=कार्यपध्दती
-Name[nb]=Aktiviteter
-Name[nds]=Aktiviteten
-Name[nl]=Activiteiten
-Name[pa]=ਸਰਗਰਮੀਆਂ
-Name[pl]=Działania
-Name[pt]=Actividades
-Name[pt_BR]=Atividades
-Name[ro]=Activități
-Name[ru]=Комнаты
-Name[sk]=Aktivity
-Name[sl]=Dejavnosti
-Name[sr]=активности
-Name[sr@ijekavian]=активности
-Name[sr@ijekavianlatin]=aktivnosti
-Name[sr@latin]=aktivnosti
-Name[sv]=Aktiviteter
-Name[tr]=Etkinlikler
-Name[ug]=پائالىيەتلەر
-Name[uk]=Простори дій
-Name[vi]=Hoạt động
-Name[wa]=Activités
-Name[x-test]=xxActivitiesxx
-Name[zh_CN]=活动
-Name[zh_TW]=活動
-Comment=List and switch between desktop activities
-Comment[bg]=Списък и превключване между дейностите
-Comment[bs]=Prikaz i prebacivanje između aktivnosti radne površine
-Comment[ca]=Llista i commuta entre activitats d'escriptori
-Comment[ca@valencia]=Llista i commuta entre activitats d'escriptori
-Comment[cs]=Zobrazení a přepínač aktivit pracovní plochy
-Comment[da]=Vis og skift mellem skrivebordsaktiviteter
-Comment[de]=Aktivitäten anzeigen und zwischen ihnen umschalten
-Comment[el]=Εμφάνιση και εναλλαγή μεταξύ των δραστηριοτήτων της επιφάνειας εργασίας
-Comment[en_GB]=List and switch between desktop activities
-Comment[es]=Ver y cambiar entre las actividades de escritorio
-Comment[et]=Töölauategevuste näitamine ja nende vahel lülitamine
-Comment[eu]=Zerrendatu mahaigaineko jarduerak eta batetik bestera aldatu
-Comment[fi]=Luettele aktiviteetit ja vaihda niiden välillä
-Comment[fr]=Affiche les activités du bureau et permet d'en changer
-Comment[gl]=Lista e troca entre actividades o escritorio
-Comment[he]=הצגה והחלפה בין פעילויות שולחן עבודה
-Comment[hr]=Izlistaj i prebacuj između aktivnosti radne površine
-Comment[hu]=Asztali aktivitások listázása és váltás közöttük
-Comment[ia]=Lista e commuta inter activitates de scriptorio
-Comment[is]=Telur upp og skiptir milli skjáborðsvirkni
-Comment[it]=Visualizza e cambia le attività del desktop
-Comment[ja]=デスクトップアクティビティを一覧表示して切り替える
-Comment[kk]=Белсенділіктерді тізімдеу және ауыстыру
-Comment[km]=មើល ហើយប្ដូរប្លង់ផ្ទៃតុសកម្ម
-Comment[ko]=데스크톱 활동을 보거나 바꾸기
-Comment[lt]=Peržiūrėti ir persijungti tarp darbastalio veiklų
-Comment[lv]=Parādīt un pārslēgties starp virtuālajām darbvirsmām
-Comment[mr]=वेगळ्या डेस्कटॉप कार्यपध्दतीवर जाण्यासाठी यादी दर्शवा व बदला
-Comment[nb]=Vis og bytt mellom skrivebordsaktiviteter
-Comment[nds]=Aktiv Schriefdischakschonen ankieken un wesseln
-Comment[nl]=Bureaubladactiviteiten laten zien en er tussen schakelen
-Comment[pa]=ਡੈਸਕਟਾਪ ਸਰਗਰਮੀਆਂ ਵੇਖੋ ਅਤੇ ਉਹਨਾਂ ਵਿੱਚ ਜਾਉ
-Comment[pl]=Tworzenie listy i przełączanie się pomiędzy działaniami pulpitu
-Comment[pt]=Ver e mudar de actividades no ambiente de trabalho
-Comment[pt_BR]=Lista e alterna entre as atividades da área de trabalho
-Comment[ro]=Vizualizează și schimbă între activitățile biroului
-Comment[ru]=Просмотр и переключение между комнатами
-Comment[sk]=Vypísať a prepínať medzi aktivitami pracovnej plochy
-Comment[sl]=Oglejte si namizne dejavnosti in preklopite med njimi
-Comment[sr]=Приказ и пребацивање између активности површи
-Comment[sr@ijekavian]=Приказ и пребацивање између активности површи
-Comment[sr@ijekavianlatin]=Prikaz i prebacivanje između aktivnosti površi
-Comment[sr@latin]=Prikaz i prebacivanje između aktivnosti površi
-Comment[sv]=Visa och byt mellan skrivbordsaktiviteter
-Comment[tr]=Listele ve masaüstü eylemleri arasında değiştir
-Comment[ug]=ئۈستەلئۈستى پائالىيەتلىرى ئارىسىدىكى تىزىم ۋە ئالماشتۇرۇش
-Comment[uk]=Перегляд і перемикання між просторами дій стільниці
-Comment[vi]=Liệt kê và chuyển đổi giữa các Hoạt động màn hình làm việc
-Comment[wa]=Fé l' djivêye eyet passer d' ene activité do scribanne a ene ôte
-Comment[x-test]=xxList and switch between desktop activitiesxx
-Comment[zh_CN]=显示和切换桌面活动
-Comment[zh_TW]=列出並在桌面活動間切換
-X-KDE-ServiceTypes=Plasma/Runner
-Type=Service
-Icon=preferences-activities
-X-KDE-Library=krunner_activities
-X-KDE-PluginInfo-Author=Plasma Team
-X-KDE-PluginInfo-Email=plasma-devel@kde.org
-X-KDE-PluginInfo-Name=org.kde.activities
-X-KDE-PluginInfo-Version=1.0
-X-KDE-PluginInfo-License=LGPL
-X-KDE-PluginInfo-EnabledByDefault=true
-X-Plasma-AdvertiseSingleRunnerQueryMode=true
diff --git a/powerdevil/daemon/CMakeLists.txt b/powerdevil/daemon/CMakeLists.txt
index e7f1b3ef..713a07e0 100644
--- a/powerdevil/daemon/CMakeLists.txt
+++ b/powerdevil/daemon/CMakeLists.txt
@@ -1,6 +1,5 @@
include_directories(${CMAKE_CURRENT_SOURCE_DIR}
- ${CMAKE_CURRENT_BINARY_DIR}
- ${KACTIVITIES_INCLUDE_DIR})
+ ${CMAKE_CURRENT_BINARY_DIR})
add_subdirectory(actions)
@@ -54,7 +53,6 @@ target_link_libraries(powerdevilcore
${KDE4_SOLID_LIBS}
${KDE4_KIDLETIME_LIBS}
${KDE4_PLASMA_LIBS}
- ${KACTIVITIES_LIBRARIES}
kworkspace
)
diff --git a/powerdevil/kcmodule/CMakeLists.txt b/powerdevil/kcmodule/CMakeLists.txt
index bb3c13e9..6ac72936 100644
--- a/powerdevil/kcmodule/CMakeLists.txt
+++ b/powerdevil/kcmodule/CMakeLists.txt
@@ -5,6 +5,5 @@ include_directories (
add_subdirectory(common)
-add_subdirectory(activities)
add_subdirectory(global)
add_subdirectory(profiles)
diff --git a/powerdevil/kcmodule/activities/CMakeLists.txt b/powerdevil/kcmodule/activities/CMakeLists.txt
deleted file mode 100644
index afe5ce82..00000000
--- a/powerdevil/kcmodule/activities/CMakeLists.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-
-set( kcm_powerdevil_activities_SRCS
- activitypage.cpp
- activitywidget.cpp
- ../common/ErrorOverlay.cpp
-)
-
-kde4_add_ui_files(kcm_powerdevil_activities_SRCS
- activityWidget.ui)
-
-kde4_add_kcfg_files(kcm_powerdevil_activities_SRCS ../../PowerDevilSettings.kcfgc)
-
-kde4_add_plugin(kcm_powerdevilactivitiesconfig ${kcm_powerdevil_activities_SRCS})
-
-include_directories(${KACTIVITIES_INCLUDE_DIR})
-
-target_link_libraries(kcm_powerdevilactivitiesconfig
- ${KDE4_KDECORE_LIBS}
- ${KDE4_KDEUI_LIBRARY}
- ${KDE4_SOLID_LIBS}
- ${KACTIVITIES_LIBRARIES}
- powerdevilconfigcommonprivate
-)
-
-install(TARGETS kcm_powerdevilactivitiesconfig DESTINATION ${PLUGIN_INSTALL_DIR} )
-install( FILES powerdevilactivitiesconfig.desktop DESTINATION ${SERVICES_INSTALL_DIR} )
diff --git a/powerdevil/kcmodule/activities/Messages.sh b/powerdevil/kcmodule/activities/Messages.sh
deleted file mode 100644
index c65284a8..00000000
--- a/powerdevil/kcmodule/activities/Messages.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#! /bin/sh
-$EXTRACTRC `find -name \*.ui -o -name \*.rc -o -name \*.kcfg` >> rc.cpp || exit 11
-$XGETTEXT `find -name \*.cpp -o -name \*.h` -o $podir/powerdevilactivitiesconfig.pot
-rm -f rc.cpp
-
diff --git a/powerdevil/kcmodule/activities/activityWidget.ui b/powerdevil/kcmodule/activities/activityWidget.ui
deleted file mode 100644
index ec22df23..00000000
--- a/powerdevil/kcmodule/activities/activityWidget.ui
+++ /dev/null
@@ -1,192 +0,0 @@
-
-
- ActivityWidget
-
-
-
- 0
- 0
- 676
- 474
-
-
-
- -
-
-
-
-
-
- Don't use special settings
-
-
- true
-
-
-
- -
-
-
-
-
-
- Act like
-
-
-
- -
-
-
- false
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
-
-
- -
-
-
- Define a special behavior
-
-
-
- -
-
-
- 30
-
-
-
-
-
- Never shutdown the screen
-
-
-
- -
-
-
- Never suspend or shutdown the computer
-
-
-
- -
-
-
- 10
-
-
-
-
-
- Always
-
-
-
- -
-
-
- -
-
-
- after
-
-
-
- -
-
-
- min
-
-
- 1
-
-
- 360
-
-
-
- -
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
-
-
-
-
- -
-
-
- Use separate settings (advanced users only)
-
-
-
- -
-
-
- 30
-
-
-
-
-
- -
-
-
- Qt::Vertical
-
-
-
- 20
- 268
-
-
-
-
-
-
-
-
- KComboBox
- QComboBox
-
-
-
-
-
-
- actLikeRadio
- toggled(bool)
- actLikeComboBox
- setEnabled(bool)
-
-
- 44
- 66
-
-
- 133
- 66
-
-
-
-
-
diff --git a/powerdevil/kcmodule/activities/activitypage.cpp b/powerdevil/kcmodule/activities/activitypage.cpp
deleted file mode 100644
index d8f11693..00000000
--- a/powerdevil/kcmodule/activities/activitypage.cpp
+++ /dev/null
@@ -1,219 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2011 by Dario Freddi *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
- ***************************************************************************/
-
-
-#include "activitypage.h"
-
-#include "activitywidget.h"
-
-#include
-
-#include
-#include
-
-#include
-#include
-#include
-#include
-#include
-
-#include
-#include
-#include
-#include
-#include
-#include
-
-K_PLUGIN_FACTORY(PowerDevilActivitiesKCMFactory,
- registerPlugin();
- )
-K_EXPORT_PLUGIN(PowerDevilActivitiesKCMFactory("powerdevilactivitiesconfig","powerdevil"))
-
-ActivityPage::ActivityPage(QWidget *parent, const QVariantList &args)
- : KCModule(PowerDevilActivitiesKCMFactory::componentData(), parent, args)
- , m_activityConsumer(new KActivities::Consumer(this))
-{
- setButtons(Apply | Help);
-
- KAboutData *about =
- new KAboutData("powerdevilactivitiesconfig", "powerdevilactivitiesconfig", ki18n("Activities Power Management Configuration"),
- "", ki18n("A per-activity configurator of KDE Power Management System"),
- KAboutData::License_GPL, ki18n("(c), 2010 Dario Freddi"),
- ki18n("From this module, you can fine tune power management settings for each of your activities."));
-
- about->addAuthor(ki18n("Dario Freddi"), ki18n("Maintainer") , "drf@kde.org",
- "http://drfav.wordpress.com");
-
- setAboutData(about);
-
- // Build the UI
- KTabWidget *tabWidget = new KTabWidget();
- QVBoxLayout *lay = new QVBoxLayout();
-
- foreach (const QString &activity, m_activityConsumer->listActivities()) {
- KActivities::Info *info = new KActivities::Info(activity, this);
- QString icon = info->icon();
- QString name = info->name();
- kDebug() << activity << info->isValid() << info->availability();
-
- QScrollArea *scrollArea = new QScrollArea();
- scrollArea->setFrameShape(QFrame::NoFrame);
- scrollArea->setFrameShadow(QFrame::Plain);
- scrollArea->setLineWidth(0);
- scrollArea->setWidgetResizable(true);
-
- ActivityWidget *activityWidget = new ActivityWidget(activity);
- scrollArea->setWidget(activityWidget);
-
- activityWidget->load();
- m_activityWidgets.append(activityWidget);
-
- connect(activityWidget, SIGNAL(changed(bool)), this, SIGNAL(changed(bool)));
-
- tabWidget->addTab(scrollArea, KIcon(icon), name);
- }
-
- // Message widget
- m_messageWidget = new KMessageWidget(i18n("The activity service is running with bare functionalities.\n"
- "Names and icons of the activities might not be available."));
- m_messageWidget.data()->setMessageType(KMessageWidget::Warning);
- m_messageWidget.data()->hide();
-
- lay->addWidget(m_messageWidget.data());
- lay->addWidget(tabWidget);
- setLayout(lay);
-
- connect(m_activityConsumer, SIGNAL(serviceStatusChanged(KActivities::Consumer::ServiceStatus)),
- this, SLOT(onActivityServiceStatusChanged(KActivities::Consumer::ServiceStatus)));
- onActivityServiceStatusChanged(m_activityConsumer->serviceStatus());
-
- QDBusServiceWatcher *watcher = new QDBusServiceWatcher("org.kde.Solid.PowerManagement",
- QDBusConnection::sessionBus(),
- QDBusServiceWatcher::WatchForRegistration |
- QDBusServiceWatcher::WatchForUnregistration,
- this);
-
- connect(watcher, SIGNAL(serviceRegistered(QString)), this, SLOT(onServiceRegistered(QString)));
- connect(watcher, SIGNAL(serviceUnregistered(QString)), this, SLOT(onServiceUnregistered(QString)));
-
- if (QDBusConnection::sessionBus().interface()->isServiceRegistered("org.kde.Solid.PowerManagement")) {
- onServiceRegistered("org.kde.Solid.PowerManagement");
- } else {
- onServiceUnregistered("org.kde.Solid.PowerManagement");
- }
-}
-
-ActivityPage::~ActivityPage()
-{
-
-}
-
-void ActivityPage::load()
-{
- foreach (ActivityWidget *widget, m_activityWidgets) {
- widget->load();
- }
-
- emit changed(false);
-}
-
-void ActivityPage::save()
-{
- foreach (ActivityWidget *widget, m_activityWidgets) {
- widget->save();
- }
-
- emit changed(false);
-
- // Ask to refresh status
- QDBusMessage call = QDBusMessage::createMethodCall("org.kde.Solid.PowerManagement", "/org/kde/Solid/PowerManagement",
- "org.kde.Solid.PowerManagement", "refreshStatus");
-
- // Perform call
- QDBusConnection::sessionBus().asyncCall(call);
-}
-
-void ActivityPage::fillUi()
-{
-
-}
-
-void ActivityPage::onActivityServiceStatusChanged(KActivities::Consumer::ServiceStatus status)
-{
- switch (status) {
- case KActivities::Consumer::NotRunning:
- // Create error overlay, if not present
- if (m_errorOverlay.isNull()) {
- m_errorOverlay = new ErrorOverlay(this, i18n("The activity service is not running.\n"
- "It is necessary to have the activity manager running "
- "to configure activity-specific power management behavior."),
- this);
- }
- break;
- case KActivities::Consumer::BareFunctionality:
- // Show message widget
- m_messageWidget.data()->show();
- break;
- case KActivities::Consumer::FullFunctionality:
- if (m_previousServiceStatus != KActivities::Consumer::FullFunctionality &&
- !m_errorOverlay.isNull()) {
- m_errorOverlay.data()->deleteLater();
- if (QDBusConnection::sessionBus().interface()->isServiceRegistered("org.kde.Solid.PowerManagement")) {
- onServiceRegistered("org.kde.Solid.PowerManagement");
- } else {
- onServiceUnregistered("org.kde.Solid.PowerManagement");
- }
- }
- if (m_messageWidget.data()->isVisible()) {
- m_messageWidget.data()->hide();
- }
- break;
- }
-}
-
-void ActivityPage::defaults()
-{
- KCModule::defaults();
-}
-
-void ActivityPage::onServiceRegistered(const QString& service)
-{
- Q_UNUSED(service);
-
- if (!m_errorOverlay.isNull()) {
- m_errorOverlay.data()->deleteLater();
- }
-
- onActivityServiceStatusChanged(m_activityConsumer->serviceStatus());
-}
-
-void ActivityPage::onServiceUnregistered(const QString& service)
-{
- Q_UNUSED(service);
-
- if (!m_errorOverlay.isNull()) {
- return;
- }
-
- m_errorOverlay = new ErrorOverlay(this, i18n("The Power Management Service appears not to be running.\n"
- "This can be solved by starting or scheduling it inside \"Startup and Shutdown\""),
- this);
-}
-
-#include "activitypage.moc"
diff --git a/powerdevil/kcmodule/activities/activitypage.h b/powerdevil/kcmodule/activities/activitypage.h
deleted file mode 100644
index 230f8354..00000000
--- a/powerdevil/kcmodule/activities/activitypage.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2011 by Dario Freddi *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
- ***************************************************************************/
-
-
-#ifndef ACTIVITYPAGE_H
-#define ACTIVITYPAGE_H
-
-#include
-
-#include
-
-class ErrorOverlay;
-class ActivityWidget;
-class KMessageWidget;
-class ActivityPage : public KCModule
-{
- Q_OBJECT
-
-public:
- ActivityPage(QWidget *parent, const QVariantList &args);
- virtual ~ActivityPage();
- void fillUi();
-
- void load();
- void save();
- virtual void defaults();
-
-private Q_SLOTS:
- void onActivityServiceStatusChanged(KActivities::Consumer::ServiceStatus status);
- void onServiceRegistered(const QString &service);
- void onServiceUnregistered(const QString &service);
-
-private:
- KActivities::Consumer *m_activityConsumer;
- QList< ActivityWidget* > m_activityWidgets;
- QWeakPointer< ErrorOverlay > m_errorOverlay;
- QWeakPointer< KMessageWidget > m_messageWidget;
- KActivities::Consumer::ServiceStatus m_previousServiceStatus;
-};
-
-#endif // ACTIVITYPAGE_H
diff --git a/powerdevil/kcmodule/activities/activitywidget.cpp b/powerdevil/kcmodule/activities/activitywidget.cpp
deleted file mode 100644
index 8d9517a7..00000000
--- a/powerdevil/kcmodule/activities/activitywidget.cpp
+++ /dev/null
@@ -1,189 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2011 by Dario Freddi *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
- ***************************************************************************/
-
-
-#include "activitywidget.h"
-
-#include "ui_activityWidget.h"
-
-#include "daemon/actions/bundled/suspendsession.h"
-
-#include
-#include
-#include
-#include
-
-ActivityWidget::ActivityWidget(const QString& activity, QWidget* parent)
- : QWidget(parent)
- , m_ui(new Ui::ActivityWidget)
- , m_profilesConfig(KSharedConfig::openConfig("powermanagementprofilesrc", KConfig::SimpleConfig | KConfig::CascadeConfig))
- , m_activity(activity)
- , m_activityConsumer(new KActivities::Consumer(this))
- , m_actionEditWidget(new ActionEditWidget(QString("Activities/%1/SeparateSettings").arg(activity)))
-{
- m_ui->setupUi(this);
-
- m_ui->separateSettingsLayout->addWidget(m_actionEditWidget);
-
- for (int i = 0; i < m_ui->specialBehaviorLayout->count(); ++i) {
- QWidget *widget = m_ui->specialBehaviorLayout->itemAt(i)->widget();
- if (widget) {
- widget->setVisible(false);
- connect(m_ui->specialBehaviorRadio, SIGNAL(toggled(bool)), widget, SLOT(setVisible(bool)));
- } else {
- QLayout *layout = m_ui->specialBehaviorLayout->itemAt(i)->layout();
- if (layout) {
- for (int j = 0; j < layout->count(); ++j) {
- QWidget *widget = layout->itemAt(j)->widget();
- if (widget) {
- widget->setVisible(false);
- connect(m_ui->specialBehaviorRadio, SIGNAL(toggled(bool)), widget, SLOT(setVisible(bool)));
- }
- }
- }
- }
- }
-
- m_actionEditWidget->setVisible(false);
- m_actionEditWidget->load();
-
- connect(m_ui->separateSettingsRadio, SIGNAL(toggled(bool)), m_actionEditWidget, SLOT(setVisible(bool)));
-
- connect(m_ui->actLikeRadio, SIGNAL(toggled(bool)), this, SLOT(setChanged()));
- connect(m_ui->noSettingsRadio, SIGNAL(toggled(bool)), this, SLOT(setChanged()));
- connect(m_ui->separateSettingsRadio, SIGNAL(toggled(bool)), this, SLOT(setChanged()));
- connect(m_ui->specialBehaviorRadio, SIGNAL(toggled(bool)), this, SLOT(setChanged()));
- connect(m_ui->actLikeComboBox, SIGNAL(currentIndexChanged(int)), this, SLOT(setChanged()));
- connect(m_ui->alwaysActionBox, SIGNAL(currentIndexChanged(int)), this, SLOT(setChanged()));
- connect(m_ui->alwaysAfterSpin, SIGNAL(valueChanged(int)), this, SLOT(setChanged()));
-
- connect(m_actionEditWidget, SIGNAL(changed(bool)), this, SIGNAL(changed(bool)));
-}
-
-ActivityWidget::~ActivityWidget()
-{
-
-}
-
-void ActivityWidget::load()
-{
- KConfigGroup activitiesGroup(m_profilesConfig, "Activities");
- KConfigGroup config = activitiesGroup.group(m_activity);
-
- using namespace PowerDevil::BundledActions;
-
- QSet< Solid::PowerManagement::SleepState > methods = Solid::PowerManagement::supportedSleepStates();
-
- if (methods.contains(Solid::PowerManagement::SuspendState)) {
- m_ui->alwaysActionBox->addItem(KIcon("system-suspend"),
- i18n("Sleep"), (uint)SuspendSession::ToRamMode);
- }
- if (methods.contains(Solid::PowerManagement::HibernateState)) {
- m_ui->alwaysActionBox->addItem(KIcon("system-suspend-hibernate"),
- i18n("Hibernate"), (uint)SuspendSession::ToDiskMode);
- }
- m_ui->alwaysActionBox->addItem(KIcon("system-shutdown"), i18n("Shutdown"), (uint)SuspendSession::ShutdownMode);
-
- m_ui->actLikeComboBox->clear();
-
- m_ui->actLikeComboBox->addItem(KIcon("battery-charging"), i18n("PC running on AC power"), "AC");
- m_ui->actLikeComboBox->addItem(KIcon("battery-060"), i18n("PC running on battery power"), "Battery");
- m_ui->actLikeComboBox->addItem(KIcon("battery-low"), i18n("PC running on low battery"), "LowBattery");
-
- foreach (const QString &activity, m_activityConsumer->listActivities()) {
- if (activity == m_activity) {
- continue;
- }
-
- if (activitiesGroup.group(activity).readEntry("mode", "None") == "None" ||
- activitiesGroup.group(activity).readEntry("mode", "None") == "ActLike") {
- continue;
- }
-
- KActivities::Info *info = new KActivities::Info(activity, this);
- QString icon = info->icon();
- QString name = i18nc("This is meant to be: Act like activity %1",
- "Activity \"%1\"", info->name());
-
- m_ui->actLikeComboBox->addItem(KIcon(icon), name, activity);
- }
-
- // Proper loading routine
-
- if (config.readEntry("mode", QString()) == "ActLike") {
- m_ui->actLikeRadio->setChecked(true);
- m_ui->actLikeComboBox->setCurrentIndex(m_ui->actLikeComboBox->findData(config.readEntry("actLike", QString())));
- } else if (config.readEntry("mode", QString()) == "SpecialBehavior") {
- m_ui->specialBehaviorRadio->setChecked(true);
- KConfigGroup behaviorGroup = config.group("SpecialBehavior");
-
- m_ui->noShutdownPCBox->setChecked(behaviorGroup.readEntry("noSuspend", false));
- m_ui->noShutdownScreenBox->setChecked(behaviorGroup.readEntry("noScreenManagement", false));
- m_ui->alwaysBox->setChecked(behaviorGroup.readEntry("performAction", false));
-
- KConfigGroup actionConfig = behaviorGroup.group("ActionConfig");
- m_ui->alwaysActionBox->setCurrentIndex(m_ui->alwaysActionBox->findData(actionConfig.readEntry("suspendType", 0)));
- m_ui->alwaysAfterSpin->setValue(actionConfig.readEntry("idleTime", 600000) / 60 / 1000);
- } else if (config.readEntry("mode", QString()) == "SeparateSettings") {
- m_ui->separateSettingsRadio->setChecked(true);
-
- m_actionEditWidget->load();
- }
-}
-
-void ActivityWidget::save()
-{
- KConfigGroup activitiesGroup(m_profilesConfig, "Activities");
- KConfigGroup config = activitiesGroup.group(m_activity);
-
- if (m_ui->actLikeRadio->isChecked()) {
- config.writeEntry("mode", "ActLike");
- config.writeEntry("actLike", m_ui->actLikeComboBox->itemData(m_ui->actLikeComboBox->currentIndex()).toString());
- } else if (m_ui->specialBehaviorRadio->isChecked()) {
- config.writeEntry("mode", "SpecialBehavior");
-
- KConfigGroup behaviorGroup = config.group("SpecialBehavior");
-
- behaviorGroup.writeEntry("noSuspend", m_ui->noShutdownPCBox->isChecked());
- behaviorGroup.writeEntry("noScreenManagement", m_ui->noShutdownScreenBox->isChecked());
- behaviorGroup.writeEntry("performAction", m_ui->alwaysBox->isChecked());
-
- KConfigGroup actionConfig = behaviorGroup.group("ActionConfig");
- actionConfig.writeEntry("suspendType", m_ui->alwaysActionBox->itemData(m_ui->alwaysActionBox->currentIndex()));
- actionConfig.writeEntry("idleTime", m_ui->alwaysAfterSpin->value() * 60 * 1000);
-
- actionConfig.sync();
- behaviorGroup.sync();
- } else if (m_ui->separateSettingsRadio->isChecked()) {
- config.writeEntry("mode", "SeparateSettings");
- m_actionEditWidget->save();
- } else {
- config.writeEntry("mode", "None");
- }
-
- config.sync();
-}
-
-void ActivityWidget::setChanged()
-{
- emit changed(true);
-}
-
-
-#include "activitywidget.moc"
diff --git a/powerdevil/kcmodule/activities/activitywidget.h b/powerdevil/kcmodule/activities/activitywidget.h
deleted file mode 100644
index 992029d6..00000000
--- a/powerdevil/kcmodule/activities/activitywidget.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/***************************************************************************
- * Copyright (C) 2011 by Dario Freddi *
- * *
- * This program is free software; you can redistribute it and/or modify *
- * it under the terms of the GNU General Public License as published by *
- * the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License *
- * along with this program; if not, write to the *
- * Free Software Foundation, Inc., *
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
- ***************************************************************************/
-
-
-#ifndef ACTIVITYWIDGET_H
-#define ACTIVITYWIDGET_H
-
-#include
-#include
-
-class ActionEditWidget;
-namespace KActivities
-{
-class Consumer;
-} // namespace KActivities
-
-namespace Ui {
-class ActivityWidget;
-}
-
-class ActivityWidget : public QWidget
-{
- Q_OBJECT
-public:
- explicit ActivityWidget(const QString &activity, QWidget *parent = 0);
- virtual ~ActivityWidget();
-
-public Q_SLOTS:
- void load();
- void save();
-
- void setChanged();
-
-Q_SIGNALS:
- void changed(bool changed);
-
-private:
- Ui::ActivityWidget *m_ui;
- KSharedConfig::Ptr m_profilesConfig;
- QString m_activity;
- KActivities::Consumer *m_activityConsumer;
- ActionEditWidget* m_actionEditWidget;
-};
-
-#endif // ACTIVITYWIDGET_H
diff --git a/powerdevil/kcmodule/activities/powerdevilactivitiesconfig.desktop b/powerdevil/kcmodule/activities/powerdevilactivitiesconfig.desktop
deleted file mode 100644
index b0980312..00000000
--- a/powerdevil/kcmodule/activities/powerdevilactivitiesconfig.desktop
+++ /dev/null
@@ -1,147 +0,0 @@
-[Desktop Entry]
-Exec=kcmshell4 powerdevilactivitiesconfig
-Icon=preferences-activities
-Type=Service
-X-KDE-ServiceTypes=KCModule
-X-DocPath=kcontrol/powerdevil/index.html#activity-setting
-
-X-KDE-Library=kcm_powerdevilactivitiesconfig
-X-KDE-ParentApp=kcontrol
-
-X-KDE-System-Settings-Parent-Category=power-management
-X-KDE-Weight=50
-
-Name=Activity Settings
-Name[bs]=Postavke aktivnosti
-Name[ca]=Arranjament d'activitat
-Name[ca@valencia]=Arranjament d'activitat
-Name[cs]=Nastavení aktivit
-Name[da]=Aktivitetsindstillinger
-Name[de]=Aktivitäten-Einstellungen
-Name[el]=Ρυθμίσεις δραστηριοτήτων
-Name[en_GB]=Activity Settings
-Name[es]=Preferencias de la actividad
-Name[et]=Tegevuse seadistused
-Name[eu]=Jarduera-ezarpenak
-Name[fi]=Aktiviteettiasetukset
-Name[fr]=Configuration des activités
-Name[ga]=Socruithe Gníomhaíochta
-Name[gl]=Configuración da actividade
-Name[he]=הגדרות של פעילות
-Name[hu]=Aktivitásjellemzők
-Name[ia]=Preferentias de activitate
-Name[is]=Virknistillingar
-Name[kk]=Істің параметрлері
-Name[km]=ការកំណត់សកម្មភាព
-Name[ko]=활동 설정
-Name[lt]=Veiklos nustatymai
-Name[mr]=कार्यपध्दती संयोजना
-Name[nb]=Aktivitetsinnstillinger
-Name[nds]=Aktiviteteninstellen
-Name[nl]=Instellingen voor activiteiten
-Name[pa]=ਐਕਟਵਿਟੀ ਸੈਟਿੰਗ
-Name[pl]=Ustawienia działań
-Name[pt]=Configuração da Actividade
-Name[pt_BR]=Configurações da atividade
-Name[ro]=Configurare activități
-Name[ru]=Настройка для комнат
-Name[sk]=Nastavenie aktivity
-Name[sl]=Nastavitve dejavnosti
-Name[sr]=Поставке активности
-Name[sr@ijekavian]=Поставке активности
-Name[sr@ijekavianlatin]=Postavke aktivnosti
-Name[sr@latin]=Postavke aktivnosti
-Name[sv]=Inställningar av aktiviteter
-Name[tr]=Etkinlik Ayarları
-Name[uk]=Параметри простору дій
-Name[vi]=Thiết lập Hoạt động
-Name[x-test]=xxActivity Settingsxx
-Name[zh_CN]=活动设置
-Name[zh_TW]=活動設定
-
-Comment=Configure per-activity Power Management
-Comment[bs]=Konfiguracija po aktivnosti upravljanja napajanjem
-Comment[ca]=Configura l'arranjament per activitat de gestió d'energia
-Comment[ca@valencia]=Configura l'arranjament per activitat de gestió d'energia
-Comment[cs]=Konfigurace správy napájení na činnost
-Comment[da]=Indstil strømstyring pr. aktivitet
-Comment[de]=Energieprofile pro Aktivität einzeln einrichten
-Comment[el]=Διαμόρφωση ανά δραστηριότητα επιλογών διαχείρισης ενέργειας
-Comment[en_GB]=Configure per-activity Power Management
-Comment[es]=Configurar de las preferencias de la gestión de energía por actividad
-Comment[et]=Toitehalduse seadistused tegevuste kaupa
-Comment[eu]=Konfiguratu energia-kudeaketa jardueraka
-Comment[fi]=Virranhallinnan aktiviteettikohtaiset asetukset
-Comment[fr]=Configuration de la gestion d'énergie par activité
-Comment[gl]=Configura a xestión da enerxía para cada actividade
-Comment[he]=הגדרות צריכת חשמל לפי פעילות
-Comment[hu]=Aktivitásonkénti energiakezelési beállítások módosítása
-Comment[ia]=Configura gestion de energia per activitate
-Comment[is]=Stilla orkustýringu á hverja virkni
-Comment[kk]=Әрбір істің қуаттандыру параметрлерін баптау
-Comment[km]=កំណត់រចនាសម្ព័ន្ធកនៃការគ្រប់គ្រងថាមពលក្នុងមួយសកម្មភាព
-Comment[ko]=활동별 전원 관리 설정
-Comment[lt]=Konfigūruoti atskiros veiklos energijos valdymo nustatymus
-Comment[mr]=प्रत्येक कार्यपध्दती साठी वीज व्यवस्थापन संयोजीत करा
-Comment[nb]=Sett opp strømstyring per aktivitet
-Comment[nds]=Stroompleeg för enkelte Aktiviteten instellen
-Comment[nl]=Energiebeheer per activiteit instellen
-Comment[pa]=ਪ੍ਰਤੀ-ਸਰਗਰਮੀ ਪਾਵਰ ਪਰਬੰਧ ਸੈਟਿੰਗ ਸੰਰਚਨਾ
-Comment[pl]=Ustawienia zarządzania energią w zależności od działania
-Comment[pt]=Configurar a Gestão de Energia por Actividade
-Comment[pt_BR]=Configura o gerenciamento de energia por atividade
-Comment[ro]=Configurează gestiunea alimentării per activitate
-Comment[ru]=Настройка параметров энергосбережения для комнат
-Comment[sk]=Nastaviť nastavenia správy napájania podľa aktivity
-Comment[sl]=Nastavi upravljanje z energijo glede na dejavnost
-Comment[sr]=Подешавање управљања напајањем према активности
-Comment[sr@ijekavian]=Подешавање управљања напајањем према активности
-Comment[sr@ijekavianlatin]=Podešavanje upravljanja napajanjem prema aktivnosti
-Comment[sr@latin]=Podešavanje upravljanja napajanjem prema aktivnosti
-Comment[sv]=Anpassa inställningar av strömhantering per aktivitet
-Comment[tr]=Her Etkinlik için Genel Güç Yönetimi Ayarlarını Yapılandır
-Comment[uk]=Налаштування окремих параметрів керування живленням простору дій
-Comment[vi]=Cấu hình Quản lý năng lượng cho từng Hoạt động
-Comment[x-test]=xxConfigure per-activity Power Managementxx
-Comment[zh_CN]=配置基于活动的电源管理
-Comment[zh_TW]=設定個別活動的電源管理
-
-X-KDE-Keywords=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities
-X-KDE-Keywords[bs]=Sistem, Napajanje, Upravljanje napajanjem, energija, laptop, baterija, suspenzija, AC, suspendiraj, hiberniranje, osvljetljenje, perfomanse, kapak, aktivnost, aktivnosti
-X-KDE-Keywords[ca]=sistema,energia,gestió d'energia,corrent,portàtil,bateria,suspensió,AC,suspendre,hibernació,lluminositat,rendiment,tapa,activitat,activitats
-X-KDE-Keywords[ca@valencia]=sistema,energia,gestió d'energia,corrent,portàtil,bateria,suspensió,AC,suspendre,hibernació,lluminositat,rendiment,tapa,activitat,activitats
-X-KDE-Keywords[da]=system,strøm,strømstyring,energi,laptop,bærbar,batteri,suspension,AC,strømforsyning,suspender,slumre,dvale,lysstyrke,ydelse,låg,aktivitet,aktiviteter
-X-KDE-Keywords[de]=system,energie,energieverwaltung,laptop,notebook,akku,batterie,ruhezustand,tiefschlaf,helligkeit,leistung,deckel,aktivität
-X-KDE-Keywords[el]=σύστημα,ενέργεια,διαχείριση ενέργειας,ενέργεια,φορητός,μπαταρία,αναστολή,AC,κοίμηση,νάρκη,λαμπρότητα,επιδόσεις,καπάκι,δραστηριότητα,δραστηριότητες
-X-KDE-Keywords[en_GB]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities
-X-KDE-Keywords[es]=sistema,energía,gestión de energía,energía,portátil,batería,suspensión,AC,suspender,hibernar,brillo,rendimiento,tapa,actividad,actividades
-X-KDE-Keywords[et]=süsteem,energia,toide,toitehaldus,sülearvuti,aku,uneseisund,uni,talveuni, heledus,jõudlus,kaas,tegevus,tegevused
-X-KDE-Keywords[eu]=sistema,energia,energia-kudeaketa,energia,eramangarria,bateria,egonean,korronte alternoa,egonean uztea,hibernatu,distira,errendimendua,tapa,jarduera,jarduerak
-X-KDE-Keywords[fi]=järjestelmä,virta,virranhallinta,energia,kannettava,tietokone,läppäri,akku,lepotila,valmiustila,keskeytä,AC,virtalähde,kirkkaus,suorituskyky,kansi,aktiviteetti,aktiviteetit
-X-KDE-Keywords[fr]=système, alimentation, gestion énergétique, énergie, portable, batterie, suspension, AC, suspendre, hiberner, luminosité, performance, capot, activité, activités
-X-KDE-Keywords[gl]=sistema,enerxía,xestión da enerxía, xestión enerxética,carga,portátil,batería, suspender,corrente,hibernar,durmir,brillo,rendemento,tapa,actividade
-X-KDE-Keywords[hu]=rendszer,energia,energiakezelés,energia,laptop,akkumulátor,AC,felfüggesztés,hibernálás,fényerő,teljesítmény,fedél,aktivitás,aktivitások
-X-KDE-Keywords[ia]=systema,potentia,gestion de potentia,energia,laptop,batteria,suspension,CA,suspende,hiberna,brillantia,prestation,coperculo,activitate,activitates
-X-KDE-Keywords[kk]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities
-X-KDE-Keywords[km]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities
-X-KDE-Keywords[ko]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities,시스템,전원,전원 관리,에너지,노트북,배터리,어댑터,절전,대기 모드,대기,최대 절전,최대 절전 모드,밝기,성능,덮개,상판,활동
-X-KDE-Keywords[mr]=प्रणाली, वीज, वीज व्यवस्थापन, ऊर्जा, लैपटॉप, बॅटरी, अकार्यक्षम, AC, अकार्यक्षम, हायबरनेट, प्रखरता, लिड, कार्य
-X-KDE-Keywords[nb]=system,strøm,strømstyring,energi,bærbar,batteri,hvilemodus,AC,hvile,dvale,lysstyrke,ytelse,lokk,aktivitet,aktiviteter
-X-KDE-Keywords[nds]=Systeem,Stroom,Stroompleeg,Energie,Klappreekner,Batterie,utsetten,AC,Wesselstroom,infreren,Helligkeit,Leisten,Aktiviteet,Aktiviteten
-X-KDE-Keywords[nl]=systeem,energie,energiebeheer,laptop,batterij,accu,suspension,AC,onderbreken,slapen,helderheid,prestaties,deksel,activiteit,activiteiten
-X-KDE-Keywords[pl]=system,moc,zarządzanie energią,energia,laptop,bateria,wstrzymanie,AC,wstrzymaj,hibernuj,jasność,wydajność,pokrywka,działanie,działania
-X-KDE-Keywords[pt]=sistema,energia,gestão de energia,portátil,bateria,suspensão,AC,suspender,hibernar,brilho,performance,tampo,actividade,actividades
-X-KDE-Keywords[pt_BR]=sistema,energia,gerenciamento de energia,energia,portátil,laptop,notebook,bateria,suspensão,AC,suspender,hibernar,brilho,desempenho,tampa,atividade,atividades
-X-KDE-Keywords[ru]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities,системное,питание,управление питанием,энергопотребление,ноутбук,батарея,спящий режим,гибернация,ждущий режим,яркость,производительность,крышка,комната,комнаты
-X-KDE-Keywords[sk]=systém,napájanie,správa napájanie,energia,laptop,batéria,uspanie,AC,uspať,hibernovať,jas,výkon,kryt,aktivita,aktivity
-X-KDE-Keywords[sl]=sistem,energija,upravljanje z energijo,prenosnik,prenosni računalnik,baterija,akumulator,pripravljenost,mirovanje,električno omrežje,svetlost,zmogljivost,pokrov,dejavnost,dejavnosti,napajanje
-X-KDE-Keywords[sr]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities,систем,напајање,струја,управљање напајањем,лаптоп,батерија,суспендовање,АЦ,хибернација,светлина,осветљај,перформансе,поклопац,активност
-X-KDE-Keywords[sr@ijekavian]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities,систем,напајање,струја,управљање напајањем,лаптоп,батерија,суспендовање,АЦ,хибернација,светлина,осветљај,перформансе,поклопац,активност
-X-KDE-Keywords[sr@ijekavianlatin]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities,sistem,napajanje,struja,upravljanje napajanjem,laptop,baterija,suspendovanje,AC,hibernacija,svetlina,osvetljaj,performanse,poklopac,aktivnost
-X-KDE-Keywords[sr@latin]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities,sistem,napajanje,struja,upravljanje napajanjem,laptop,baterija,suspendovanje,AC,hibernacija,svetlina,osvetljaj,performanse,poklopac,aktivnost
-X-KDE-Keywords[sv]=system,kraft,krafthantering,energi,bärbar dator,batteri,viloläge,AC,gå till viloläge,dvala,ljusstyrka,prestanda,lock,aktivitet,aktiviteter
-X-KDE-Keywords[tr]=sistem,güç,güç yönetimi,enerji,dizüstü,pil,askıya alma,Adaptör,uyku kipi,hazırda bekletme,parlaklık,performans,başarım,dizüstü kapağı,ekran parlaklığı,etkinlik,etkinlikler
-X-KDE-Keywords[uk]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities,система,живлення,мережа,струм,керування,енергія,ноутбук,акумулятор,батарея,батареї,присипляння,призупинення,призупинка,яскравість,швидкодія,кришка,кришки,простір,дій,простори,активність
-X-KDE-Keywords[x-test]=xxsystem,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activitiesxx
-X-KDE-Keywords[zh_CN]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities,系统,电源,电源管理,能源,笔记本,电池,休眠,睡眠,交流,亮度,性能,活动
-X-KDE-Keywords[zh_TW]=system,power,power management,energy,laptop,battery,suspension,AC,suspend,hibernate,brightness,performance,lid,activity,activities