Chocobo1
9e5433bcf8
Add name to threads
...
This help identifying threads when debugging.
The naming scheme is using 'class/function name + variable name'.
Note that the length limitaion is 16 chars on linux. On Windows, the limit is 32767 chars.
PR #21403 .
2024-10-06 15:23:50 +08:00
Chocobo1
f87ea1b5d3
Sort languages combobox by language code
...
* Avoid creating redundant file lists
* Sort languages combobox by language code
PR #20365 .
2024-02-05 13:44:18 +08:00
Vladimir Golovnev
8cc8ffabb0
Improve Torrent files watcher internals
...
PR #19924 .
2023-11-13 14:27:04 +03:00
Vladimir Golovnev
46c1c9de65
Fix memory leaks
...
* Fixes a couple of memory leaks (although not dangerous in practice, since we are talking about objects with a lifetime up to the end of the application)
* Fixes heap use after free
PR #19650 .
Closes #19632 .
2023-09-27 08:00:20 +03:00
Chocobo1
31fe327763
Move to separate headers
...
Hopefully this can speed up compilation times.
https://doc.qt.io/qt-6/qtglobal.html#details
PR #19430 .
2023-08-11 13:47:55 +08:00
Vladimir Golovnev
11efd26acc
Fix crash on application exit (Qt 6.5)
...
PR #19169 .
2023-07-27 15:09:14 +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
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
79ca2e145f
Don't read unlimited data from files
...
It now guards against reading infinite files such as `/dev/zero`.
And most readings are bound with a (lax) limit.
As a side effect, more checking are done when reading a file and
overall the reading procedure is more robust.
PR #19095 .
2023-06-14 13:38:19 +08:00
Vladimir Golovnev (Glassez)
0a87bb368f
Extract "add torrent params" serialization code
2023-05-07 16:33:32 +03:00
Vladimir Golovnev
7600f59f3a
Prevent precise timers from being used when unnecessary
...
The implementation of QTimer::singleShot() uses Qt::PreciseTimer if interval is less than 2 seconds. This isn't mentioned in the docs.
Qt::PreciseTimer increases the system's timer resolution which negatively affects power consumption.
PR #18555 .
Closes #18350 .
2023-02-14 08:26:08 +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
Vladimir Golovnev
ac3ad17a9e
Ensure thread is stopped before deleting QThread
...
PR #18037 .
2022-12-08 08:37:14 +03:00
Vladimir Golovnev
bdd56a52d3
Destroy object within appropriate thread
...
PR #18008 .
2022-11-13 08:28:33 +03:00
Vladimir Golovnev
be7cfb78de
Restore BitTorrent session asynchronously
...
Reduce the total startup time of the application and maintain sufficient responsiveness of the UI during startup due to the following:
1. Load resume data from disk asynchronously in separate thread;
2. Split handling of loaded resume data in chunks;
3. Reduce the number of emitting signals.
PR #16840 .
2022-07-04 12:48:21 +03:00
Chocobo1
6de72ecc77
Make use of chrono literals from std library
2022-06-23 21:31:16 +08:00
Chocobo1
eddeda7bab
Remove usage of QTextStream
...
Other classes already provide rich methods so avoid another
layer of QTextStream which slow things down (slightly).
PR #17180 .
2022-06-09 11:18:41 +08:00
Chocobo1
c6b772da11
Improve function interface
...
`SettingsStorage` methods require `QString` so make `SettingValue` follow it.
`Path::operator+` can use `QStringView` to accept wider audience.
2022-03-26 12:41:02 +08:00
Chocobo1
4ca6de2b54
Revise string literal usage
...
PR #16703 .
2022-03-26 11:53:50 +08:00
Chocobo1
f0dd7b7dae
Use QString literals
...
This patch covers src/app and src/base folders.
Follow up of ab64ee872b .
2022-03-11 00:11:30 +08:00
Vladimir Golovnev
dd1bd8ad10
Implement class for handling filesystem paths
...
PR #15915 .
2022-02-08 06:03:48 +03:00
Vladimir Golovnev
d39c6bef4b
Correctly handle Auto TMM in Torrent Files Watcher
...
PR #13690 .
2022-01-11 07:25:30 +03: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
4f20769a6c
Use respective subcategory for "watched" torrents
...
Assign respective Subcategory of configured Category to torrents
if Automatic Torrent Management Mode is set for Watched folder.
PR #15603 .
2021-10-22 05:51:11 +03:00
Vladimir Golovnev (Glassez)
41fc0fd084
Don't use output parameters for error handling
2021-10-09 08:54:03 +03:00
Chocobo1
010d1b5ff8
Merge pull request #15419 from Chocobo1/file
...
Improve error detection when saving files
2021-09-19 13:28:47 +08:00
Chocobo1
21f72baae2
Use QSaveFile wherever applicable
...
expected.hpp was fetched from:
b803e3c07b/include/nonstd/expected.hpp
2021-09-15 21:54:44 +08:00
Vladimir Golovnev
90296b3ef0
Add "Skip hash check" option for watched folders
...
Closes #15388 .
PR #15433 .
2021-09-09 07:00:51 +03:00
Vladimir Golovnev
bed643e627
Delay processing of watched folders ( #15282 )
...
Fixes regression of #14882 .
Closes #15272 .
2021-08-07 12:33:29 +03:00
Vladimir Golovnev
699b91ab8d
Properly create "clean path" for watched folder ( #15179 )
2021-07-12 11:44:52 +03:00
Vladimir Golovnev (Glassez)
d2f975a0f3
Don't forget to start "watch timer"
2021-07-02 08:34:31 +03:00
Chocobo1
70d1cb86fd
Disable move constructor where it is sensible
2021-06-29 14:49:45 +08:00
Andrei Stepanov
5157e4965a
Remove excess space
2021-06-27 13:01:03 +04:00
Vladimir Golovnev (Glassez)
2993fdb169
Improve "Watched folders" feature
...
Make "file system watcher" an application core component
and separate it from its presentation model.
2021-05-19 15:42:41 +03:00