Commit graph

10670 commits

Author SHA1 Message Date
Vladimir Golovnev (Glassez)
8993d87b32
Let Search Engine handle its proxy usage 2023-02-25 17:25:41 +03:00
loligans
466314675c
WebUI: Add multi-file renaming
PR #18287.
Closes #16239.
2023-02-19 14:07:55 +03:00
Hanabishi
d75fd3fcde
Show filtered port numbers in logs
PR #18544.
2023-02-18 08:14:27 +03:00
Vladimir Golovnev
9fb9ca47f6
Update the cached state once recheck is started
We have to force update the cached state, otherwise someone will be able to get an incorrect one during the interval until the cached state is updated in a regular way.

PR #18579.
Closes #18559.
2023-02-17 07:12:56 +03:00
Luka Čelebić
917190d936
Add shortcut for "Ban peer permanently" function
PR #18576.
2023-02-17 07:09:23 +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
4c0ebc0e0f
Access some more data in a non-blocking manner
* Cache URL seeds to access in a non-blocking manner
* Provide non-blocking way to create magnet URI for torrent

PR #18572.
2023-02-16 08:49:16 +03:00
Chocobo1
6a4bb5c1b7
Migrate away from unsafe function
MooTools More has CVE-2021-20088 and qbt is affected by it by using the
unsafe function call `String.parseQueryString()`, so migrate away from
it.

PR #18554.
2023-02-15 13:59:21 +08: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
sledgehammer999
915121a0dd
Sync translations from Transifex and run lupdate 2023-02-12 01:09:18 +02:00
Vladimir Golovnev
1be5b3abd8
Revamp torrent content widget
PR #18162.
2023-02-11 15:22:01 +03:00
brvphoenix
e37661d53a
WebUI: Add filelog settings
PR #18506.
Closes #17421.
2023-02-10 20:12:22 +03:00
Vladimir Golovnev
d06f78dbbd
Improve sync API performance
PR #18394.
2023-02-10 17:16:46 +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
72ac92ec68
Allow to use another icons in dark mode
PR #18435.
2023-02-07 22:07:15 +03:00
sledgehammer999
22ea508ff6
Merge pull request #18500 from sledgehammer999/tls_webui
Harden the SSL/TLS web server
2023-02-06 22:40:44 +02:00
sledgehammer999
b2213ded6d
Support TLS 1.2+ only in the server
Closes #18122
2023-02-06 10:32:01 +02:00
sledgehammer999
1ea2fe5b8d
Blacklist bad ciphers for TLS in the server
Prevents the ROBOT attack.
Closes #18483
2023-02-06 10:32:01 +02:00
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
0dcbf9f698
Improve command line parameters dispatching
Encapsulate parameters dispatching in Application class.
Avoid serializing parameters when it is not necessary.

PR #18469.
2023-02-02 10:02:51 +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
sledgehammer999
d256db5072
Merge pull request #18466 from sledgehammer999/icon_for_status_pause
Use previous color for pause icon for indicating status
2023-01-27 20:27:48 +02:00
sledgehammer999
10153f0063
Use previous color for pause icon for indicating status
Affects transfer list and status filters
Related to PR #18110
2023-01-27 18:45:07 +02:00
sledgehammer999
c6a1b977b3
Merge pull request #18456 from sledgehammer999/win_shorcut_cwd
Fix PDB loading for valid stacktraces
2023-01-27 17:52:39 +02:00
sledgehammer999
870bb42e4f
[WebUI] Use new pause icon color for toolbar/menu
This the webui part of PR #18110
2023-01-27 17:42:48 +02:00
sledgehammer999
b61c7b7220
Adjust env variable for PDB discovery 2023-01-26 13:42:09 +02:00
Vladimir Golovnev
c58fb92365
Suppress warning when session cookie name isn't overridden
PR #18455.
2023-01-26 07:00:20 +03:00
sledgehammer999
ca72360b6f
Merge pull request #18432 from sledgehammer999/chinese_fix
Migrate setting about Simplified Chinese locale
2023-01-25 01:17:54 +02:00
sledgehammer999
630b4ed3b9
Migrate settings much earlier 2023-01-24 10:23:12 +02:00
Vladimir Golovnev
2310dcd136
Reload system tray icon to replace menu
PR #18250.
Closes #18074.
2023-01-22 16:48:58 +03:00
Nick Korotysh
ee00a80796
Drop extra semicolon
Fixes build with -pedantic flag.

PR #18431.
2023-01-22 14:47:19 +03:00
sledgehammer999
051bac5e59
Migrate setting about Simplified Chinese locale
Related to PR #17978
2023-01-22 02:31:58 +02: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
53cec6db09
Provide scaled pixmaps by UIThemeManager
Avoid leaking the paths of the theme resource files outside of the theme support implementation.

PR #18269.
2023-01-17 09:29:00 +03:00
Midhun V Nadh
43e059801e
Remove suggestions while searching for torrents
Don't want torrent search history to pop up next time you try to search for torrents, right?
There are people who would search for 18+ content and what they searched would load up next time they are about to search.

PR #18285.
2023-01-16 15:12:35 +03:00
Nowshed H. Imran
ce35a06ec3
Fix Pause icon
PR #18110.
2023-01-16 15:01:20 +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
brvphoenix
0d376e7fd6
WebUI: Add log viewer
The javascript implementation of multi-select menu is from the source
https://github.com/PhilippeMarcMeyer/vanillaSelectBox. It is licensed
under the MIT License. Some minor fixes is made to pass the lint.

Co-authored-by: brvphoenix <30111323+brvphoenix@users.noreply.github.com>
Co-authored-by: ttyS3 <ttys3.rust@gmail.com>

PR #18290.
2023-01-16 14:55:44 +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
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
5dbccf3473
Add all torrents passed via the command line
PR #18296.
Closes #18289.
2023-01-16 06:54:02 +03:00
Vladimir Golovnev
8db2d04dbb
Allow to modify default UI theme
PR #18214.
2023-01-14 14:02:20 +03:00
thalieht
209850064a
WebUI: Add "Resume data storage type" option
PR #18357.
2023-01-13 10:58:46 +03:00
brvphoenix
e628b7d527
WebUI: Add missing icons
PR #18380.
2023-01-13 10:52:53 +03:00
Fidel Selva
61dbb211c0
WebUI: Improve hotkeys
PR #18326.
Fixes #18325.
Fixes #14033.
2023-01-06 22:17:15 +03:00
Jason Carr
71f4a5667c
WebUI: change order of accepted types of file input
PR #18286.
2022-12-28 13:20:02 +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
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
cfd0c5433e
Re-allow to use icons from system theme
PR #18195.
2022-12-25 16:25:56 +03:00
Vladimir Golovnev
ebad387c1a
Apply correct tab order to Category options dialog
Also pre-select (sub)category name for editing when dialog is opened for creating new (sub)category.

PR #18270.
Closes #18265.
2022-12-25 16:14:59 +03:00
David Xuang
23a56c95e3
Prevent incorrect line breaking
PR #18236.
2022-12-22 14:58:26 +03:00
Nowshed H. Imran
6f8aa07a10
Fix icon colors inconsistencies
PR #18226.
Fixes #18163.
Fixes #18222.
2022-12-22 14:14:29 +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
aeae065007
Correctly count the number of torrents in subcategories
PR #18261.
Closes #18137.
2022-12-22 08:19:33 +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
BallsOfSpaghetti
c3936cd4b6
Add "Rename rule" button to RSS Downloader
PR #18141.
2022-12-11 11:18:40 +03:00
Torsten Schwarz
2109c4e1ae
WebUI: Make rename file dialog resizable
PR #18154.
2022-12-10 10:17:21 +03:00
Vladimir Golovnev
ac3ad17a9e
Ensure thread is stopped before deleting QThread
PR #18037.
2022-12-08 08:37:14 +03:00
Vladimir Golovnev
31c7306bd2
Correctly load folder based UI theme
PR #18173.
2022-12-08 08:33:55 +03:00
Chocobo1
4741aab7a3
Merge pull request #18094 from Chocobo1/color
Revise text color for completed status
2022-12-02 13:17:00 +08: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
25ea0d274b
Destroy desktop integration at correct place
Otherwise it is destructed in QObject destructor, i.e. after GUI application is already destructed.
This can be related to some problems with system tray icon.

PR #18108.
Closes #18093.
2022-11-30 20:09:51 +03:00
sledgehammer999
12b58be8c2
Merge pull request #18104 from sledgehammer999/remove_dead_code
Remove dead code
2022-11-30 15:19:54 +02:00
Chocobo1
e4f1485c82
Fix wrong color code
Must have been a copy-paste error...
2022-11-30 15:23:49 +08: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
sledgehammer999
311e0f21eb
Remove dead code
Leftover from the system tray code refactoring.
2022-11-29 21:30:26 +02:00
sledgehammer999
b86366f243
Merge pull request #18083 from now-im/patch-1
Fix Speed limit icon size
2022-11-29 17:27:16 +02:00
sledgehammer999
58d1c80b12
Merge pull request #18076 from thalieht/iconqueued
WebUI: Fix missing "queued" icon
2022-11-29 17:26:38 +02:00
Chocobo1
182915f801
Revise color for completed status
Now it uses the purple color which matches the completed status icon color.

Related: #18078.
2022-11-29 07:27:00 +08:00
sledgehammer999
4307a09621
Remove trailing newline from translation file
I also fixed it on Transifex.
2022-11-28 18:41:26 +02:00
Nowshed H. Imran
d531d6d221
Fix Speed limit icon size
Fixes #18067.
2022-11-28 19:59:09 +06:00
thalieht
4cf94a6fa0 WebUI: Fix missing "queued" icon 2022-11-28 01:45:41 +02:00
sledgehammer999
4cb60f4870
Sync translations from Transifex and run lupdate 2022-11-23 21:22:54 +02:00
Vladimir Golovnev
d82edb2838
Bump to 4.6.0alpha1 2022-11-21 22:54:37 +03:00
sledgehammer999
17ce07230d
Merge pull request #18038 from glassez/tree-update
Revert "Use another workaround to update files tree view"
2022-11-20 20:57:27 +02:00
Vladimir Golovnev
fda6c9a3d9
Prevent object from being used after destruction
PR #18031.
2022-11-20 15:03:36 +03:00
Vladimir Golovnev (glassez)
92af2922c7
Revert "Use another workaround to update files tree view"
This reverts commit 0f82c16936.
2022-11-19 21:44:15 +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
67cb75e9d3
Merge pull request #18001 from glassez/update-tree
Use another workaround to update files tree view

This is alternative approach to #17786. It uses the similar workaround as was used a long time with Qt5 and stoped working with Qt6 so it is adjusted in this PR.

Also this fixes content model resetting handling.
2022-11-12 14:00: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
Vladimir Golovnev (Glassez)
c636618cf3
Correctly handle model resetting 2022-11-10 13:32:48 +03:00
Vladimir Golovnev (Glassez)
0f82c16936
Use another workaround to update files tree view 2022-11-10 13:31:08 +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
Chocobo1
e7ece66717
Clean up code 2022-11-09 23:17:22 +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
529c1ec9f4
Reserve space before appending elements 2022-11-08 13:50:03 +08: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
BallsOfSpaghetti
162273da47
Add confirmation to resume/pause all
This adds a confirmation dialog to Pause All and Resume All. First I wanted to only add it in Tray, but honestly, clicking around in the menu, using hotkeys might trigger it just as easy.

Closes #17683.
PR #17945.
2022-11-08 11:31:18 +08:00
sledgehammer999
22fb9797c4
Merge pull request #17978 from sledgehammer999/fix_chinese_locale
Fine tune translations loading for Chinese locales
2022-11-08 02:41:34 +02:00
Chocobo1
f6735401f4
Add port forwarding option for embedded tracker
Closes #17781.
PR #17981.
2022-11-07 11:32:11 +08:00
sledgehammer999
06c4c58613
Fine tune translations loading for Chinese locales
Closes #17506
2022-11-06 14:01:16 +02: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
Nowshed H. Imran
027d6be48f
Fix checked-completed icon visibility in dark theme
PR #17946.
2022-10-29 12:14:46 +08:00
Chocobo1
07bb1df74f
Merge pull request #17942 from Chocobo1/icons
Update icon guidelines
2022-10-28 11:54:26 +08:00
Vladimir Golovnev
c29a6079bf
Don't forget to create stop_condition column
PR #17935.
2022-10-26 18:25:52 +03:00
Chocobo1
dfb56ce31c
Update icon guidelines 2022-10-26 11:42:39 +08:00
Chocobo1
5a8027ae1f
Remove unused resources 2022-10-26 11:42:39 +08:00
Vladimir Golovnev
bb2caabd61
Correctly destroy startup resume data storage
PR #17930.
2022-10-25 11:37:51 +03:00
Chocobo1
14e4bc7eea
WebUI: use proper comparison for numbers
Closes #17920.
PR #17926.
2022-10-25 12:46:02 +08:00
Chocobo1
fe0be98fde
Merge pull request #17918 from Chocobo1/portForwarding
Avoid redundant lookups in port forwarder
2022-10-25 12:44:23 +08:00
BallsOfSpaghetti
fdba525e62
Introduce a 'change listen port' cmd option
Closes #17789.
PR #17862.
2022-10-25 12:43:38 +08:00
Chocobo1
dfdaa706bd
Move code around 2022-10-24 00:34:25 +08:00
Chocobo1
1a782a9362
Avoid redundant lookups in port forwarder 2022-10-24 00:34:25 +08:00
Chocobo1
5f2d807861
Ensure ongoing storage moving job will be completed when shutting down
Discussion: https://github.com/qbittorrent/qBittorrent/pull/17885#issuecomment-1282467041
2022-10-23 17:55:58 +08:00
Nathan Lewis
f2dd1e6456
Add a "Use proxy for hostname lookup" option
Add a UI option for "Use proxy for hostname lookup" option and plumb
it into libtorrent's settings_pack.proxy_hostnames option.  This is
available for SOCKS5 and HTTP proxies, and defaults to true, which
is the previous functionality.  Hostname lookups can be forced to be
local by unchecking this option, which can aid compatibility with
certain non-compliant proxy servers.

Closes #17902.
PR #17904.

Co-authored-by: Nathan Lewis <saturn@saturn49.dyndns.org>
2022-10-23 15:31:02 +08:00
Chocobo1
155e73df16
WebUI: remove unused include
Closes #15761.
PR #17895.
2022-10-23 12:33:45 +08:00
Vladimir Golovnev
05b7194bf7
Correctly set "stop condition" on force recheck invoked
PR #17915.
Closes #17913.
2022-10-22 17:43:17 +03:00
Maksim Derbasov
597444c527
Make GeoIPDatabase interface safer
PR #17899.
2022-10-21 13:31:37 +08:00
Chocobo1
1c2dc79f51
Introduce color palettes for both dark, light themes
This commit introduce color palettes from Primer and make use of it in various widgets.
Primer system is chosen due to well designed and is highly rated on Github (in terms of
Github stars).
https://primer.style/

PR #17798.
2022-10-20 10:27:03 +08:00
Chocobo1
106adf135c
Handle all types of alerts on shutdown
There might be alerts already queued in buffer waiting to be handled at
the time of pausing the session, so don't skip over them.
2022-10-18 14:31:57 +08:00
Chocobo1
dcfd367ff8
Merge pull request #17885 from Chocobo1/shutdown
Revise "save resume data" handling on shutdown
2022-10-18 14:27:07 +08:00
Chocobo1
67ee43fac1
Merge pull request #17878 from Chocobo1/webui
WebUI: handle drag and drop events
2022-10-18 14:26:35 +08:00
Chocobo1
a325ab8d6e
Delay saving session statistics
Pausing the libtorrent session should be scheduled before this.
2022-10-17 13:53:55 +08:00
Chocobo1
c94152c47c
Reuse alert dispatcher
Instead of using a specific alert handler in `SessionImpl::saveResumeData()`, reuse the generic
one.
2022-10-17 13:53:54 +08:00
Chocobo1
a44bca3f07
Revise "save resume data" handling on shutdown
When shutting down, instead of waiting for all types of alert from
libtorrent, now it only waits for specific alert types. This potentially
help shorten the shutdown waiting time.
2022-10-17 13:53:27 +08:00
thalieht
698284f00e
Allow to set torrent stop condition in WebUI
PR #17876.
2022-10-15 11:06:56 +08:00
Chocobo1
3b9d68f344
WebUI: handle drag and drop events
This allows user to drag and drop .torrent files and URL links onto the
main window and will open the respective dialog.
Dropping folders are not supported due to technical reasons.

Closes #6038.
2022-10-14 14:30:26 +08:00
tristanleboss
e028d8085b
Add a "Moving" status filter
Because sometime (when your save and download path are on different drives, when your disk drive is super busy, ...) move operations can stack up, I add this "Moving" status filter so you can see in a blink of the eye which torrents are in a move state.

PR #17810.
2022-10-14 13:12:51 +08:00
Chocobo1
af1c97e2ea
WebUI: filter file selection to bittorrent files
Note that the user can still overwrite the selection filter and select
other files.
2022-10-13 14:32:00 +08:00
Chocobo1
b95d97d07b
WebUI: simplify attribute usage
The `multiple` attribute is a boolean value and its presence equals to
`true`.
2022-10-13 14:31:58 +08:00
Vladimir Golovnev
4f0990dc29
Use 'fail if exist' strategy on automatic move
Prevent existing files overwriting when torrent is moved automatically (e.g. when moved from incomplete to final save path).

PR #17855.
2022-10-11 10:05:21 +03:00
Chocobo1
f66ec4430d
Merge pull request #17858 from Chocobo1/infohash
Show N/A when there is no hash
2022-10-10 14:35:40 +08: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
0279b80b46
Don't use hardcoded URL scheme list
This is to avoid the list being outdated.
2022-10-09 14:12:02 +08:00
Chocobo1
d3936c07c7
Capitalize header title
This is the only one not properly capitalized.
2022-10-09 14:12:02 +08:00
Chocobo1
aa022400f7
Use Path internal representation for internal value in model
The internal value is used for sorting comparisons and not displayed
to the user, so make a shortcut.
2022-10-09 14:12:01 +08:00
Chocobo1
66795d533a
Show 'N/A' when there is no hash
This is to follow 'General' tab which show 'N/A' when there is no hash.
2022-10-09 14:12:01 +08:00
Chocobo1
ce7d8dee28
Merge pull request #17829 from Chocobo1/focus
Set proper focus on widget
2022-10-09 13:48:13 +08:00
Chocobo1
1f799689ed
Support 'file exists' situation
The lt::status_t::file_exist is returned when lt::move_flags_t::fail_if_exist is used, which means the whole move operation failed. So hanlde this condition correctly (even if the fail_if_exist isn't used in the code base currently).

PR #17853.
2022-10-09 13:47:52 +08:00
tristanleboss
a71d7e6557
Add infohash and download path columns
PR #17799.
2022-10-08 11:43:52 +08:00
Chocobo1
30c2f9d9f3
Merge pull request #17830 from Chocobo1/trackers
Fix wrong 'tracker error' count
2022-10-06 12:32:16 +08:00
Chocobo1
6fa4305aba
Fix wrong 'tracker error' count
This happens when a torrent contains some tracker URLs that share the same domain.
Closes #17808.
2022-10-05 14:43:52 +08:00
vlakoff
ad59eb4dfc
Revert "Consider brackets within wildcard as regular characters"
The implementation appeared to be broken.

This reverts #16965.
PR #17820.
2022-10-05 12:43:43 +08:00
Chocobo1
21aabfdcb5
Clean up code 2022-10-05 00:58:57 +08:00
Vladimir Golovnev
e7370d1a0f
Don't pollute move queue by torrents w/o metadata
There's really nothing to move if the torrent still doesn't have metadata.
Additionally, such torrents in the queue can lead to unexpected behavior
when reloading the torrent after metadata is received.

PR #17823.
2022-10-04 19:41:36 +03:00
Chocobo1
855f727451
Set proper focus on widget
And also allow keyboard tabbing to the Browse button.
Fix up 6ab35512da.
2022-10-04 16:54:20 +08:00
Chocobo1
9a81cbf4c0
Improve column updates granularity
PR #17806.
2022-10-03 11:56:48 +08:00
Vladimir Golovnev
b568cdb1aa
Correctly load state of use download folder
PR #17807.
Closes #17793.
2022-10-02 08:46:27 +03:00
Chocobo1
bc0d906adc
Merge pull request #17786 from Chocobo1/selection
Fix torrent content checkboxes not updated properly
2022-10-01 14:00:49 +08:00
Chocobo1
2b385e5f92
WebUI: don't disable combobox for file priority
Closes #17794.
PR #17797.
2022-10-01 12:49:02 +08:00
Vladimir Golovnev
616057a433
Improve session statistics handling
PR #17779.
2022-09-29 06:49:34 +03:00
Chocobo1
9a20aa51de
Fix torrent content checkboxes not updated properly
And reduce emitting redundant 'data updated' signals.

Closes #17144, #17764.
2022-09-29 00:00:48 +08:00
Chocobo1
6c8b31420c
Remove unused functions 2022-09-27 14:52:52 +08:00
Chocobo1
0514cb304d
Fix coding style 2022-09-27 14:52:52 +08:00
Vladimir Golovnev
0a4ee60ea0
Avoid blocking call when save resume data
PR #17755.
2022-09-25 16:40:16 +03:00
Chocobo1
dc76a175ad
WebUI: allow string to be translated
Closes #17759.
2022-09-24 15:29:14 +08:00
Chocobo1
92768c36aa
Fix 'Filter Sidebar' size restored incorrectly
And with a bit of code clean up.
Closes #17756.
2022-09-24 15:29:12 +08:00
Chocobo1
2a3a4bff70
Merge pull request #17737 from Chocobo1/logview
Use proper color for highlighted text in log widget
2022-09-23 13:31:04 +08:00
Andrew
cacfe4f3ca
Fix "Open destination folder" delay on Windows
Replaced QDesktopServices by native Windows function
to open destination folder due to QDesktopServices issues on Windows.
The issues are described in #17482 and even more detailed in #17025.

Closes #17482.
PR #17723.
2022-09-23 13:30:31 +08:00
Chocobo1
37150520e1
Use proper color for highlighted text in log widget
The color is either from qbt theme pack or desktop environment.

Note that Windows default theme do not use highlighted text color.
Other themes (either OS default or qbt themes) are closer to native
look when highlighted text color is in action.
2022-09-21 01:04:11 +08:00
Chocobo1
3aadb63d80
Simplify code
Don't use replacement placeholder and use string append which is faster.
2022-09-21 00:42:15 +08:00
Chocobo1
0e0b8d1027
Revive dark theme detection
The code was removed in 199d770e15 and now revived.
2022-09-21 00:42:15 +08:00
sledgehammer999
5e4a94e6b6
Bump to 4.5.0beta1 2022-09-18 20:13:29 +03:00
sledgehammer999
db7850e218
Sync translations from Transifex and run lupdate 2022-09-18 20:13:29 +03:00
Chocobo1
b28704a6ec
Merge pull request #17725 from Chocobo1/downloadsDone
Clean up 'recursive download' related code
2022-09-16 12:07:36 +08:00
Chocobo1
0c6e56a150
Merge pull request #17713 from Chocobo1/trackers
Revise 'Add trackers' dialog
2022-09-16 12:06:22 +08:00
sledgehammer999
d71ff734a9
Merge pull request #17705 from sledgehammer999/gplv2_vs_gplv3
Copyright and license updates
2022-09-15 11:19:23 +03:00
Chocobo1
90652d3555
WebAPI: fix wrong behavior for shutdown action
Qt6 has changed implementation for `QCoreApplication::quit` and therefore it is not suitable
anymore.

Closes #17709.
PR #17720.
2022-09-15 11:56:00 +08:00
Chocobo1
f8a2fbc4c5
Clean up 'recursive download' related code
Don't load .torrent files too early, otherwise qbt might emit a dubious error log message if the
.torrent file is invalid.
2022-09-15 00:15:53 +08:00
Chocobo1
80759f9e69
Reorder operations in 'torrent finished' handler
Avoid redundant data fetch.
Remove debug messages.
2022-09-15 00:12:11 +08: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
Chocobo1
4e06a9629a
WebUI: alert when HTTPS settings are incomplete
Closes #17696.
PR #17701.
2022-09-13 13:00:11 +08:00
sledgehammer999
b3334e5fac
Binary distributions are GPLv3+ licensed 2022-09-13 01:33:08 +03:00
Chocobo1
4e326229da
Rename action 2022-09-12 23:25:36 +08:00
Chocobo1
6c60fa5161
Don't reorder URLs when copied from the clipboard
Also process URLs in the same order as from the text edit widget.
Closes #17693.
PR  #17700.
2022-09-12 12:22:45 +08:00
sledgehammer999
cd405ffc32
Remove duplicate information
This information exists in git's commit history and in the AUTHORS file.
2022-09-12 02:26:35 +03:00
Chocobo1
5cfaaa5d1a
Add tooltips 2022-09-08 14:44:18 +08:00
Chocobo1
109c45bb95
Allow to use subnet notation in reverse proxy list
Closes #17475.
2022-09-08 14:44:18 +08:00
Chocobo1
851374e517
Rename function 2022-09-07 14:11:23 +08:00
Chocobo1
4094a4c448
Simplify functions 2022-09-07 14:11:02 +08:00
Tyler Dunn
987e1b544a
Don't autofill background color on macOS
PR #17669.
2022-09-06 09:44:18 +08:00
Vladimir Golovnev
5cf6b1cbde
Handle more torrent conflicts
PR #17668.
This is a continuation of #17576.
Handles the case when you add hybrid torrent by v1-only magnet link and this torrent is already known by its full hybrid info hash (i.e. by both v1 and v2 info hashes).
2022-09-05 06:22:42 +03:00
Vladimir Golovnev
4318de6dc5
Add ability to run external program on torrent added
PR #17646.
2022-09-04 07:51:50 +03:00
summer
459d1cf82c
Allow to pause a checking torrent from context menu
PR #17611.
2022-09-04 12:03:10 +08:00
Chocobo1
fb37b0c147
Suppress warning
Seems `lupdate` tool cannot correctly recognize the class/context of `tr()` here, so specify the
class/context manually.
2022-09-03 15:26:40 +08:00
Chocobo1
9877ff330e
Make strings translatable 2022-09-03 15:23:00 +08:00
Tyler Dunn
6f88609d60
Avoid string lookup when setting row color
PR #17665.
2022-09-03 14:58:53 +08:00
Tyler Dunn
6263c4786b
Allow 'Export .torrent' tooltip to be translatable
Closes #17660.
PR #17664.
2022-09-03 14:58:23 +08:00
Vladimir Golovnev
ca897a8a35
Cache download/upload limit values
PR #17640.
2022-09-01 06:54:51 +03:00
Vladimir Golovnev
77dd8bd27b
Parse torrent info separately from resume data
PR #17639.
2022-09-01 06:54:12 +03:00
Vladimir Golovnev
fe34749cfe
Proactively append extension to incomplete files
PR #17631.
2022-09-01 06:53:29 +03:00
Vladimir Golovnev
646322b2a2
Let Qt handle system tray icon availability
PR #17519.
2022-08-31 08:02:44 +03:00
Chocobo1
670b381df7
Merge pull request #17616 from Chocobo1/webui
Make WebUI images self-contained
2022-08-29 13:09:21 +08:00
sledgehammer999
ddf4b94bc6
Sync translations from Transifex and run lupdate 2022-08-29 00:48:24 +03:00
Vladimir Golovnev
794a92f911
Make qBittorrent compatible with libtorrent master
PR #17604.
2022-08-28 11:38:28 +03:00
Chocobo1
f6e2715f4a
Apply forward declaration
Follow up 525692759d.
PR #17621.
2022-08-28 13:25:38 +08:00
Chocobo1
082e6f8830
Apply i18n translation only to built-in WebUI 2022-08-27 13:55:05 +08:00
Chocobo1
ee38124db7
Optimize symbolic links checking 2022-08-27 13:55:04 +08:00
Chocobo1
e06e1d9911
Throw error exception properly 2022-08-27 13:55:04 +08:00
Chocobo1
3851e76179
Remove special handling of icons 2022-08-27 13:55:04 +08:00
Chocobo1
d693f97a46
Use natural sort in WebUI 2022-08-27 13:55:04 +08:00
Chocobo1
ca274635d5
Make WebUI images self-contained 2022-08-27 13:55:04 +08:00
Vladimir Golovnev
525692759d
Split Session class into interface/implementation parts
PR #17579.
2022-08-27 08:01:24 +03:00
Chocobo1
e5491645e4
Merge pull request #17593 from Chocobo1/remove
Use proper verb when referring to torrent removal
2022-08-26 12:06:10 +08:00
Chocobo1
9f511a47e8
Adjust Edit menu of WebUI to follow GUI 2022-08-25 13:32:07 +08:00
Chocobo1
7b0644cdcd
Use proper verb when referring to torrent removal 2022-08-25 13:32:07 +08:00
Vladimir Golovnev
7527343629
Handle some torrent conflicts
PR #17576.
2022-08-23 07:47:20 +03:00
Chocobo1
d173216941
Merge pull request #17578 from Chocobo1/webui
Fix icon in WebUI being trimmed
2022-08-23 10:54:02 +08:00
Chocobo1
d28b5f7834
Rephrase confirm deletion dialog
Closes #14309.
PR  #17586.

Co-authored-by: xavier2k6 <42386382+xavier2k6@users.noreply.github.com>
2022-08-22 11:36:13 +08:00
Chocobo1
04f6ee79c3
Improve icon readability at small size
https://github.com/qbittorrent/qBittorrent/pull/17578#pullrequestreview-1079562121

Co-authored-by: Nowshed H. Imran <nowshed.imran@gmail.com>
2022-08-21 20:47:07 +08:00
Chocobo1
b046b40668
Fix icon in WebUI being trimmed 2022-08-20 13:27:48 +08:00
Chocobo1
0a289e15b4
Merge pull request #17544 from Chocobo1/test
Add unit testing for Path class
2022-08-19 14:44:44 +08:00
Chocobo1
72941b10bb
Use proper request method 2022-08-16 11:26:47 +08:00
Chocobo1
d6c92704a1
Restrict more WebAPI endpoints to POST method only 2022-08-16 11:26:05 +08:00
Jesse Smick
ba511e07b4
WebUI: Improve pieces bar drawing algorithm
PR #17336.
2022-08-15 12:05:35 +08:00
Chocobo1
aa6b29fe7e
Set HTTP method restriction on WebAPI actions
PR #17548.
2022-08-15 11:56:59 +08:00
Chocobo1
d7d1a90de6
Fix wrong parent path 2022-08-14 13:31:21 +08:00
Chocobo1
16482c507b
Fix drive letter validness check 2022-08-14 13:31:21 +08:00
Chocobo1
5abd72d42a
Add comments about "UNC path" support 2022-08-12 12:56:58 +08:00
Chocobo1
2fa5ad982d
Improve absolute/relative path detection 2022-08-12 12:56:57 +08:00
Chocobo1
43df7d0cd4
Improve path validness test 2022-08-12 12:56:56 +08:00
Chocobo1
06c704c740
Revise quote behavior
Now the behavior of double quotes aligns more as with issuing commands from shell/command line.
Related: https://github.com/qbittorrent/qBittorrent/pull/17453#issuecomment-1203372027

PR #17515.
2022-08-10 13:19:34 +08:00
Vladimir Golovnev
916e53c260
Show progress dialog on second instance run
PR #17516.
2022-08-09 19:12:12 +03:00
xavier2k6
3f94a68e62
Sync nonstd/expected with upstream
* Used commit: `95b9cb015fa17baa749c2b396b335906e1596a9e` (Release v0.6.2)
* Source: https://github.com/martinmoene/expected-lite/releases
PR #17508.
2022-08-09 11:22:45 +08:00
Vladimir Golovnev (Glassez)
d27dd85dfd
Correctly replace desktop integration menu 2022-08-06 19:40:04 +03:00
Vladimir Golovnev (Glassez)
15515200ee
Avoid race conditions between dialogs on startup 2022-08-06 15:01:35 +03:00
Vladimir Golovnev
7f40602da9
Fill in initial data in add_torrent_alert handler
libtorrent < 2.0.7 has a bug that add_torrent_alert is posted too early
(before torrent is fully initialized and torrent extensions are created)
so we have to fill initial torrent data in add_torrent_alert handler.

PR #17491.
2022-08-06 06:09:35 +03:00
Chocobo1
33e6ca6778
Redesign Version class
PR #17484.
2022-08-06 11:06:16 +08:00
summer
54b50c3a8a
Do not inhibit system sleep/auto shutdown for torrents stuck at downloading metadata
PR #17481.
2022-08-04 13:10:58 +08:00
Chocobo1
fa3d98aa37
Add keyboard shortcut to Download URL dialog
Closes #17436.
PR #17490.
2022-08-04 13:03:38 +08:00
Vladimir Golovnev
e24aaa4ce1
Show startup progress dialog
PR #17389.
2022-08-03 07:14:26 +03:00
Chocobo1
aed492b881
Merge pull request #17471 from Chocobo1/cmake
Improve constructor of Version class
2022-08-02 13:50:56 +08:00
Chocobo1
a4c2363f43
Improve constructor of Version class
Now we can write `Version<int, 3, 1>(1)` and provide only 1 parameter
instead of all 3 parameters at once at the constructor. Note that for
this instance of `Version` 3 numbers were specified but only 1 is truly
mandatory.

The added code are required to specify conditions of the template
instantiation for the compiler.
2022-08-01 14:53:55 +08:00
Vladimir Golovnev
0056a61db3
Clear RSS parsing error after use
PR #17465.
2022-08-01 08:15:16 +03:00
Vladimir Golovnev
6d1573f901
Prevent multiple session refreshes from being enqueued 2022-08-01 08:14:09 +03:00
Vladimir Golovnev
1c0479a795
When duplicate torrent is added set metadata to existing one
PR #17454. 
Closes #907.
2022-07-31 08:53:26 +03:00
Nowshed H. Imran
748226be29
Rename Icons according to the actions
Fixes #17357.
PR #17366.
2022-07-31 13:31:38 +08:00
Chocobo1
27e1a8ad80
Merge pull request #17453 from Chocobo1/i18n
Fix empty string parameter was omitted
2022-07-30 14:30:12 +08:00
Chocobo1
0802b6d506
Fix empty string parameter was omitted
`QProcess::splitCommand()` will omit empty strings like `""` so provide
our own replacement.

Closes #13124.
2022-07-30 00:17:31 +08:00
Vladimir Golovnev
29f8b4b786
Don't merge trackers by default
PR #17446.
2022-07-29 15:40:40 +03:00
Chocobo1
2ebdf6060d
Translate app help text 2022-07-29 11:13:59 +08:00
brvphoenix
b98e7cb69f
Fix reply data can't be decompressed correctly
If the "Accept-Encoding" is not manually specified, it will be
automatically set to the supported encodings by QT and the reply data
will also be automatically decompressed in this case. Setting
"Accept-Encoding" manually will disable the "autodecompress" feature
before QT 6.3.0. Although QT 6.3.x has different behaviors, let QT
specify the "Accept-Encoding" and we will always obtain the decompressed
data.

The macro "QT_NO_COMPRESS" defined when QT is compiled will disable
the zlib support. We can manually address this exceptions.

PR #17438.
2022-07-29 11:03:21 +08:00
summer
2071ec0c96
Fix peer count issue when tracker responds with zero figure
Sometimes tracker may respond with 0 for num_complete and num_incomplete and we should display that instead of deducing the peer count from peer list. We should only fallback to peer list if tracker does not respond with any information. In such cases num_incomplete and num_complete is set to -1 by libtorrent.

PR #17432.
2022-07-27 13:09:06 +08:00
Chocobo1
36bc77e2e2
Merge pull request #17416 from Chocobo1/icon
Split code to smaller functions
2022-07-26 12:47:21 +08:00
Chocobo1
88556078be
Merge pull request #17412 from Chocobo1/stat
Improve free disk space reporting
2022-07-26 12:45:10 +08:00
Chocobo1
27a07e20f5
Split code to smaller functions 2022-07-25 01:22:33 +08:00
Chocobo1
5d1115f591
Remove compile-time conditional
This checking should be universally applied and not limited to certain OS.
2022-07-25 01:18:42 +08:00
Chocobo1
88d9e82fc9
Improve free disk space reporting
For non-existent directories (which will be created on demand) `Utils::Fs::freeDiskSpaceOnPath`
will return invalid value so instead query its parent path.
2022-07-25 01:18:42 +08:00
Chocobo1
50b01ed45d
Revise function for checking "same file" 2022-07-25 01:18:37 +08:00
Chocobo1
243d130667
Clean up code 2022-07-24 18:07:52 +08:00
Chocobo1
e33f73d08e
Avoid performance impact over network or removable drives 2022-07-24 12:58:24 +08:00
Chocobo1
f505d742d8
Merge pull request #17392 from Chocobo1/validatePath
Fix path validator
2022-07-24 09:54:30 +08:00
Chocobo1
727d20cc92
Simplify implementation
This also enable each platform to provide its own optimal implementation of it.
2022-07-23 22:41:26 +08:00
Chocobo1
a9906e5d2a
Fix validation text doesn't update on mouse click selection 2022-07-22 21:27:00 +08:00
Chocobo1
6ab35512da
Fix browse icon cannot be selected/focused via keyboard 2022-07-22 21:27:00 +08:00
Chocobo1
cfcbe3d6e1
Use less intimidating icon for intermediate state 2022-07-22 21:27:00 +08:00
Chocobo1
39c0c1a088
Simplify operations 2022-07-22 21:27:00 +08:00
Chocobo1
f7ae010274
Rename interface 2022-07-22 21:27:00 +08:00
Chocobo1
4fd5037c10
Avoid redundant operation
The default is the same as the one specified here.
2022-07-22 21:27:00 +08:00
Chocobo1
3fe09aa673
Fix path validator
And revise tooltip message.

Closes #11152.
2022-07-22 21:26:57 +08:00
Chocobo1
3a6858a277
Adjust height to hide scrollbar by default 2022-07-22 13:23:19 +08:00
Chocobo1
c287c7bb01
Revise action capitalization 2022-07-22 13:23:19 +08:00
Chocobo1
99061d92c1
Fix "Add torrent dialog" spill-over on smaller screens
Done by adding an QScrollArea to the layout.

Closes #17387.
2022-07-22 13:23:19 +08:00
Vladimir Golovnev
5b269a782a
Prevent tray menu from being accessed after destruction
PR #17400.
2022-07-21 09:30:05 +03:00
Chocobo1
275387a972
Don't show validation result dialog on every key input
Instead of showing dialog, now it relies on icon to show the validation
result.

PR #17391.
2022-07-21 12:19:58 +08:00
Chocobo1
e68e3b516e
Improve performance of "filesystem line edit" widgets
Also prevent unnecessary querying on the filesystem by omitting
calling setRootPath().
2022-07-21 02:27:48 +08:00
summer
3f7376f26b
Add transfer list refresh interval settings to WebUI
Specially useful for qbt-nox users
PR #16713.

Co-authored-by: An0n <79678786+an0n666@users.noreply.github.com>
2022-07-19 11:14:45 +08:00
Dmitry Vodopyanov
f20f479a4b
Improve sender field in mail notifications
Problem statement: user sees its email address in email notification,
while it is better to have sender field app-personalized, like it did
in Nextcloud: they send notifications from user's email address and
add alias 'Nextcloud' to it.

This patch adds alias 'qBittorrent' to qBittorrent email notifications,
so user sees more user-friendly email notification.

PR #17374.
2022-07-18 13:22:30 +08:00
Chocobo1
e95066a37c
Merge pull request #17367 from Chocobo1/pr_17005
Split the OS cache settings into Disk IO read/write modes
2022-07-17 16:14:58 +08:00
Chocobo1
e281b667c6
Properly release settings class before further operations
Fix up d3e7e8a630.

PR #17376.
2022-07-17 12:41:18 +08:00
Chocobo1
56bb379024
Add workaround for payload upload/download rate
The graphs are showing 0 for both payload upload & download rate but
torrent statistics aren't, so suppress it manually.
The workaround only applies to paused state for now.

Closes #17294.
2022-07-15 12:20:09 +08:00
Chocobo1
bafe4e909c
Use switch() statement 2022-07-15 12:20:09 +08:00
Chocobo1
b6b0b54cdb
Rename variable 2022-07-15 12:17:39 +08:00
xavier2k6
a9a45b9569
Sync flag icons with upstream
* Contains numerous flag fixes.
* Upstream commit: `494ace54e3c413dcebcb071f583b441b267c984f` - (Release v6.6.3)
* Update `AUTHORS` file with upstream `copyright/repo url change`

PR #17199.
2022-07-15 12:08:37 +08:00
summer
4cda5d89fb
Clean up WebUI preferences
PR #17319.
2022-07-15 12:07:09 +08:00
summer
5b730ffb72
Split the OS cache settings into Disk IO read/write modes
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2022-07-14 18:37:38 +08:00
nmariusp
e2b140b8dd
Remove meaningless checking for nullptr
Fix PVS-Studio issue "rss_autodownloader.cpp:111: warning: V668
There is no sense in testing the 'm_fileStorage' pointer against null,
as the memory was allocated using the 'new' operator.
The exception will be generated in the case of memory allocation error".

PR #17347.
2022-07-14 13:19:38 +08:00
Chocobo1
d2a29c2f87
Correctly remove incomplete settings file
PR #17362.
2022-07-14 13:05:08 +08:00
Vladimir Golovnev
d3e7e8a630
Refactor SettingsStorage implementation
Remove redundant fragmentation of logic.

PR #17354.
2022-07-13 07:09:15 +03:00
Vladimir Golovnev
cfdf5cffac
Show remote access info after it is available
PR #17329.
2022-07-11 08:38:45 +03:00
Chocobo1
d6314b30a2
Merge pull request #17341 from Chocobo1/tray
Revise behavior of initializing checkboxes
2022-07-11 12:39:05 +08:00
Chocobo1
03da68b1cf
Add support for unit testing
* Downgraded macOS CI to Qt 6.2.0 due to a bug in Qt Test module
* Revised cmake build scripts
* For now, only building via cmake is supported

PR #17338.
2022-07-10 13:20:27 +08:00