X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/8e6dbadef2e7f25caed42559c4ffc832e03d387b..dcf397ae512850805dbe37fc03ece82be2660bd0:/src/dolphinview.cpp diff --git a/src/dolphinview.cpp b/src/dolphinview.cpp index 4a81b12ea..aa0bb9619 100644 --- a/src/dolphinview.cpp +++ b/src/dolphinview.cpp @@ -64,6 +64,7 @@ #include "renamedialog.h" #include "tooltips/tooltipmanager.h" #include "settings/dolphinsettings.h" +#include "versioncontrolobserver.h" #include "viewproperties.h" #include "zoomlevelinfo.h" @@ -104,6 +105,7 @@ DolphinView::DolphinView(QWidget* parent, m_proxyModel(proxyModel), m_previewGenerator(0), m_toolTipManager(0), + m_versionControlObserver(0), m_rootUrl(), m_activeItemUrl(), m_createdItemUrl(), @@ -520,6 +522,10 @@ void DolphinView::updateView(const KUrl& url, const KUrl& rootUrl) loadDirectory(url); } + // When changing the URL there is no need to keep the version + // data of the previous URL. + m_dolphinModel->clearVersionData(); + emit startedPathLoading(url); } @@ -607,6 +613,13 @@ QString DolphinView::statusBarText() const return text; } +QList DolphinView::versionControlActions(const KFileItemList& items) const +{ + return items.isEmpty() + ? m_versionControlObserver->contextMenuActions(url().path(KUrl::AddTrailingSlash)) + : m_versionControlObserver->contextMenuActions(items); +} + void DolphinView::setUrl(const KUrl& url) { m_newFileNames.clear(); @@ -1460,6 +1473,14 @@ void DolphinView::createView() m_previewGenerator = new KFilePreviewGenerator(view); m_previewGenerator->setPreviewShown(m_showPreview); + m_versionControlObserver = new VersionControlObserver(view); + connect(m_versionControlObserver, SIGNAL(infoMessage(const QString&)), + this, SIGNAL(infoMessage(const QString&))); + connect(m_versionControlObserver, SIGNAL(errorMessage(const QString&)), + this, SIGNAL(errorMessage(const QString&))); + connect(m_versionControlObserver, SIGNAL(operationCompletedMessage(const QString&)), + this, SIGNAL(operationCompletedMessage(const QString&))); + if (DolphinSettings::instance().generalSettings()->showToolTips()) { m_toolTipManager = new ToolTipManager(view, m_proxyModel); connect(m_controller, SIGNAL(hideToolTip()),