┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikolai Krasheninnikov <[email protected]>2020-05-06 20:31:05 +0300
committerNikolai Krasheninnikov <[email protected]>2020-05-15 23:09:05 +0300
commit9b7fc506aa3a78b06991238b98c591d0e1917a04 (patch)
tree6a136136f37b62f8f7275aad1a06aa35b7a013b7
parenta291c5999035bb17fe764c1910c3e78ba041f8ac (diff)
Added VCS plugins signals connections for outOfVersionControl() actions.
Summary: Plugins can now do out of version control actions (D29041), so we need them to inform of their state. This change connects every plugin signal to Dolphin on plugin instantiation. Test Plan: 1. Try SVN Update of inaccessible repository: see SVN error message shows up. 2. Try pull inaccessible git repository: see GIT error message shows up. 3. Try SVN Commit: see SVN message. Reviewers: #dolphin, meven, elvisangelaccio Reviewed By: #dolphin, meven Subscribers: kfm-devel Tags: #dolphin Differential Revision: https://phabricator.kde.org/D29488
-rw-r--r--src/views/versioncontrol/versioncontrolobserver.cpp22
1 files changed, 9 insertions, 13 deletions
diff --git a/src/views/versioncontrol/versioncontrolobserver.cpp b/src/views/versioncontrol/versioncontrolobserver.cpp
index f6c74fb5f..2f0632243 100644
--- a/src/views/versioncontrol/versioncontrolobserver.cpp
+++ b/src/views/versioncontrol/versioncontrolobserver.cpp
@@ -168,21 +168,8 @@ void VersionControlObserver::verifyDirectory()
return;
}
- if (m_plugin) {
- m_plugin->disconnect(this);
- }
-
m_plugin = searchPlugin(rootItem.url());
if (m_plugin) {
- connect(m_plugin, &KVersionControlPlugin::itemVersionsChanged,
- this, &VersionControlObserver::silentDirectoryVerification);
- connect(m_plugin, &KVersionControlPlugin::infoMessage,
- this, &VersionControlObserver::infoMessage);
- connect(m_plugin, &KVersionControlPlugin::errorMessage,
- this, &VersionControlObserver::errorMessage);
- connect(m_plugin, &KVersionControlPlugin::operationCompletedMessage,
- this, &VersionControlObserver::operationCompletedMessage);
-
if (!m_versionedDirectory) {
m_versionedDirectory = true;
@@ -311,6 +298,15 @@ KVersionControlPlugin* VersionControlObserver::searchPlugin(const QUrl& director
if (enabledPlugins.contains((*it)->name())) {
KVersionControlPlugin* plugin = (*it)->createInstance<KVersionControlPlugin>(this);
if (plugin) {
+ connect(plugin, &KVersionControlPlugin::itemVersionsChanged,
+ this, &VersionControlObserver::silentDirectoryVerification);
+ connect(plugin, &KVersionControlPlugin::infoMessage,
+ this, &VersionControlObserver::infoMessage);
+ connect(plugin, &KVersionControlPlugin::errorMessage,
+ this, &VersionControlObserver::errorMessage);
+ connect(plugin, &KVersionControlPlugin::operationCompletedMessage,
+ this, &VersionControlObserver::operationCompletedMessage);
+
m_plugins.append( qMakePair(plugin, plugin->fileName()) );
}
}