mirror of
https://invent.kde.org/system/dolphin
synced 2024-09-19 16:31:21 +00:00
prevent loading items twice in the tree view
svn path=/trunk/KDE/kdebase/apps/; revision=662690
This commit is contained in:
parent
13b3676857
commit
53dcdd804a
|
@ -22,6 +22,7 @@
|
||||||
#include "dolphinmainwindow.h"
|
#include "dolphinmainwindow.h"
|
||||||
#include "dolphinsortfilterproxymodel.h"
|
#include "dolphinsortfilterproxymodel.h"
|
||||||
#include "dolphinview.h"
|
#include "dolphinview.h"
|
||||||
|
#include "dolphinsettings.h"
|
||||||
#include "sidebartreeview.h"
|
#include "sidebartreeview.h"
|
||||||
#include "treeviewcontextmenu.h"
|
#include "treeviewcontextmenu.h"
|
||||||
|
|
||||||
|
@ -34,7 +35,6 @@
|
||||||
#include <QItemSelectionModel>
|
#include <QItemSelectionModel>
|
||||||
#include <QTreeView>
|
#include <QTreeView>
|
||||||
#include <QVBoxLayout>
|
#include <QVBoxLayout>
|
||||||
#include "dolphinsettings.h"
|
|
||||||
|
|
||||||
TreeViewSidebarPage::TreeViewSidebarPage(QWidget* parent) :
|
TreeViewSidebarPage::TreeViewSidebarPage(QWidget* parent) :
|
||||||
SidebarPage(parent),
|
SidebarPage(parent),
|
||||||
|
@ -202,10 +202,19 @@ void TreeViewSidebarPage::loadTree(const KUrl& url)
|
||||||
connect(m_dirLister, SIGNAL(completed()),
|
connect(m_dirLister, SIGNAL(completed()),
|
||||||
this, SLOT(expandSelectionParent()));
|
this, SLOT(expandSelectionParent()));
|
||||||
|
|
||||||
|
// Implementation note: It is important to remove the trailing slash from
|
||||||
|
// the parent URL, as the directories from the dir lister (KDirLister::directories())
|
||||||
|
// don't have a trailing slash and hence KUrl::List::contains() would fail...
|
||||||
KUrl parentUrl = url.upUrl();
|
KUrl parentUrl = url.upUrl();
|
||||||
|
parentUrl.adjustPath(KUrl::RemoveTrailingSlash);
|
||||||
while (!parentUrl.isParentOf(baseUrl)) {
|
while (!parentUrl.isParentOf(baseUrl)) {
|
||||||
|
if (m_dirLister->directories().contains(parentUrl)) {
|
||||||
|
m_dirLister->updateDirectory(parentUrl);
|
||||||
|
} else {
|
||||||
m_dirLister->openUrl(parentUrl, true, false);
|
m_dirLister->openUrl(parentUrl, true, false);
|
||||||
|
}
|
||||||
parentUrl = parentUrl.upUrl();
|
parentUrl = parentUrl.upUrl();
|
||||||
|
parentUrl.adjustPath(KUrl::RemoveTrailingSlash);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue