Vladimir Golovnev
7227d2b2b2
Revert changes of conflict resolution strategy on automatic move
...
PR #18516 .
Closes #18297 .
Closes #18495 .
2023-02-05 09:29:43 +03:00
Vladimir Golovnev
09e58df03f
Don't increase limits when prefetching metadata for added magnets
...
Adjusting limits was made based on the belief that "forced" torrents (internally used for prefetching metadata)
are still under limits, but ignore only the queue. This is not really the case. "Forced" torrents ignore the limits
like "maximum active torrents/downloads", so adjusting limits is not required, and what's more, it really causes the
problem of unexpectedly activated previously queued torrents when adding some magnet using "Add new torrent" dialog.
PR #18503 .
Fixes #18490 .
2023-02-02 06:16:32 +03:00
Vladimir Golovnev
771c58d000
WebAPI: Allow to specify session cookie name
...
PR #18384 .
Closes #18329 .
2023-01-17 09:31:17 +03:00
Vladimir Golovnev
32e4371208
Improve startup window state handling
...
Replace current "Start qBittorrent minimized" option with "Initial window state" that allows to start qBittorrent as "hidden in system tray" while retaining regular "minimize to panel" functionality.
PR #18252 .
Closes #487 .
2023-01-16 14:57:56 +03:00
Vladimir Golovnev
2b20d5b260
Fix startup performance on Qt5
...
Use more appropriate container (QList) for resume data queue buffer.
QVector in Qt5 has poor performance of the first element taking operation,
which is used to process the resume data queue. In Qt6, QVector is just an
alias for QList, so there was no problem there.
PR #18387 .
Fixes #18341 .
2023-01-16 14:45:12 +03:00
Vladimir Golovnev
719e4afd8c
Remove confusing helpers from Session interface
...
Such helpers do not make practical sense, since they can be trivially implemented on top of the base interface, but at the same time they can lead to undesirable consequences when some calling code requires slightly different behavior than another.
PR #18367 .
Fixes #18338 .
2023-01-16 14:43:36 +03:00
brvphoenix
b33dc7d831
Unify the way to generate the language list in WebUI and GUI
...
PR #17994 .
2022-12-25 16:44:37 +03:00
Vladimir Golovnev
cfd0c5433e
Re-allow to use icons from system theme
...
PR #18195 .
2022-12-25 16:25:56 +03:00
Vladimir Golovnev
594f9e8632
Use "additional trackers" when metadata retrieving
...
This can help when the DHT nodes are few.
PR #18251 .
Closes #18244 .
2022-12-22 08:21:29 +03:00
Vladimir Golovnev
b12fdcf018
Correctly detect drive letter in path
...
PR #18258 .
Closes #18224 .
2022-12-20 07:14:31 +03:00
Vladimir Golovnev
84fabf14c8
Merge pull request #18034 from glassez/fetch-async
...
Fetch data asynchronously
2022-12-15 06:59:29 +03:00
Vladimir Golovnev
0ec47db9cd
Don't drop !qB extension when rename incomplete file
...
PR #18186 .
Closes #18181 .
2022-12-15 06:57:07 +03:00
Vladimir Golovnev (Glassez)
40258f6a2f
Stop async worker at correct place
2022-12-14 10:42:40 +03:00
Vladimir Golovnev (Glassez)
b335114219
Use better method to set bit
2022-12-14 10:41:04 +03:00
Vladimir Golovnev (Glassez)
998b08f5d8
Set metadata asynchronously
2022-12-14 10:41:04 +03:00
Vladimir Golovnev (Glassez)
991c30943a
Allow to fetch data asynchronously
2022-12-14 10:41:04 +03:00
Vladimir Golovnev
ac3ad17a9e
Ensure thread is stopped before deleting QThread
...
PR #18037 .
2022-12-08 08:37:14 +03:00
Vladimir Golovnev
1b2ff0f6f8
Handle tracker status updates asynchronously
...
* Add a helper for performing jobs in Session context
* Handle tracker status updates asynchronously
PR #18010 .
2022-11-30 09:54:30 +03:00
Vladimir Golovnev
a31755bbc8
Switch SQLite to use WAL journaling mode
...
PR #18048 .
2022-11-30 09:50:26 +03:00
Vladimir Golovnev
d82edb2838
Bump to 4.6.0alpha1
2022-11-21 22:54:37 +03:00
Vladimir Golovnev
fda6c9a3d9
Prevent object from being used after destruction
...
PR #18031 .
2022-11-20 15:03:36 +03:00
Vladimir Golovnev
1cee69da6c
Don't miss to store metadata of new torrent
...
PR #18033 .
2022-11-19 13:33:38 +03:00
Vladimir Golovnev (Glassez)
3563bad5fc
Revamp implementation of port forwarder
2022-11-14 08:28:35 +03:00
Vladimir Golovnev (Glassez)
1f3f96f7aa
Set metadata asynchronously
2022-11-14 08:27:01 +03:00
Vladimir Golovnev (Glassez)
7022adb89b
Change current IP filter asynchronously
2022-11-14 08:26:49 +03:00
Vladimir Golovnev (Glassez)
bac57de5f5
Update listening status using native session extension
2022-11-14 08:22:12 +03:00
Vladimir Golovnev
bdd56a52d3
Destroy object within appropriate thread
...
PR #18008 .
2022-11-13 08:28:33 +03:00
Vladimir Golovnev
dcdbd02102
Delete database file only after it is released
...
PR #18005 .
2022-11-13 08:27:48 +03:00
Vladimir Golovnev
b68c4e2106
Save correct resume data when added new torrent
...
PR #18003 .
2022-11-13 08:26:25 +03:00
Vladimir Golovnev
f9eefe866c
Merge pull request #17992 from glassez/preloading-magnet
...
Improve handling of preloading metadata.
This also allows to avoid blocking calls when performing some actions.
2022-11-10 19:22:20 +03:00
Chocobo1
d328eeb5be
Merge pull request #17980 from Chocobo1/model
...
Reserve space before appending elements
2022-11-10 17:24:17 +08:00
Chocobo1
d90ea0d3be
Move increment out of loop
2022-11-10 17:18:28 +08:00
Vladimir Golovnev
6c9c40fd7c
Avoid blocking call when changing libtorrent session settings
...
We don't really need to get currently used settings pack in order to apply changes to session settings. It is enough to apply settings pack that contains only updated settings.
PR #17989 .
2022-11-09 08:02:34 +03:00
Chocobo1
93429840c8
Fix typos
2022-11-08 13:50:01 +08:00
Vladimir Golovnev (Glassez)
6aee7f95b7
Add torrent for preloading magnet asynchronously
2022-11-08 08:29:16 +03:00
Vladimir Golovnev (Glassez)
0b70ccf9e9
Cache torrent handles of preloading magnets
2022-11-08 08:29:15 +03:00
Vladimir Golovnev (Glassez)
da586828be
Don't perform unnecessary actions with preloading magnets
2022-11-08 08:29:10 +03:00
Vladimir Golovnev
2e4431f0b8
Save torrents queue w/o blocking calls
...
PR #17988 .
2022-11-08 07:00:40 +03:00
Chocobo1
f6735401f4
Add port forwarding option for embedded tracker
...
Closes #17781 .
PR #17981 .
2022-11-07 11:32:11 +08:00
Vladimir Golovnev
c80238d66f
Don't use extra variable to distinguish restored torrents
...
PR #17984 .
2022-11-06 14:24:49 +03:00
Hanabishi
6a560016dd
Implement Peer ID Client
column for Peers
tab
...
PR #17940 .
2022-11-06 12:21:31 +08:00
Chocobo1
99b7663fa9
Revise interface of port forwarder
...
This eases the usage of port forwarder as the caller code doesn't need
to store previous used port and now can rely on port forwarder doing
all the hard work.
PR #17967 .
2022-11-05 11:33:21 +08:00
Chocobo1
be0f34a69e
Merge pull request #17900 from Chocobo1/alerts
...
Handle all types of alerts on shutdown
2022-11-03 12:29:38 +08:00
Chocobo1
3a2e73cc94
Avoid out-of-bounds access
...
This happens when the `index` is a negative number.
Added `Q_ASSERT()` to catch coding errors at debug run time.
PR #17953 .
2022-10-31 12:34:20 +08:00
xavier2k6
3ee0457cfa
Raise minimum libtorrent versions to 1.2.18/2.0.8
...
PR #17954 .
2022-10-30 08:30:31 +03:00
Vladimir Golovnev
e19173c1f3
Prevent new torrent from saving resume data twice
...
PR #17951 .
2022-10-30 08:28:51 +03:00
Vladimir Golovnev
4a5d2e2558
Correctly initialize torrent stop condition
...
PR #17950 .
2022-10-30 08:28:13 +03:00
Vladimir Golovnev
c29a6079bf
Don't forget to create stop_condition column
...
PR #17935 .
2022-10-26 18:25:52 +03:00
Vladimir Golovnev
bb2caabd61
Correctly destroy startup resume data storage
...
PR #17930 .
2022-10-25 11:37:51 +03:00
Chocobo1
dfdaa706bd
Move code around
2022-10-24 00:34:25 +08:00