┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/dolphinview.cpp27
-rw-r--r--src/dolphinview.h1
2 files changed, 21 insertions, 7 deletions
diff --git a/src/dolphinview.cpp b/src/dolphinview.cpp
index 606c5202d..688e8aa62 100644
--- a/src/dolphinview.cpp
+++ b/src/dolphinview.cpp
@@ -1269,7 +1269,16 @@ void DolphinView::loadDirectory(const KUrl& url, bool reload)
m_loadingDirectory = true;
m_expanderActive = false;
- m_viewAccessor.dirLister()->openUrl(url, reload ? KDirLister::Reload : KDirLister::NoFlags);
+ KDirLister* dirLister = m_viewAccessor.dirLister();
+ dirLister->openUrl(url, reload ? KDirLister::Reload : KDirLister::NoFlags);
+
+ KDirLister* rootDirLister = m_viewAccessor.rootDirLister();
+ if (dirLister != rootDirLister) {
+ // In the case of the column view the root directory lister can be different. Assure
+ // that it gets synchronized (clients from DolphinView are not aware that internally
+ // different directory listers are used).
+ rootDirLister->openUrl(url, reload ? KDirLister::Reload : KDirLister::NoFlags);
+ }
}
void DolphinView::applyViewProperties()
@@ -1532,7 +1541,7 @@ void DolphinView::ViewAccessor::prepareUrlChange(const KUrl& url)
}
if(!m_detailsViewExpander.isNull()) {
- // Stop expanding items in the current folder
+ // stop expanding items in the current folder
m_detailsViewExpander->stop();
}
}
@@ -1572,6 +1581,11 @@ KUrl DolphinView::ViewAccessor::rootUrl() const
return (m_columnsContainer != 0) ? m_columnsContainer->rootUrl() : KUrl();
}
+KDirLister* DolphinView::ViewAccessor::rootDirLister() const
+{
+ return static_cast<DolphinModel*>(m_proxyModel->sourceModel())->dirLister();
+}
+
bool DolphinView::ViewAccessor::supportsCategorizedSorting() const
{
return m_iconsView != 0;
@@ -1585,17 +1599,16 @@ bool DolphinView::ViewAccessor::itemsExpandable() const
QSet<KUrl> DolphinView::ViewAccessor::expandedUrls() const
{
- if(m_detailsView != 0) {
+ if (m_detailsView != 0) {
return m_detailsView->expandedUrls();
}
- else {
- return QSet<KUrl>();
- }
+
+ return QSet<KUrl>();
}
const DolphinDetailsViewExpander* DolphinView::ViewAccessor::setExpandedUrls(const QSet<KUrl>& urlsToExpand)
{
- if((m_detailsView != 0) && m_detailsView->itemsExpandable() && !urlsToExpand.isEmpty()) {
+ if ((m_detailsView != 0) && m_detailsView->itemsExpandable() && !urlsToExpand.isEmpty()) {
m_detailsViewExpander = new DolphinDetailsViewExpander(m_detailsView, urlsToExpand);
return m_detailsViewExpander;
}
diff --git a/src/dolphinview.h b/src/dolphinview.h
index 95a2ad3b1..17f1395ac 100644
--- a/src/dolphinview.h
+++ b/src/dolphinview.h
@@ -804,6 +804,7 @@ private:
QWidget* layoutTarget() const;
KUrl rootUrl() const;
+ KDirLister* rootDirLister() const;
bool supportsCategorizedSorting() const;
bool itemsExpandable() const;