Commit 7781d6ef794a broke sorting in the sense that folders are no longer sorted before files. This is due to KRecursiveFilterProxyModel's implementation of sort() being used instead of ArchiveModel's.
We now subclass KRecursiveFilterProxyModel into ArchiveFilterSortModel so we can re-implement lessThan() and move the relevant code from ArchiveModel::sort().