Vladimir Golovnev
7cd2445a49
Improve tracker entries handling
...
PR #19496 .
* Add torrent entry status to represent tracker error
* Add torrent entry status to represent unreachable endpoint
* Display tracker entry next/min announce time
* Reset tracker entries when torrent is stopped
2023-09-07 08:58:13 +03:00
Vladimir Golovnev
c805606524
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>
2023-08-21 10:27:19 +03:00
Vladimir Golovnev
dcf3e97291
Implement gateway for adding new torrents
...
PR #19355 .
2023-08-14 18:17:56 +03:00
Vladimir Golovnev
f27f2c20e0
Add unified class to represent parsed torrent metadata
...
* Add unified class to represent parsed torrent metadata
* Unify startup logic of "Add new torrent dialog"
PR #19301 .
2023-07-21 08:40:16 +03:00
Vladimir Golovnev
dbe79484d2
Drop support of Qt 5
...
Also remove usage of some deprecated stuff.
PR #19338 .
2023-07-20 11:17:27 +03:00
Christopher
35e18498d9
Add option to stop seeding when torrent has been inactive
...
PR #19294 .
Closes #533 .
Closes #8073 .
Closes #15939 .
2023-07-15 13:14:42 +03:00
Chocobo1
e6d85a468b
Rename literal operator
...
Qt 6.4 introduced `QString operator""_s()` and the previous `""_qs` is
deprecated since Qt 6.8.
2023-06-18 03:32:44 +08:00
Chocobo1
e408973ee6
Add pointer qualifications to auto
-typed variables
2023-05-06 16:35:13 +08:00
Vladimir Golovnev
ff0f3b4975
WebAPI: Allow to set read-only directory as torrent location
...
PR #18613 .
Closes #18480 .
2023-02-27 09:09:33 +03:00
Vladimir Golovnev
1e913f46f0
Rename isSeed to isFinished to correctly represent its meaning
...
PR #18580 .
2023-02-17 07:08:00 +03:00
Vladimir Golovnev
5d4766edbe
Allow to add new torrents to queue top
...
PR #18518 .
Closes #11599 .
2023-02-10 17:15:41 +03:00
qbittorrentfan
c5a4a0db2c
properties endpoint returns name/torrentID
...
PR #18218 .
2022-12-25 16:41:55 +03:00
sotiris-bos
b9e045e80b
WebAPI: Expose "IS PRIVATE" flag
...
PR #18227 .
Closes #16052 .
2022-12-25 16:41:00 +03:00
Vladimir Golovnev
679e3b8bea
WebAPI: return paths using platform-independent separator format
...
PR #18118 .
Closes #18096 .
2022-12-01 08:16:43 +03:00
Vladimir Golovnev
67357e9964
Allow to set torrent stop condition
...
PR #17814 .
Closes #17792 .
Closes #929 .
(Actually it should close all issues about lack of ability to stop torrent after metadata downloaded or after files are initially checked.)
Also makes explicit the temporary start of the torrent in the case when recheck of the stopped torrent is performed.
2022-10-09 16:07:16 +03:00
Chocobo1
e692a191ed
Revise 'Add trackers' dialog
...
* Now it allow user to add tracker to different tier.
* The downloaded trackers are now displayed as is (without modifying).
* Now the dialog remember dialog size and last used URL.
Closes #17692 .
2022-09-14 01:20:30 +08:00
Vladimir Golovnev
7527343629
Handle some torrent conflicts
...
PR #17576 .
2022-08-23 07:47:20 +03:00
luzpaz
8736c9ec4c
Fix various typos
...
Found via `codespell -q 3 -S *.ts,*.desktop,./src/base/3rdparty,./dist/windows/installer-translations -L ba,doas,ist,ro,ths`
PR #17317 .
2022-07-06 13:11:11 +08:00
Vladimir Golovnev
7e0cd223fd
Revamp tracker entries handling
...
PR #17017 .
2022-05-22 09:09:11 +03:00
Tom Piccirello
fb7f7d0c75
Add support for exporting .torrent from WebUI
...
PR #16968 .
2022-05-04 12:13:24 +08:00
Chocobo1
b9b2ed64f9
Assign temporary data to a variable
...
This is mainly to avoid dangerous code pattern: getting an iterator on a
temporary object. Previously `data()` returns a const reference so the
code wasn't doing any harm.
2022-04-05 11:49:32 +08:00
Chocobo1
4ca6de2b54
Revise string literal usage
...
PR #16703 .
2022-03-26 11:53:50 +08:00
Chocobo1
efc04645b7
Use QString literals
...
It covers src/webui and enables `QT_NO_CAST_FROM_ASCII`.
2022-03-20 13:33:40 +08:00
Vladimir Golovnev
2d3ff6a97c
Use std::optional to represent "any value" filters
...
PR #16460 .
2022-02-20 13:17:34 +03:00
Vladimir Golovnev
dd1bd8ad10
Implement class for handling filesystem paths
...
PR #15915 .
2022-02-08 06:03:48 +03:00
Chocobo1
d6e0164766
WebAPI: fix wrong key used for categories
...
Regression from 1c0f8b4289b8d298041fe195cdc24f793dce4df5.
Closes #15969 .
PR #15988 .
2022-01-10 13:31:15 +08:00
Vladimir Golovnev
f44341a8e2
Handle .!qB extension behind the scenes
...
PR #15920 .
2022-01-08 08:45:50 +03:00
thalieht
d3bdeaab3f
Replace "seeding_duration" with "finished_duration" everywhere
...
Closes #10223 .
PR #13601 .
2022-01-07 15:22:51 +08:00
Vladimir Golovnev (Glassez)
1c0f8b4289
Redesign "Incomplete folder" feature
...
Change "Incomplete/temp folder" term with "download folder".
Allow to set "download folder" per torrent (in manual mode) and per category (in automatic mode).
2022-01-01 20:58:49 +03:00
Vladimir Golovnev (Glassez)
62b50d1475
Make TorrentInfo immutable
2021-12-19 16:16:16 +03:00
Chocobo1
70a11a12b3
Merge pull request #15549 from Chocobo1/api
...
WebAPI: Use specific number to represent non-existing values
2021-10-11 12:38:38 +08:00
Vladimir Golovnev (Glassez)
41fc0fd084
Don't use output parameters for error handling
2021-10-09 08:54:03 +03:00
Chocobo1
5c9655abc3
WebAPI: Use specific number to represent non-existing values
...
Closes #15545 .
2021-10-09 12:31:15 +08:00
AbeniMatteo
9bfc74a1bc
Filter torrent info endpoint by tag ( #15152 )
2021-07-05 13:55:49 +08:00
Vladimir Golovnev
37f227ae74
Provide v1 and v2 infohashes in UI ( #15097 )
2021-06-25 20:44:23 +03:00
Vladimir Golovnev (Glassez)
97c7f3bc67
Raise minimum Qt version to 5.14
2021-06-03 08:56:41 +03:00
Chocobo1
fdc186c92f
Revise tag related implementations
...
Fix #12690 .
2021-04-27 11:47:52 +08:00
Vladimir Golovnev (Glassez)
75e0990eb3
Provide tracker peers count via TrackerEntry
...
Don't expose additional accessor in Torrent interface.
2021-04-21 08:46:05 +03:00
Vladimir Golovnev (Glassez)
62a6c725d6
Don't overwrite tracker message
...
Use one of the tracker endpoint messages.
2021-04-21 08:45:09 +03:00
Vladimir Golovnev (Glassez)
6cf99cd0f2
Allow to specify file indexes in torrents/files API
2021-04-16 09:30:07 +03:00
Vladimir Golovnev (Glassez)
561b597031
Improve "info hash" handling
...
Define "torrent ID" concept, which is either a SHA1 hash for torrents of version 1,
or a SHA256 hash (truncated to SHA1 hash length) for torrents of version 2.
Add support for native libtorrent2 info hashes.
2021-03-12 12:43:14 +03:00
Vladimir Golovnev
4da4fb0676
Merge pull request #14479 from glassez/trackerentry
...
Improve tracker entries handling
2021-03-11 18:51:19 +03:00
Vladimir Golovnev (Glassez)
7a8c05dc7c
Improve tracker entries handling
2021-03-10 19:54:34 +03:00
Vladimir Golovnev (Glassez)
e2c785b2d5
Accept "share limits" when adding torrent using WebAPI
2021-03-09 20:01:15 +03:00
Vladimir Golovnev (Glassez)
8cfd803222
Drop implicit conversions between InfoHash and QString
2021-03-06 12:35:42 +03:00
Vladimir Golovnev (Glassez)
0b4fef19f6
Remove redundant suffix from TorrentHandle class
...
Originally, it was just a wrapper for libtorrent::torrent_handle class, so it mimicked its name.
It was then transformed into a more complex aggregate, but the name was retained (just by inertia).
Unlike libtorrent::torrent_handle class in whose name "handle" means the pattern used,
it does not matter for qBittorrent classes and just eats up space in the source code.
2021-01-06 16:28:17 +03:00
Vladimir Golovnev (Glassez)
531ae501ad
Use std::optional<bool> instead of custom TriStateBool
2021-01-04 23:10:24 +03:00
Vladimir Golovnev (Glassez)
d0cac421bb
Change parseBool() to return optional bool value
2021-01-04 23:10:24 +03:00
Vladimir Golovnev (Glassez)
4429a16ca8
Use std::optional instead of boost::optional
2021-01-04 23:10:03 +03:00
Chocobo1
e022c371ff
Move parsing of TriStateBool to a static class function
2021-01-01 12:59:48 +08:00