]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/kfileitemlistview.cpp
InformationPanel: Allow to refresh the panel when its displayed content changes
[dolphin.git] / src / kitemviews / kfileitemlistview.cpp
index 6086eb8a270e283682166e2594870faabf08db8f..9833b395f2d05f2f6a64bc7e750e3fb299836fb3 100644 (file)
@@ -39,7 +39,8 @@ KFileItemListView::KFileItemListView(QGraphicsWidget* parent) :
     KStandardItemListView(parent),
     m_modelRolesUpdater(nullptr),
     m_updateVisibleIndexRangeTimer(nullptr),
-    m_updateIconSizeTimer(nullptr)
+    m_updateIconSizeTimer(nullptr),
+    m_scanDirectories(true)
 {
     setAcceptDrops(true);
 
@@ -117,6 +118,19 @@ qlonglong KFileItemListView::localFileSizePreviewLimit() const
     return m_modelRolesUpdater ? m_modelRolesUpdater->localFileSizePreviewLimit() : 0;
 }
 
+void KFileItemListView::setScanDirectories(bool enabled)
+{
+    m_scanDirectories = enabled;
+    if (m_modelRolesUpdater) {
+        m_modelRolesUpdater->setScanDirectories(m_scanDirectories);
+    }
+}
+
+bool KFileItemListView::scanDirectories()
+{
+    return m_scanDirectories;
+}
+
 QPixmap KFileItemListView::createDragPixmap(const KItemSet& indexes) const
 {
     if (!model()) {
@@ -247,6 +261,7 @@ void KFileItemListView::onModelChanged(KItemModelBase* current, KItemModelBase*
     if (current) {
         m_modelRolesUpdater = new KFileItemModelRolesUpdater(static_cast<KFileItemModel*>(current), this);
         m_modelRolesUpdater->setIconSize(availableIconSize());
+        m_modelRolesUpdater->setScanDirectories(scanDirectories());
 
         applyRolesToModel();
     }