Chocobo1
e31c3376bd
Use library provided erase_if()
...
`Algorithm::removeIf()` is still valuable as `QHash::removeIf()` predicate require an
iterator or a `std::pair`, which both require more code to unpack the variable and therefore
cumbersome to use.
PR #19353 .
2023-07-24 20:29:02 +08:00
Vladimir Golovnev
10ee1ab7a2
Switch to C++20
...
PR #19336 .
2023-07-21 15:38:49 +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
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
179a61d75e
Add curly braces
2023-05-07 19:41:55 +08:00
Bartu Özen
b55d4b1733
WebUI: Implement subcategories
...
PR #18740 .
2023-04-02 11:02:22 +03:00
Vladimir Golovnev
d06f78dbbd
Improve sync API performance
...
PR #18394 .
2023-02-10 17:16:46 +03:00
Vladimir Golovnev
9cdf660ddb
Use QThreadPool to invoke free disk space checking jobs
...
Prevent the creation of an excessive number of threads.
PR #18347 .
Closes #18202 .
2023-01-16 14:31:49 +03:00
Vladimir Golovnev
ac3ad17a9e
Ensure thread is stopped before deleting QThread
...
PR #18037 .
2022-12-08 08:37:14 +03:00
Hanabishi
6a560016dd
Implement Peer ID Client
column for Peers
tab
...
PR #17940 .
2022-11-06 12:21:31 +08:00
Vladimir Golovnev
616057a433
Improve session statistics handling
...
PR #17779 .
2022-09-29 06:49:34 +03:00
Chocobo1
f6e2715f4a
Apply forward declaration
...
Follow up 525692759de15391eec1760085b95f3042881c35.
PR #17621 .
2022-08-28 13:25:38 +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
f8a304abdc
Implement base classes for application components
...
PR #17219 .
2022-06-25 15:46:55 +03:00
Vladimir Golovnev
4471a6377e
Have separate API controller instances per session
...
PR #16848 .
2022-04-12 13:39:35 +03:00
Chocobo1
2854630b1c
Use signed integer type for counters
2022-04-03 13:33:55 +08:00
Chocobo1
4ca6de2b54
Revise string literal usage
...
PR #16703 .
2022-03-26 11:53:50 +08:00
Vladimir Golovnev (Glassez)
a4b606c6e9
Fix compilation issues due to inappropriate QString usage
2022-03-21 11:50:32 +03: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
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 (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
e3fe66d3ec
Store enum type in settings directly
...
Affected settings will be migrated to new keys so nothing should break.
PR #15800 .
2021-12-06 13:53:52 +08:00
Vladimir Golovnev (Glassez)
f022458383
Raise minimum supported Qt version to 5.12
2021-03-13 15:33:58 +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 (Glassez)
7a8c05dc7c
Improve tracker entries handling
2021-03-10 19:54:34 +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
Chocobo1
90a1ea4281
Don't use removed stat metric in libtorrent 2.0
...
For now, the metric is not entirely removed due to WebAPI still needs to
access it.
2020-12-24 12:04:14 +08:00
Vladimir Golovnev (Glassez)
c41df9ffbd
Improve coding style
2020-11-17 21:02:37 +03:00
brvphoenix
799ad0feff
Fix the issue that IPv6 address can't be banned
...
The ban action doesn't depend on ipfilter.
2020-10-21 18:21:07 -07:00
FranciscoPombal
8f8f7ebd15
Remove DISABLE_COUNTRIES_RESOLUTION define
2020-07-08 01:07:50 +01:00
Thomas Piccirello
ad4d8d28ec
Add Trackers section to Web UI sidebar
...
Closes #7601 .
2020-05-07 19:10:55 -07:00
Thomas Piccirello
84a40c1665
Include trackers in /sync/maindata API endpoint
2020-05-04 00:11:45 -07:00
Vladimir Golovnev (Glassez)
1132b84548
Split TorrentHandle interface and implementation
2020-04-16 20:22:26 +03:00
FranciscoPombal
a81789f4af
Fix total connected peers count calculation
...
Also fix small typo in function name.
2020-03-17 18:01:57 +00:00
Chocobo1
e32ef7f5c5
Use implicit sharing when getting categories from Session class
2019-10-30 01:46:57 +08:00
Chocobo1
e90a2c00a5
Replace QList by QVector
2019-08-05 20:56:15 +08:00
Chocobo1
7f300b757f
Use C++11 uniform initialization
2019-07-31 23:48:41 +08:00
Chocobo1
bad588a749
Move data keys into anonymous namespace and sort them
2019-07-31 23:48:41 +08:00
Chocobo1
25a94ee60a
Avoid redundant data conversions and lookups
2019-07-31 23:48:41 +08:00
Vasiliy Halimonchuk
b530e19a44
Implement tag management for WebUI
2019-07-23 13:30:11 +03:00
Vladimir Golovnev (Glassez)
ad6a40d5f4
Extract PeerAddress class into separate file
2019-07-23 06:27:35 +03:00
thalieht
7b31868e3c
Rename priority to queue in the context of torrents
2019-07-13 14:04:16 +03:00
thalieht
9995967fbf
Remove some unused #include
2019-06-04 17:48:55 +03:00
Chocobo1
94aeeed95f
Work around the crash occurred in QTimer
...
See Qt commit:
https://code.qt.io/cgit/qt/qtbase.git/commit/src/corelib/kernel/qtimer.cpp?id=a623fe8d2a60ff333d5779f877e3b20f0e141ff1
Fixes #9985 .
2019-04-07 15:13:33 +08:00
thalieht
92a290895b
Convert vars into refs to avoid copy construction from const refs
2019-02-16 18:54:17 +02:00
Chocobo1
6d29a3af60
Make use of std algorithms
2019-02-05 13:35:54 +08:00