Go to file
Giuseppe D'Angelo e6e4456de0 QFileSystemModel: fix sorting
When sorting a model recursively, the children of a QFileSystemNode
are extracted from their parent in a QHash order; then filtered,
then sorted (using a stable sort) depending on the sorting column.

This means that the order of the children comparing to equal for
the chosen sort are shown in the order they were picked from the
iteration on the QHash, which isn't reliable at all.

Moreover, the criteria used in QFileSystemModelSorter for sorting
are too loose: when sorting by any column but the name, if the result
is "equality", then the file names should be used to determine
the sort order.

This patch removes the stable sort in favour of a full sort,
and fixes the criteria of soring inside QFileSystemModelSorter.

Change-Id: Idd9aece22f2ebbe77ec40d372b43cde4c200ff38
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-04-07 19:45:39 +02:00
bin Fix qtmodule-configtests to honor error codes 2012-03-08 23:52:34 +01:00
config.tests Merge master into api_changes 2012-03-27 19:22:48 +02:00
dist QHash security fix (1.5/2): qHash two arguments overload support 2012-04-04 13:02:58 +02:00
doc/src QHash security fix (1.5/2): qHash two arguments overload support 2012-04-04 13:02:58 +02:00
examples Merge master into api_changes 2012-03-23 14:10:58 +01:00
lib Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
mkspecs Merge master into api_changes 2012-03-27 19:22:48 +02:00
qmake Remove -DQT_NO_STL from the bootstrapped builds 2012-04-07 05:19:56 +02:00
src QFileSystemModel: fix sorting 2012-04-07 19:45:39 +02:00
tests QFileSystemModel: fix sorting 2012-04-07 19:45:39 +02:00
tools Remove -DQT_NO_STL from the bootstrapped builds 2012-04-07 05:19:56 +02:00
util QLocale: Merge month name data storage to save 50KB memory 2012-04-03 19:12:27 +02:00
.gitattributes Added .tag file with Git revision. 2011-05-03 16:23:49 +02:00
.gitignore device: Add -device and -device-option to configure 2012-03-27 05:35:57 +02:00
.tag Added .tag file with Git revision. 2011-05-03 16:23:49 +02:00
configure Remove the -no-stl option from configure 2012-03-28 16:31:34 +02:00
configure.bat Remove Q_BYTE_ORDER and -*-endian arguments from configures 2012-03-02 14:48:00 +01:00
header.BSD Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
header.FDL Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
header.LGPL Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
header.LGPL-ONLY Remove "All rights reserved" line from license headers. 2012-01-30 03:54:59 +01:00
INSTALL Remove Symbian specific code from qtbase. 2012-01-31 07:08:31 +01:00
LGPL_EXCEPTION.txt Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.FDL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
LICENSE.LGPL Update contact information in license headers. 2012-01-23 04:04:33 +01:00
LICENSE.PREVIEW.COMMERCIAL Initial import from the monolithic Qt. 2011-04-27 12:05:43 +02:00
qtbase.pro device: Add -device and -device-option to configure 2012-03-27 05:35:57 +02:00
sync.profile Add qprocessordetection.h 2012-02-08 12:33:11 +01:00