From 67a5ec53ef5a48d4f26ced28d117dcc905057c54 Mon Sep 17 00:00:00 2001 From: Nikolai Krasheninnikov Date: Mon, 27 Apr 2020 08:52:38 +0300 Subject: For VCS-plugin interface added pure virtual function outOfVersionControlActions() Summary: This commit changes VCS-plugin interface in order to provide actions for unversioned items (for example clone or checkout repository), updates to dolphin-plugins comes in the separate commit D29042. Reviewers: #dolphin, meven, elvisangelaccio Reviewed By: #dolphin, meven, elvisangelaccio Subscribers: kfm-devel Tags: #dolphin Differential Revision: https://phabricator.kde.org/D29041 --- src/views/versioncontrol/versioncontrolobserver.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'src/views/versioncontrol/versioncontrolobserver.cpp') diff --git a/src/views/versioncontrol/versioncontrolobserver.cpp b/src/views/versioncontrol/versioncontrolobserver.cpp index 2d801686e..f6c74fb5f 100644 --- a/src/views/versioncontrol/versioncontrolobserver.cpp +++ b/src/views/versioncontrol/versioncontrolobserver.cpp @@ -118,11 +118,19 @@ QList VersionControlObserver::actions(const KFileItemList& items) cons } } - if (!m_model || hasNullItems || !isVersioned()) { + if (!m_model || hasNullItems) { return {}; } - return m_plugin->actions(items); + if (isVersionControlled()) { + return m_plugin->versionControlActions(items); + } else { + QList actions; + for (const auto &plugin : qAsConst(m_plugins)) { + actions << plugin.first->outOfVersionControlActions(items); + } + return actions; + } } void VersionControlObserver::delayedDirectoryVerification() @@ -360,7 +368,7 @@ KVersionControlPlugin* VersionControlObserver::searchPlugin(const QUrl& director return bestPlugin; } -bool VersionControlObserver::isVersioned() const +bool VersionControlObserver::isVersionControlled() const { return m_versionedDirectory && m_plugin; } -- cgit v1.3