[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