┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/views/dolphinview.cpp1
-rw-r--r--src/views/versioncontrol/versioncontrolobserver.cpp21
-rw-r--r--src/views/versioncontrol/versioncontrolobserver.h5
3 files changed, 27 insertions, 0 deletions
diff --git a/src/views/dolphinview.cpp b/src/views/dolphinview.cpp
index 617c41ace..d64ae8622 100644
--- a/src/views/dolphinview.cpp
+++ b/src/views/dolphinview.cpp
@@ -182,6 +182,7 @@ DolphinView::DolphinView(const QUrl& url, QWidget* parent) :
#endif
m_versionControlObserver = new VersionControlObserver(this);
+ m_versionControlObserver->setView(this);
m_versionControlObserver->setModel(m_model);
connect(m_versionControlObserver, &VersionControlObserver::infoMessage, this, &DolphinView::infoMessage);
connect(m_versionControlObserver, &VersionControlObserver::errorMessage, this, &DolphinView::errorMessage);
diff --git a/src/views/versioncontrol/versioncontrolobserver.cpp b/src/views/versioncontrol/versioncontrolobserver.cpp
index d2e1ecd13..09344bc14 100644
--- a/src/views/versioncontrol/versioncontrolobserver.cpp
+++ b/src/views/versioncontrol/versioncontrolobserver.cpp
@@ -21,6 +21,7 @@
#include "dolphin_versioncontrolsettings.h"
#include "dolphindebug.h"
+#include "views/dolphinview.h"
#include "kitemviews/kfileitemmodel.h"
#include "updateitemstatesthread.h"
@@ -85,6 +86,26 @@ KFileItemModel* VersionControlObserver::model() const
return m_model;
}
+void VersionControlObserver::setView(DolphinView* view)
+{
+ if (m_view) {
+ disconnect(m_view, &DolphinView::activated,
+ this, &VersionControlObserver::delayedDirectoryVerification);
+ }
+
+ m_view = view;
+
+ if (m_view) {
+ connect(m_view, &DolphinView::activated,
+ this, &VersionControlObserver::delayedDirectoryVerification);
+ }
+}
+
+DolphinView* VersionControlObserver::view() const
+{
+ return m_view;
+}
+
QList<QAction*> VersionControlObserver::actions(const KFileItemList& items) const
{
bool hasNullItems = false;
diff --git a/src/views/versioncontrol/versioncontrolobserver.h b/src/views/versioncontrol/versioncontrolobserver.h
index a42bbea63..08279dc86 100644
--- a/src/views/versioncontrol/versioncontrolobserver.h
+++ b/src/views/versioncontrol/versioncontrolobserver.h
@@ -37,6 +37,8 @@ class QAction;
class QTimer;
class UpdateItemStatesThread;
+class DolphinView;
+
/**
* @brief Observes all version control plugins.
*
@@ -55,6 +57,8 @@ public:
void setModel(KFileItemModel* model);
KFileItemModel* model() const;
+ void setView(DolphinView* view);
+ DolphinView* view() const;
QList<QAction*> actions(const KFileItemList& items) const;
@@ -139,6 +143,7 @@ private:
bool m_silentUpdate; // if true, no messages will be send during the update
// of version states
+ DolphinView* m_view;
KFileItemModel* m_model;
QTimer* m_dirVerificationTimer;