diff options
| author | Peter Penz <[email protected]> | 2011-12-23 23:36:32 +0100 |
|---|---|---|
| committer | Peter Penz <[email protected]> | 2011-12-23 23:37:53 +0100 |
| commit | f8d47e7e0416d4fd4e7c24e4b2de20ae43dab882 (patch) | |
| tree | 656edb22e2898162ecc5ad02b8bf8289aed38f91 /src/kitemviews/kfileitemmodel.cpp | |
| parent | 5f02a3e9cec038aa25aa60a7b1041ec8218155ea (diff) | |
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
Diffstat (limited to 'src/kitemviews/kfileitemmodel.cpp')
| -rw-r--r-- | src/kitemviews/kfileitemmodel.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
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<QByteArray, QVariant> 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]) { |
