From: Rafael Fernández López Date: Sun, 17 Jun 2007 18:23:53 +0000 (+0000) Subject: If our folders or files have the same number of items or size, sort them X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/commitdiff_plain/4d91d82f115f80137face43b29603c4a8124cc8f If our folders or files have the same number of items or size, sort them CORRECTLY by their names :) svn path=/trunk/KDE/kdebase/apps/; revision=676792 --- diff --git a/src/dolphinsortfilterproxymodel.cpp b/src/dolphinsortfilterproxymodel.cpp index 170c116d7..4097cbe9d 100644 --- a/src/dolphinsortfilterproxymodel.cpp +++ b/src/dolphinsortfilterproxymodel.cpp @@ -216,8 +216,8 @@ bool DolphinSortFilterProxyModel::lessThan(const QModelIndex& left, // their names. So we have always everything ordered. We also check // if we are taking in count their cases if (leftCount == rightCount) { - const QString leftStr = leftData.toString(); - const QString rightStr = rightData.toString(); + const QString leftStr = dirModel->data(left, DolphinView::SortByName).toString(); + const QString rightStr = dirModel->data(right, DolphinView::SortByName).toString(); return sortCaseSensitivity() ? (naturalCompare(leftStr, rightStr) < 0) : (naturalCompare(leftStr.toLower(), rightStr.toLower()) < 0); @@ -231,8 +231,8 @@ bool DolphinSortFilterProxyModel::lessThan(const QModelIndex& left, // If what we are measuring is two files and they have the same size, // sort them by their file names if (leftFileItem->size() == rightFileItem->size()) { - const QString leftStr = leftData.toString(); - const QString rightStr = rightData.toString(); + const QString leftStr = dirModel->data(left, DolphinView::SortByName).toString(); + const QString rightStr = dirModel->data(right, DolphinView::SortByName).toString(); return sortCaseSensitivity() ? (naturalCompare(leftStr, rightStr) < 0) : (naturalCompare(leftStr.toLower(), rightStr.toLower()) < 0);