Fix peers and seeds sorting in transfer list.

When active peers (or seeds) of two torrents are the same we sort by total peers
(or seeds).
This commit is contained in:
Angel Alonso 2014-01-18 11:53:44 +01:00
parent ceba1dc734
commit aa9001522c

View file

@ -66,6 +66,16 @@ protected:
if (!vR.isValid()) return true;
return vL < vR;
} else if (sortColumn() == TorrentModelItem::TR_PEERS || sortColumn() == TorrentModelItem::TR_SEEDS) {
int left_active = sourceModel()->data(left).toInt();
int left_total = sourceModel()->data(left, Qt::UserRole).toInt();
int right_active = sourceModel()->data(right).toInt();
int right_total = sourceModel()->data(right, Qt::UserRole).toInt();
// Active peers/seeds take precedence over total peers/seeds.
if (left_active == right_active)
return (left_total < right_total);
else return (left_active < right_active);
}
return QSortFilterProxyModel::lessThan(left, right);
}