X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/291c9219a217b982220f4118d37ac8767454c101..b1c9b5126d:/src/folderexpander.cpp diff --git a/src/folderexpander.cpp b/src/folderexpander.cpp index 93ab67895..7fe775944 100644 --- a/src/folderexpander.cpp +++ b/src/folderexpander.cpp @@ -20,7 +20,7 @@ #include "folderexpander.h" #include "dolphinview.h" -#include "dolphinsettings.h" +#include "settings/dolphinsettings.h" #include "dolphin_generalsettings.h" #include @@ -112,18 +112,20 @@ void FolderExpander::autoExpandTimeout() Q_ASSERT(m_dirModel != 0); KFileItem itemToExpand = m_dirModel->itemForIndex(indexToExpand); - if (itemToExpand.isNull()) { + if (itemToExpand.isNull() || itemToExpand == m_dirModel->itemForIndex(QModelIndex())) { + // The second clause occurs when we are expanding the folder represented + // by the view, which is a case we should ignore (#182618). return; } if (itemToExpand.isDir()) { QTreeView* treeView = qobject_cast(m_view); - if (treeView != 0) { + if ((treeView != 0) && treeView->itemsExpandable()) { // Toggle expanded state of this directory. treeView->setExpanded(proxyIndexToExpand, !treeView->isExpanded(proxyIndexToExpand)); } else { - emit enterDir(proxyIndexToExpand, m_view); + emit enterDir(proxyIndexToExpand); } } }