From f8d47e7e0416d4fd4e7c24e4b2de20ae43dab882 Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Fri, 23 Dec 2011 23:36:32 +0100 Subject: [PATCH] Don't show the name as part of the "path" role This allows a useful grouping by paths when e.g. searching files. BUG: 269335 FIXED-IN: 4.8.0 --- src/kitemviews/kfileitemlistwidget.cpp | 2 +- src/kitemviews/kfileitemmodel.cpp | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/kitemviews/kfileitemlistwidget.cpp b/src/kitemviews/kfileitemlistwidget.cpp index d3e792ea0..aba5129df 100644 --- a/src/kitemviews/kfileitemlistwidget.cpp +++ b/src/kitemviews/kfileitemlistwidget.cpp @@ -95,7 +95,7 @@ void KFileItemListWidget::paint(QPainter* painter, const QStyleOptionGraphicsIte KItemListWidget::paint(painter, option, widget); // Draw expansion toggle '>' or 'V' - if (m_isExpandable) { + if (m_isExpandable && !m_expansionArea.isEmpty()) { QStyleOption arrowOption; arrowOption.rect = m_expansionArea.toRect(); const QStyle::PrimitiveElement arrow = data()["isExpanded"].toBool() diff --git a/src/kitemviews/kfileitemmodel.cpp b/src/kitemviews/kfileitemmodel.cpp index baf168ddf..70e92eaac 100644 --- a/src/kitemviews/kfileitemmodel.cpp +++ b/src/kitemviews/kfileitemmodel.cpp @@ -1157,12 +1157,16 @@ QHash KFileItemModel::retrieveData(const KFileItem& item) } if (m_requestRole[PathRole]) { + QString path; if (item.url().protocol() == QLatin1String("trash")) { - const KIO::UDSEntry udsEntry = item.entry(); - data.insert("path", udsEntry.stringValue(KIO::UDSEntry::UDS_EXTRA)); + path = item.entry().stringValue(KIO::UDSEntry::UDS_EXTRA); } else { - data.insert("path", item.localPath()); + path = item.localPath(); } + + const int index = path.lastIndexOf(item.text()); + path = path.mid(0, index - 1); + data.insert("path", path); } if (m_requestRole[IsExpandedRole]) { -- 2.47.3