2
0
mirror of https://github.com/qbittorrent/qBittorrent.git synced 2025-03-25 20:10:31 +08:00

13197 Commits

Author SHA1 Message Date
Vladimir Golovnev
4bd50672e8
Improve add torrent error handling
PR .
2025-03-25 09:13:15 +03:00
Chocobo1
8c8a0ac54c
WebAPI: improve setting preferences behavior
Now the behavior is more intuitive for a few options when the client send in partial settings.
This change is backward compatible.

For example, now it is possible to have only one of `max_ratio_enabled` or `max_ratio` instead
of requiring both.

PR .
2025-03-24 21:04:35 +08:00
Chocobo1
7b4a3fccc6
WebUI: replace deprecated data type
`Hash` is deprecated by mootools.
Also simplify related code.

PR .
2025-03-23 15:01:39 +08:00
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 .
PR .
2025-03-23 14:48:21 +08:00
Vladimir Golovnev
627d89813c
RSS: Allow to set refresh interval per feed
PR .
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 .
PR .
2025-03-17 19:40:06 +08:00
Chocobo1
8d0870c953
Switch to string view where applicable
PR .
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 .
2025-03-15 14:58:59 +08:00
Vladimir Golovnev
d174bc75e4
Show free disk space in status bar
PR .
Closes .
2025-03-13 14:47:10 +03:00
Chocobo1
882da47609
Use Qt built-in function for comparing values
PR .
2025-03-10 03:19:31 +08:00
Chocobo1
b74b334e34
Add tests for PeerAddress struct
PR .
2025-03-10 03:11:08 +08:00
Vladimir Golovnev
53f919aea8
Add missing includes
PR .
2025-03-05 09:03:00 +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 .
2025-03-03 21:42:03 +08:00
Chocobo1
96295adc08
Merge pull request from Chocobo1/ci_tweak
Improve CI scripts
2025-03-03 21:28:23 +08:00
skomerko
8f53fb8178
WebUI: Maintain row highlight after rearranging table columns
This PR fixes a bug where row highlight effect would be lost after reordering columns.

PR .
2025-03-02 17:15:21 +08:00
skomerko
37eb80919c
WebUI: Fix bug where the 'Tracker editing' dialog displays incorrect data
In Trackers table, moving the 'URL' column from its default (2) position caused the 'Tracker editing' dialog to display incorrect data.
Steps to reproduce:
1. Move 'URL' column in Trackers table to any position from default
2. Choose tracker URL and click 'Edit tracker URL'

PR .
2025-03-02 17:08:04 +08:00
Chocobo1
1b044d9476
GHA CI: shorten Windows CI build time
Now vcpkg caches b2 tool. Boost doesn't need the exact b2 version to generate the cmake files.
2025-03-01 16:12:59 +08:00
Chocobo1
83599f1f7b
GHA CI: tweak cache size
It seems ~500MB is enough to cache all the build artifacts but we still
make it a bit larger to avoid thrashing.
2025-03-01 16:12:57 +08:00
Vladimir Golovnev
6e1b5ec18b
Don't miss to declare some of the color IDs
PR .
Closes .
2025-02-25 18:56:15 +03:00
Vladimir Golovnev
249c80aaaf
Improve command line parameters serialization
PR .
Closes .
2025-02-25 09:11:03 +03:00
Chocobo1
0ac47496d4
GHA CI: ensure compatibility with newer cmake versions
Fixes .
PR .
2025-02-25 14:08:09 +08:00
Chocobo1
4ec80de268
Update website URL
The website don't use php now.

PR .
2025-02-25 14:03:30 +08:00
skomerko
f432c1e615
WebUI: Show 'Edit tracker URL...' only when one tracker is selected
We can only edit one URL through the dialog, so there's no point in showing this context option when more than one tracker is selected in trackers table.

PR .
2025-02-25 13:55:04 +08:00
Chocobo1
41d9ee91a1
WebUI: tell web crawlers do not index the WebUI
PR .
2025-02-23 15:20:22 +08:00
skomerko
ba3d89b674
WebUI: Update sort icon after changing column order
This PR fixes a bug where the sort icon did not update correctly after reordering columns.

Steps to reproduce:
1. Sort a column
2. Move it to a different position
3. The sort icon remains in its original location

PR .
2025-02-23 15:13:17 +08:00
skomerko
1ca33d45ba
WebUI: Access element attribute/property natively in log tables
 changed pretty much everything already but I spotted some leftovers and replaced them too.

PR .
2025-02-21 20:54:26 +08:00
Chocobo1
a9b54d94a0
Merge pull request from skomerko/webui-v51-fixes
WebUI v5.1 fixes
2025-02-21 20:44:42 +08:00
Luke Memet
693390ff27
Fix shift-click selection on macOS
PR .
Closes .
2025-02-19 13:52:51 +03:00
Daniel Nylander
5ddc5a8b87
NSIS: Update Swedish translation
PR .
2025-02-19 13:45:59 +03:00
Bark
ad9100ac07
WebAPI: Do not wrap result if offset is invalid
Closes .
PR .
2025-02-18 13:53:30 +08:00
Chocobo1
1043bea896
Refactor power management classes
Mainly it is about moving each platform code to its own file.

PR .
2025-02-18 11:58:43 +08:00
Chocobo1
955688c125
WebUI: replace rounding function from MooTools
The `round()` returning floating point number is not a good idea. This is due to floating point
representation is imprecise and sometimes it cannot faithfully represent a number, for example
`0.09 + 0.01 !== 0.1 `. Therefore, it should be avoided and/or utilize other function
to achieve the goal.

Also, improve `window.qBittorrent.Misc.toFixedPointString()` and add test cases.

PR .
2025-02-17 15:11:55 +08:00
Chocobo1
8da43a4054
Use const accessor
This avoids an unnecessary check to the container internal atomic variable and prevents
potential detachment.

PR .
2025-02-16 15:51:40 +08:00
Chocobo1
ddf6dd5fa2
GHA CI: fix AppImage building
Upstream now defaults to static runtime and the previous URL is invalid now.
Upstream commits:
* c28054bab6
* ce5291e259

Also fuse2 is not needed now as stated on:
https://github.com/AppImage/type2-runtime?tab=readme-ov-file#type2-runtime-

PR .
2025-02-16 05:08:39 +08:00
skomerko
8c02bbb4bc WebUI: Select next available search tab after closing last active tab with X button 2025-02-15 10:59:56 +01:00
skomerko
7e95375cec WebUI: Fix unknown country flag path 2025-02-15 10:59:56 +01:00
skomerko
29201fa016 WebUI: Apply scrollbar style to context menu elements 2025-02-15 10:59:56 +01:00
skomerko
1a3d0f6fab WebUI: Adjust context menu offsets in Search tab & Status filter list 2025-02-15 10:59:56 +01:00
skomerko
f58d6ae984 WebUI: Make context menu target selectors more precise 2025-02-15 10:59:56 +01:00
skomerko
7f0134108a WebUI: Use classlist property to set cell class in trackers table 2025-02-15 10:59:53 +01:00
Chocobo1
d79dc86d00
WebUI: require Subresource Integrity on external links
Also migrate to .mjs format.

PR .
2025-02-12 15:19:07 +08:00
Chocobo1
38070c6eee
WebUI: use recommended function for checking NaN values
Also fix a few variable names along the way.

PR .
2025-02-12 15:11:54 +08:00
Vladimir Golovnev
c9eb1fbac8
WebAPI: Don't trim string parameters
PR .
Closes .
Closes .
2025-02-12 09:33:41 +03:00
sledgehammer999
7238bad5a6
Bump to v5.2.0alpha1 2025-02-11 02:04:46 +02:00
sledgehammer999
bd564a99a3
Sync translations from Transifex and run lupdate 2025-02-11 01:56:49 +02:00
Chocobo1
b052ad0923
WebUI: inline redundant function
This also fix share ratio dialog which had been broken in recent cleanup.

PR .
2025-02-09 16:03:01 +08:00
Chocobo1
c65a68251e
WebUI: use native function when converting to numbers
PR .
2025-02-08 17:58:48 +08:00
skomerko
93925042dd
WebUI: Fix memory leak in context menus
This PR fixes a memory leak in context menus. Previously, for some reason, each menu retained references to its target elements without utilizing them further. Since the targets property was accessible/reachable from the root (window object), these references persisted even after the elements were removed from the DOM, preventing them from being garbage collected.
It's easily reproducible - just add a decent amount of torrents, switch between categories multiple times, then capture heap/detached elements snapshot in the Memory tab (Chrome dev tools). The number of detached elements will continue to increase after each category switch and they won't be cleaned up.
[More context](https://github.com/qbittorrent/qBittorrent/pull/22220/files#r1941137796)

PR .
2025-02-08 17:51:21 +08:00
Chocobo1
e55b59d9ca
Use switch statement
PR .
2025-02-08 17:39:10 +08:00
xavier2k6
f8469d02f7
GHA CI: Bump FORTIFY_SOURCE hardening flag to 3
PR .
2025-02-08 17:00:10 +08:00