[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/4.6/kdelibs/kfile
From: Sebastian Trueg <sebastian () trueg ! de>
Date: 2011-01-10 13:08:00
Message-ID: 20110110130800.6C7F6AC8B2 () svn ! kde ! org
[Download RAW message or body]
SVN commit 1213465 by trueg:
Backport: Fixed sorting if two items have the same UDS_DISPLAY_NAME.
M +10 -1 kdirsortfilterproxymodel.cpp
--- branches/KDE/4.6/kdelibs/kfile/kdirsortfilterproxymodel.cpp #1213464:1213465
@@ -168,8 +168,17 @@
switch (left.column()) {
case KDirModel::Name: {
- return d->compare(leftFileItem.text(), rightFileItem.text(), sortCaseSensitivity()) < 0;
+ // KFileItem::text() may not be unique (in case UDS_DISPLAY_NAME is used). In that case we
+ // fall back to the name which is always unique
+ const int result = d->compare(leftFileItem.text(), rightFileItem.text(), sortCaseSensitivity());
+ if (result == 0) {
+ return d->compare(leftFileItem.name(sortCaseSensitivity() == Qt::CaseInsensitive),
+ rightFileItem.name(sortCaseSensitivity() == Qt::CaseInsensitive),
+ sortCaseSensitivity()) < 0;
+ } else {
+ return result < 0;
}
+ }
case KDirModel::Size: {
// If we have two folders, what we have to measure is the number of
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic