Improve tracker entries handling

PR #19468.

* Use QHash to map tracker endpoints
* Don't clear numPeers unexpectedly
* Remove outdated tracker entry endpoints
* Move presentation logic from Core to GUI code
* Show all endpoints per tracker in tree structure

---------

Co-authored-by: Kacper Michajłow <kasper93@gmail.com>
This commit is contained in:
Vladimir Golovnev 2023-08-21 10:27:19 +03:00 committed by GitHub
parent 34d30ed031
commit c805606524
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 176 additions and 91 deletions

View file

@ -57,20 +57,15 @@ namespace BitTorrent
int numLeeches = -1;
int numDownloaded = -1;
QString message {};
QString name {};
};
QString url {};
int tier = 0;
Status status = NotContacted;
QString message {};
QHash<Endpoint, QHash<int, EndpointStats>> stats {};
// Deprecated fields
Status status = NotContacted;
int numPeers = -1;
int numSeeds = -1;
int numLeeches = -1;
int numDownloaded = -1;
QString message {};
};
QVector<TrackerEntry> parseTrackerEntries(QStringView str);