┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Čukić <[email protected]>2012-08-15 08:24:17 +0200
committerIvan Čukić <[email protected]>2012-08-15 08:25:24 +0200
commit50eaec7a81faaeccc5dbcc2f47cbd982a7dd7207 (patch)
treef993bb4611f653a9a7447692c408ecd24f4d1ebf
parent00935edbdead8955d7f8d0e3ef520139da3f3bec (diff)
parent8268c0813a3d20989b8cd1f88f8ae3996c1ddb52 (diff)
Merge branch 'ivan/dolphin-activities'
REVIEW:105973
-rw-r--r--src/CMakeLists.txt7
-rw-r--r--src/dolphinviewcontainer.cpp27
-rw-r--r--src/dolphinviewcontainer.h12
3 files changed, 46 insertions, 0 deletions
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index afc190f83..8ade48777 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -234,6 +234,13 @@ if (Nepomuk_FOUND)
)
endif (Nepomuk_FOUND)
+if (KActivities_FOUND)
+ target_link_libraries(
+ kdeinit_dolphin
+ ${KACTIVITIES_LIBRARY}
+ )
+endif (KActivities_FOUND)
+
install(TARGETS kdeinit_dolphin ${INSTALL_TARGETS_DEFAULT_ARGS})
install(TARGETS dolphin ${INSTALL_TARGETS_DEFAULT_ARGS})
diff --git a/src/dolphinviewcontainer.cpp b/src/dolphinviewcontainer.cpp
index 31c82d606..8a566cffd 100644
--- a/src/dolphinviewcontainer.cpp
+++ b/src/dolphinviewcontainer.cpp
@@ -44,6 +44,10 @@
#include <KUrlNavigator>
#include <KRun>
+#ifdef KActivities_FOUND
+#include <KActivities/ResourceInstance>
+#endif
+
#include "dolphin_generalsettings.h"
#include "filterbar/filterbar.h"
#include "search/dolphinsearchbox.h"
@@ -64,6 +68,9 @@ DolphinViewContainer::DolphinViewContainer(const KUrl& url, QWidget* parent) :
m_statusBarTimer(0),
m_statusBarTimestamp(),
m_autoGrabFocus(true)
+#ifdef KActivities_FOUND
+ , m_activityResourceInstance(0)
+#endif
{
hide();
@@ -157,6 +164,14 @@ DolphinViewContainer::DolphinViewContainer(const KUrl& url, QWidget* parent) :
m_topLayout->addWidget(m_statusBar);
setSearchModeEnabled(isSearchUrl(url));
+
+ // Initialize kactivities resource instance
+
+ #ifdef KActivities_FOUND
+ m_activityResourceInstance = new KActivities::ResourceInstance(
+ window()->winId(), url);
+ m_activityResourceInstance->setParent(this);
+ #endif
}
DolphinViewContainer::~DolphinViewContainer()
@@ -172,6 +187,14 @@ void DolphinViewContainer::setActive(bool active)
{
m_urlNavigator->setActive(active);
m_view->setActive(active);
+
+ #ifdef KActivities_FOUND
+ if (active) {
+ m_activityResourceInstance->notifyFocusedIn();
+ } else {
+ m_activityResourceInstance->notifyFocusedOut();
+ }
+ #endif
}
bool DolphinViewContainer::isActive() const
@@ -338,6 +361,10 @@ void DolphinViewContainer::setUrl(const KUrl& newUrl)
if (newUrl != m_urlNavigator->locationUrl()) {
m_urlNavigator->setLocationUrl(newUrl);
}
+
+ #ifdef KActivities_FOUND
+ m_activityResourceInstance->setUri(newUrl);
+ #endif
}
void DolphinViewContainer::setFilterBarVisible(bool visible)
diff --git a/src/dolphinviewcontainer.h b/src/dolphinviewcontainer.h
index fd52806d9..8a0309b0c 100644
--- a/src/dolphinviewcontainer.h
+++ b/src/dolphinviewcontainer.h
@@ -31,6 +31,13 @@
#include <QWidget>
#include <views/dolphinview.h>
+#include <config-apps.h>
+
+#ifdef KActivities_FOUND
+namespace KActivities {
+ class ResourceInstance;
+}
+#endif
class FilterBar;
class KMessageWidget;
@@ -308,6 +315,11 @@ private:
QTimer* m_statusBarTimer; // Triggers a delayed update
QElapsedTimer m_statusBarTimestamp; // Time in ms since last update
bool m_autoGrabFocus;
+
+#ifdef KActivities_FOUND
+private:
+ KActivities::ResourceInstance * m_activityResourceInstance;
+#endif
};
#endif // DOLPHINVIEWCONTAINER_H