Chocobo1
d21653e8cf
Don't leak parent file descriptors to child processes
...
It is unexpected for the child process to inherit parent file descriptors.
Requires Qt >= 6.6 and only affects Linux.
Closes #10312 .
PR #22457 .
2025-03-23 14:48:21 +08:00
Vladimir Golovnev
627d89813c
RSS: Allow to set refresh interval per feed
...
PR #22448 .
2025-03-22 08:43:04 +03:00
Chocobo1
b28c229f85
Add control for 'hostname resolver cache expiry interval'
...
Also add a few missing units in WebUI.
Closes #22267 .
PR #22439 .
2025-03-17 19:40:06 +08:00
Chocobo1
8d0870c953
Switch to string view where applicable
...
PR #22438 .
2025-03-17 19:28:38 +08:00
Chocobo1
5a4b3b25d3
Use slice method where applicable
...
These code segments already have its boundary checked and can thus be faster.
PR #22411 .
2025-03-15 14:58:59 +08:00
Vladimir Golovnev
d174bc75e4
Show free disk space in status bar
...
PR #22407 .
Closes #19607 .
2025-03-13 14:47:10 +03:00
Chocobo1
62a7fd86d6
Improve "split to byte array views" function
...
1. Utilize string matcher
2. Remove split behavior parameter
Previously `KeepEmptyParts` behavior doesn't match Qt's
implementation and since our codebase doesn't really make use of it,
we can just remove the parameter.
3. Add tests.
PR #22352 .
2025-03-03 21:42:03 +08:00
Vladimir Golovnev
6e1b5ec18b
Don't miss to declare some of the color IDs
...
PR #22330 .
Closes #22326 .
2025-02-25 18:56:15 +03:00
Luke Memet
693390ff27
Fix shift-click selection on macOS
...
PR #22284 .
Closes #16818 .
2025-02-19 13:52:51 +03:00
Chocobo1
1043bea896
Refactor power management classes
...
Mainly it is about moving each platform code to its own file.
PR #22279 .
2025-02-18 11:58:43 +08:00
Chocobo1
8da43a4054
Use const accessor
...
This avoids an unnecessary check to the container internal atomic variable and prevents
potential detachment.
PR #22280 .
2025-02-16 15:51:40 +08:00
Chocobo1
e55b59d9ca
Use switch statement
...
PR #22247 .
2025-02-08 17:39:10 +08:00
Maxime Thiebaut
4406a3f173
Add announce_port support
...
The `announce_port` setting permits to overwrite the port passed along to trackers as the `&port=` parameter. If left as the default, the listening port is used. This setting is only meant for very special cases where a seed's listening port differs from the effectively exposed port (e.g., through external NAT-PMP). See https://github.com/arvidn/libtorrent/pull/7771 for an example use-case.
This PR adds the relevant setting alongside the existing `announce_ip` setting.
PR #21692 .
2025-02-08 16:12:50 +08:00
Vladimir Golovnev
a018cfa56c
Remove stopped torrent from "error" tracker filter
...
PR #22219 .
2025-01-31 06:23:04 +03:00
Vladimir Golovnev
b76054beba
Store search history
...
PR #22208 .
2025-01-30 08:59:10 +03:00
Chocobo1
f8536162f2
Use compact format for JSON files
...
It saves a bit of space on disk and deters novice users from tampering them.
PR #22211 .
2025-01-29 15:31:06 +08:00
thalieht
bb4a668ddd
Hide zero and infinity values in peer list only when that setting is set to Always
...
PR #22205 .
Closes #21998 .
2025-01-27 09:40:44 +03:00
Vladimir Golovnev
3978137534
Store opened search tabs
...
PR #22163 .
Closes #167 .
2025-01-26 17:12:50 +03:00
thalieht
05787d94ec
Fix torrent content checkbox state under certain conditions
...
PR #22190 .
Closes #22189 .
2025-01-24 12:11:19 +03:00
Chocobo1
f2eecf8a4e
Avoid memory leak on macOS
...
Only Mark-of-the-Web and Power Management are affected.
PR #22176 .
2025-01-18 20:30:14 +08:00
Vladimir Golovnev
99adb16090
Allow to reuse existing search term
...
PR #22148 .
2025-01-13 10:21:40 +03:00
Vladimir Golovnev
76151110e5
Handle Qt style options uniformly
...
PR #22133 .
Closes #22061 .
2025-01-11 10:17:38 +03:00
Vladimir Golovnev
5875d8bff3
Allow multiple simultaneous searches
...
PR #22127 .
2025-01-11 09:53:40 +03:00
Vladimir Golovnev
f9f4b60b83
Allow to refresh existing search
...
PR #22122 .
Closes #17184 .
2025-01-08 17:03:32 +03:00
Thomas Piccirello
4fc36b9e99
Support fetching tracker list from URL
...
Trackers specified at the URL will be added to newly added public torrents.
This feature is adapted from qBittorrent-Enhanced-Edition to allow for automatically adding trackers retrieved from a URL. @ngosang's trackerlist repo is a good example, however I've opted not to include a default URL.
Partially addresses #14535 .
PR #21828 .
2025-01-08 14:51:09 +08:00
Zentino
257d928ab3
Resolve relative URLs within RSS article description
...
PR #21943 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2024-12-20 10:19:34 +03:00
Chocobo1
34c8849f22
Fix tab order in RSS widget
...
Related: https://github.com/qbittorrent/qBittorrent/pull/21996#issuecomment-2543127251
PR #21999 .
2024-12-18 02:29:51 +08:00
Chocobo1
7886ca65f9
Make tab key switch focus
...
These fields do not expect tab characters.
2024-12-16 01:30:47 +08:00
Chocobo1
85c4ddf616
Make links accessible by keyboard
2024-12-16 01:30:47 +08:00
Chocobo1
0a36171999
Sort grid items properly
...
Supersedes #21856 .
2024-12-16 01:30:47 +08:00
Chocobo1
0ad65ceef6
Remove unused variable
...
PR #21962 .
2024-12-08 16:44:47 +08:00
Vladimir Golovnev
d90a9d15ac
Avoid using QDateTime for announce timestamps
...
PR #21906 .
2024-11-27 21:03:54 +03:00
Vladimir Golovnev
15ea836bb9
Avoid repeatedly creating the same QDateTime values
...
PR #21904 .
2024-11-26 09:04:59 +03:00
Chocobo1
3ebdb50457
Verify hash of Python installer
...
PR #21877 .
2024-11-26 00:29:11 +08:00
tinyboxvk
61ff683f11
Update link to news
...
Change `https://www.qbittorrent.org/news.php ` to `https://www.qbittorrent.org/news ` to avoid redirect.
PR #21872 .
2024-11-22 21:05:39 +08:00
Chocobo1
7f901a812d
Improve Python installation process
...
Instead of waiting it to complete, now it will react on installation process finish.
Also add more logging.
PR #21863 .
2024-11-19 18:57:44 +08:00
Vladimir Golovnev
ea35aa45d6
Remove wrong dependency on Main Window
...
Don't depend on upper level widget (Main Window) state.
PR #21816 .
2024-11-18 19:13:43 +03:00
Thomas Piccirello
f89c4c32ed
Display External IP Address in status bar
...
This change displays the last detected IPv4 and/or IPv6 address(es) in the GUI and WebUI's status bar. This does not yet handle systems with multiple addresses of the same type (e.g. multiple IPv6 addresses).
PR #21383 .
---------
Co-authored-by: Odin Vex <44311901+OdinVex@users.noreply.github.com >
2024-11-09 15:58:13 +08:00
Vladimir Golovnev
4bec9b90c4
Check real palette darkness to detect "dark theme"
...
`QStyleHints::colorScheme()` returns chosen color scheme even if current style doesn't support it and uses different palette.
PR #21771 .
2024-11-08 11:45:16 +03:00
Chocobo1
3da9444688
Reduce dependency on Main Window
...
PR #21753 .
2024-11-06 13:45:14 +08:00
Chocobo1
051d7137ea
Use proper macro for unreachable switch cases
...
Those are the `default` cases which are not expected to hit (nor reachable) normally.
When the code is compiled with release mode and it reaches `Q_UNREACHABLE()`, it becomes
undefined behavior. So it rely on the developers to catch the errors in debug mode.
The upside of this is that the `switch` statement will be more optimized than not using it.
This also means the statements after `Q_UNREACHABLE()` isn't important. It allow anything to
preserve the intention of the code.
This macro is preferred over C++23 `std::unreachable` because it will automatically insert a
`Q_ASSERT(false)` with it.
PR #21752 .
2024-11-05 11:55:55 +08:00
Vladimir Golovnev
b083029841
Handle Qt style names in a case insensitive way
...
PR #21720 .
Closes #21716 .
2024-11-03 09:54:57 +03:00
Chocobo1
6f642776b6
Simplify tab handling in Search widget
...
PR #21729 .
2024-11-03 14:43:23 +08:00
Vladimir Golovnev
0f18e80154
Fix .torrent file could not be deleted when torrent is canceled
...
PR #21735 .
Closes #21723 .
2024-11-02 16:41:05 +03:00
Vladimir Golovnev
08b51fc869
Remove trackers from previous category when moved to new one
...
PR #21717 .
Closes #21637 .
2024-11-02 16:40:27 +03:00
Vladimir Golovnev
84d895231c
Correctly delete the moved search tab
...
PR #21687 .
Closes #21675 .
2024-10-28 09:41:09 +03:00
xavier2k6
e0431e3ffb
Update python installer version for Windows
...
PR #21643 .
2024-10-27 15:05:05 +08:00
DoubleSpicy
c080fc3aa0
Fix filesize sorting in preview dialog
...
PR #21563 .
Closes #21510 .
2024-10-23 09:03:25 +03:00
Chocobo1
5dd41f506e
Fix button state for SSL certificate check
...
A copy paste error was introduced in PR #20338 .
PR #21659 .
2024-10-23 13:04:16 +08:00
sledgehammer999
a3ac692c25
Allow to use Qt's default QStyle
...
Relevant prior PR #21553
PR #21605 .
2024-10-21 19:59:55 +03:00