]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/kitemviews/kitemlistheader.cpp
Make calls to resolveNextPendingRoles and resolveNextSortRole delayed
[dolphin.git] / src / kitemviews / kitemlistheader.cpp
index f1050538d3290f79b39d33282f6e7dd4a40089df..e89ece0a19d03433c58f1a4272587d5863b41fcf 100644 (file)
  ***************************************************************************/
 
 #include "kitemlistheader.h"
-#include "kitemlistheaderwidget_p.h"
 #include "kitemlistview.h"
 
+#include "private/kitemlistheaderwidget.h"
+
 KItemListHeader::~KItemListHeader()
 {
 }
@@ -30,7 +31,8 @@ void KItemListHeader::setAutomaticColumnResizing(bool automatic)
     if (m_headerWidget->automaticColumnResizing() != automatic) {
         m_headerWidget->setAutomaticColumnResizing(automatic);
         if (automatic) {
-            m_view->updateColumnWidthsForHeader();
+            m_view->applyAutomaticColumnWidths();
+            m_view->doLayout(KItemListView::NoAnimation);
         }
     }
 }
@@ -45,6 +47,7 @@ void KItemListHeader::setColumnWidth(const QByteArray& role, qreal width)
     if (!m_headerWidget->automaticColumnResizing()) {
         m_headerWidget->setColumnWidth(role, width);
         m_view->applyColumnWidthsFromHeader();
+        m_view->doLayout(KItemListView::NoAnimation);
     }
 }
 
@@ -62,9 +65,15 @@ void KItemListHeader::setColumnWidths(const QHash<QByteArray, qreal>& columnWidt
         }
 
         m_view->applyColumnWidthsFromHeader();
+        m_view->doLayout(KItemListView::NoAnimation);
     }
 }
 
+qreal KItemListHeader::preferredColumnWidth(const QByteArray& role) const
+{
+    return m_headerWidget->preferredColumnWidth(role);
+}
+
 KItemListHeader::KItemListHeader(KItemListView* listView) :
     QObject(listView->parent()),
     m_view(listView)