tehcneko
d5c173be16
WebUI: Fix path input layout in torrent creator
...
PR #23345 .
2025-10-07 02:35:47 +08:00
Chocobo1
e78b392c7b
Avoid spawning another temporary event loop
...
And redirect stderr messages to console.
PR #23344 .
2025-10-07 02:27:19 +08:00
Chocobo1
34ad55bb29
Avoid duplicate lookup
...
In C++20 `std::views::transform()` followed by `std::views::filter()` has a nasty effect of
invoking transformation function twice.
Note that there will be a `std::views::cache_latest()` in C++26 to
address this issue.
Ref:
https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2023/p2760r1.html#cache_last
https://stackoverflow.com/questions/64199664/why-c-ranges-transform-filter-calls-transform-twice-for-values-that-match
PR #23343 .
2025-10-07 02:12:27 +08:00
Chocobo1
d5d690cace
Utilize algorithms from std::ranges
...
The result is shorter code and improves readability.
Note that `asConst()` is still required for non-const containers, otherwise the container will
detach.
PR #23342 .
2025-10-07 01:56:08 +08:00
dependabot[bot]
4181a10542
GHA CI: Bump Github Actions versions
...
PR #23332 .
---
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-05 18:30:51 +08:00
Samuel Lachance
ee881d4889
Allow to filter RSS by simple string
...
Adds a search bar for RSS items. It supports plain text search (no regex), applies only to the selected tab, updates results as you type, and shows all items when the field is empty.
PR #23278 .
Resolves #14719 , resolves #15538 , resolves #18444 , resolves #18183 , resolves #22570 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2025-10-04 08:12:26 +08:00
Chocobo1
eed0e56d1a
Use proper return type
...
`count()`, `length()`, `size()`, `indexOf()` and `lastIndexOf()` were
returning `int` in Qt5. In Qt6 they return `qsizetype`.
PR #23317 .
2025-09-29 03:08:02 +08:00
Chocobo1
01ac8c012c
Improve parsing HTTP request line
...
Now the parsing is done with Views and the conversion to `QString` is
only done in the last step.
PR #23316 .
2025-09-29 02:56:09 +08:00
cocopaw
2d6d9ab792
Add Torrent Creator toolbar button
...
PR #23305 .
Closes #21489 .
2025-09-29 02:36:30 +08:00
Tom Piccirello
4fb54d3da0
WebUI: fix adding torrent when using virtual tables
...
When using virtual tables we can't rely on fetching the values from the DOM. We should always fetch values directly from the file tree.
PR #23263 .
Closes #23241 .
2025-09-29 02:19:07 +08:00
Vladimir Golovnev
84224c1bbf
Don't fail because of existing files when exporting torrent files
...
PR #23315 .
Closes #23017 .
2025-09-28 21:08:00 +03:00
nn
42786b2afc
Restore default drag behavior in Torrent Content widget
...
Multi-selection for default LMB action, as before 5.1 update.
Adds option to select grab as the default behavior, for users who don't have the Alt key available.
Holding the Alt key toggles between grab/multi-selection.
PR #23180 .
Closes #22686 .
2025-09-29 01:58:46 +08:00
Vladimir Golovnev
222d265eec
Log a critical error before aborting the app
...
PR #23303 .
2025-09-27 20:22:38 +03:00
Chocobo1
d02b01c733
WebUI: don't send HTTP Referer header to other servers
...
`same-origin`
> Sends the full URL (stripped of parameters) for same-origin requests. Cross-origin requests will contain no referrer header.
This would be helpful for 3rd party WebUI that were forked from the
official one. The official WebUI is not affect by this change since the
request is blocked by CSP.
PR #23294 .
2025-09-27 15:54:49 +08:00
Chocobo1
10b879bdaf
Propagate error messages from search engine
...
This will be useful for development and debugging issues. The messages will be outputted to both console and qbt logger.
Note that having stderr messages does not always mean the operation failed but there might be some (non-fatal) issues.
PR #23293 .
Closes #6553 . Closes #22381 . Closes #23052 .
2025-09-27 15:42:51 +08:00
Vladimir Golovnev
3de2a9f486
Don't create lock file in internal data folders
...
PR #23279 .
2025-09-22 20:09:21 +03:00
Tom Piccirello
3b744c3dba
WebUI: fix lint errors
...
PR #23277 .
2025-09-22 10:35:21 +08:00
cocopaw
9696c99dbd
Block invalid file names when renaming torrent content
...
Relevant issues: #22426 , #21899,#16906,#16834, #16271 , #11276 , #9085 , #11340 , #14728 , #20412 , #20337 , #17049 , #17752 , #17469 , #15378 , #15227 , #14908 .
PR #23060 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2025-09-20 14:42:30 +08:00
Tom Piccirello
753fb80e9b
WebAPI: Append port to session cookie name
...
PR #23228 .
Closes #21651 .
2025-09-19 08:29:46 +03:00
Chocobo1
c075097acd
Allow to run CI checks locally
...
Now the developer is able to run the checks easily and locally (by
following the instructions in nova3/README.md).
PR #23262 .
2025-09-14 22:17:23 +08:00
Chocobo1
b0148ef36c
WebUI: enforce coding style
...
* WebUI: prefer `classList.toggle()` over other pattern
Addresses: https://github.com/qbittorrent/qBittorrent/pull/23231#discussion_r2328647152
* WebUI: prefer using built-in objects Constructor
* WebUI: combine function calls
PR #23261 .
2025-09-14 22:11:23 +08:00
Mark Yu
5edaf2cf10
Use class instead of struct
...
PR #23255 .
2025-09-14 17:18:44 +08:00
Mark Yu
fcaa95101d
Allow equals character in the command line value
...
The CLI options should allow the `=` (equals) char as value so doing `--save-path="/home/test/mydir = somedir"` should parse properly with the `value` method returning `"/home/test/mydir = somedir"`.
Closes #23248 .
PR #23251 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2025-09-14 16:54:14 +08:00
Mark Yu
8e14541236
Allow to copy content paths of selected torrents
...
Closes #23227 .
PR #23239 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2025-09-14 16:42:59 +08:00
xavier2k6
919520b4c3
GHA CI: Install NSIS
via third party action on Windows
...
* Install `NSIS` via https://github.com/repolevedavaj/install-nsis
* `NSIS` is no longer installed on GitHub provided Runner Image as of `windows-2025`
* `NSIS: 3.10` was only available on `windows-2019 / windows-2022`
* We can use newer release now eg. `NSIS: 3.11`.
PR #23249 .
2025-09-14 16:33:24 +08:00
Thomas (Tom) Piccirello
df9e2bb155
Run all WebUI CI checks regardless of failure
...
This fixes an annoyance I've hit with the WebUI CI checks. If the linter fails, the GH Action immediately exits before the formatter has run. This can mean fixing the lint error and pushing up a change, only for the GH Action to then fail due to the formatter check.
This PR makes it so that all checks always run, with the job still failing if any of the checks failed. It should allow for a quicker feedback loop. For an example, see #23199
GitHub Action docs: https://docs.github.com/en/actions/reference/workflows-and-actions/contexts#steps-context
PR #23198 .
2025-09-13 01:53:10 +08:00
Thomas (Tom) Piccirello
7ddbf58a3b
WebAPI: Respond with more detailed info
...
* WebAPI: return error message when endpoint not found
* WebAPI: send appropriate status code when logging in
* WebAPI: return more info when adding torrents
PR #23202 .
Closes #375 .
Closes #10688 .
Closes #10747 .
Closes #11464 .
2025-09-12 17:53:48 +03:00
Thomas (Tom) Piccirello
69b2d7a53e
WebAPI: Support persisting WebUI client preferences
...
This provides a mechanism for persisting WebUI client preferences that are distinct from the broader qBittorrent preferences. These preferences apply exclusively to the WebUI.
PR #23088 .
2025-09-12 17:47:32 +03:00
Chocobo1
94ef038f3a
Improve abstraction of search plugin
...
To make intentions clear and avoid misuse.
Now it should be possible to inherit `Engine` class and create an usable subclass from it.
PR #23232 .
2025-09-07 17:50:39 +08:00
Chocobo1
5c0010ac6c
WebUI: prefer for
loop over Array.forEach
method
...
These were missed in 6ac0c5a8b8
.
Also refactor the code a bit.
PR #23231 .
2025-09-07 16:16:31 +08:00
Chocobo1
0a9316382a
WebUI: fix invalid method
...
The FileList type has no `entries()` method. Use the generic function from `Array` instead.
Addresses https://github.com/qbittorrent/qBittorrent/pull/23182#discussion_r2319408410
Closes #23224 .
2025-09-07 16:14:40 +08:00
dependabot[bot]
463ac253fd
GHA CI: Bump actions version
...
PR #23208 .
---
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-07 16:11:02 +08:00
Thomas (Tom) Piccirello
4ad93bafb2
Update Piccirello's copyright email
...
PR #23197 .
2025-09-07 16:10:07 +08:00
Thomas (Tom) Piccirello
f651a311a4
WebUI: Fix add torrent spinner in Firefox
...
Firefox seems to have an issue where svgs loaded via background-url are not animated. Loading the svg directly as an img fixes this.
Related: #23074 .
PR #23195 .
2025-09-07 16:02:32 +08:00
Userdocs
3146a3c2f9
Fix compilation in C++23 mode
...
This adds c++23 support. In my testing it works for nox and desktop.
PR #23193 .
2025-09-07 15:49:50 +08:00
Thomas (Tom) Piccirello
93a72673d4
WebAPI: send names of missing required params
...
Small quality of life improvement.
PR #23192 .
2025-09-05 20:46:47 +08:00
anikey
56277d5e2b
WebUI: add I2P peers to peer list
...
The WebUI part of the changes for #23061 . Now qBittorrent will display I2P peers in WebUI peers tab.
Fixes the second part of #19794 ("i2p peer list does not show in GUI").
PR #23185 .
2025-09-05 20:40:25 +08:00
Thomas (Tom) Piccirello
ac31fe52e9
WebUI: Continue polling after network error
...
These `fetch` calls properly handle 4xx and 5xx errors, but don't handle network errors. In all cases, I've used the same logic as the `!response.ok` branch of each individual fetch function. This should ensure consistent behavior.
PR #23164 .
2025-09-05 20:32:43 +08:00
Thomas (Tom) Piccirello
4fa433a728
WebUI/WebAPI: Support downloading torrent via search plugin
...
This adds support for downloading a torrent via a search plugin's `download_torrent` function. This primarily affects torrents that use a private tracker requiring a login.
Closes #18334 .
PR #23163 .
2025-09-05 20:24:15 +08:00
Chocobo1
becfd19e34
Enable full type checking on search engine
...
Now it utilize type stub for PySocks library and all search engine python code are properly
type checked.
Note that a `cast` is required because there isn't enough hints in PySocks to let the type
checker understand that the classes are supposed to be compatible.
PR #23183 .
2025-08-31 22:10:30 +08:00
Chocobo1
dffd27a879
WebUI: prefer range based for loop
...
Using `entries()` can also save the work of manually handling the index variable.
PR #23182 .
2025-08-31 21:54:48 +08:00
Chocobo1
b851caa6b9
WebUI: use local preference class locally
2025-08-31 21:45:48 +08:00
Chocobo1
07f2afc4ac
WebUI: move variable into proper scope
2025-08-31 21:45:48 +08:00
Thomas (Tom) Piccirello
02c2a68282
WebAPI: Remove outdated TODO
...
This TODO has been in the code for 8 years since it was added in #6475 (commit b271fa9f00
). It appears to have been related to the `skipChecking` variable, though what it actually means has been lost over time. Note that both the `savePath` and the `downloadPath` are recursively created if they don't yet exist.
PR #23165 .
2025-08-31 21:31:49 +08:00
Chocobo1
0933ffd805
GHA CI: use preinstalled packages on macOS
...
This is to address the following error:
https://github.com/qbittorrent/qBittorrent/actions/runs/17323566048/job/49182687551?pr=23182#step:4:745
> Error: cmake was installed from the local/pinned tap
> but you are trying to install it from the homebrew/core tap.
> Formulae with the same name from different taps cannot be installed at the same time.
PR #23184 .
2025-08-31 21:15:13 +08:00
Dru Still
8daa87d9de
Add status bar menu with DL/UL display on macOS
...
Implements a native macOS status bar item that displays the qBittorrent icon and provides a minimal menu showing live download and upload rates. This allows quick network activity checks without switching to the app window or relying on the Dock.
Closes #22545 .
PR #23098 .
2025-08-31 21:06:42 +08:00
anikey
5e11f4dc5e
WebAPI: Add I2P peers to peer list
...
Fixes the second part of #19794 .
PR #23061 .
2025-08-29 20:51:31 +08:00
Chocobo1
6ac0c5a8b8
WebUI: prefer for
loop over Array.forEach
method
...
The `for` loop can do everything `forEach` can and doesn't need a closure.
2025-08-27 22:19:16 +08:00
Chocobo1
2be052e9c4
WebUI: enforce sorted imports
...
Due to `allowSeparatedGroups = true`, the sorting is applied on a group of consecutive imports.
That means a new group of imports can be created by adding a blank line.
2025-08-27 22:19:16 +08:00
Chocobo1
2bd0965906
WebUI: remove redundant braces in switch statements
...
Braces are only required when there are variable/function declarations.
2025-08-27 22:19:16 +08:00
Chocobo1
acab056fe4
WebUI: disallow number literals with zero fractions or dangling dots
...
Javascript treats them all the same as `Number`.
2025-08-27 22:19:16 +08:00
Chocobo1
86acc01b1a
WebUI: prefer Number
static properties over global ones
...
`Number` purpose is modularization of globals in ECMAScript 2015.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/parseInt#number.parseint_vs._parseint
2025-08-27 22:19:16 +08:00
tehcneko
fb4b266828
WebUI: Fix blurry window controls
...
PR #23131 .
2025-08-26 17:09:01 +08:00
Thomas (Tom) Piccirello
c953730a42
WebUI: Various improvements to dynamic tables
...
This PR contains various small improvements to dynamic tables, mostly around reducing duplication.
Closes #22921 .
PR #23081 .
2025-08-26 17:01:30 +08:00
Chocobo1
4be33b2ddc
Fix typo
...
This typo is causing the header `X-Forwarded-Proto` to be ineffective
(when using reverse proxy).
PR #23120 .
2025-08-23 03:21:28 +08:00
Thomas (Tom) Piccirello
6830e32c72
WebUI: replace callback with promise chaining
...
PR #23109 .
2025-08-23 03:14:49 +08:00
Thomas (Tom) Piccirello
2f34c9b2f0
WebAPI: Omit file names in parseMetadata
response
...
This allows us to bypass any issues related to non-ascii file names.
Supersedes #23080 .
PR #23085 .
2025-08-23 03:06:24 +08:00
Hanabishi
bda37cbade
Improve parsing of HTTP headers
...
Parse HTTP headers using raw byte arrays instead of strings. This allows us to apply different encodings for different parts.
This change is backward compatible and should not affect any existing operation, so WebAPI version bump is not required.
PR #23083 .
2025-08-23 02:51:51 +08:00
Chocobo1
feacfb0627
WebUI: enforce using prefix operators via ESLint
...
NPM has a bug that cannot fetch the plugin via git protocol:
https://github.com/npm/cli/issues/2610 , so fetch a tarball instead.
PR #23110 .
2025-08-18 03:05:25 +08:00
xavier2k6
119a5a6e85
GHA CI: Bump some pre-commit hook revisions
...
* Bumped `pre-commit-hooks` -> v6.0.0
* Bumped `typos` -> v1.35.3
PR #23097 .
2025-08-18 02:58:38 +08:00
Thomas Piccirello
6ef9db89f9
WebUI: Support editing tracker tier
...
This PR adds the ability to direct modify a tracker's tier from the WebUI. This process is notably different than the GUI, which provides arrows for increasing/decreasing a tracker's tier.
Closes #12233 .
PR #22963 .
2025-08-18 02:46:10 +08:00
tehcneko
b2d6323034
Replace RSS articles icons with SVG
...
Closes #22335 .
PR #23082 .
2025-08-15 18:15:33 +08:00
Chocobo1
7a1a214f73
WebUI: prefer prefix increment operator
...
Adhere to coding style.
PR #23076 .
2025-08-12 19:02:59 +08:00
Chocobo1
d6672abb94
WebUI: use static method for getting time
...
Unify API usage across the code base.
PR #23077 .
2025-08-11 16:47:37 +08:00
tehcneko
03fb036ae3
WebUI: Replace GIFs with SVG
...
Unused GIFs have been removed along with their CSS; some GIFs have been replaced with CSS, and all SVGs were drawn myself.
PR #23074 .
2025-08-11 16:38:11 +08:00
tehcneko
f743ae2d08
WebUI: Use native css transition for context menu
...
Reduce MooTools usage.
PR #23069 .
2025-08-11 16:28:47 +08:00
tehcneko
a265ba7fd2
WebUI: Implement missing tracker list features
...
Implemented: Tracker endpoints in the list, missing "Tracker Error" and "Unreachable" status, "Next Announce" and "Min Announce" column and double click to edit tracker url.
PR #23045 .
2025-08-11 16:20:58 +08:00
Vladimir Golovnev
2631692cff
Improve changing torrents queue positions
...
PR #23068 .
2025-08-10 18:37:19 +03:00
Thomas Piccirello
02892d1250
WebUI: Add new Add Torrent experience
...
This PR uses the new APIs from #21015 to provide a WebUI Add Torrent experience more closely matching the GUI's.
New functionality:
- View torrent size, date, infohash, files, etc.
- Reprioritize and ignore files before adding
- Specify tags when adding torrent
- Specify save path for incomplete torrent
Closes #20557 , closes #10997 , closes #12499 , closes #14201 , closes #15071 , closes #15718 , closes #16207 .
PR #21645 .
2025-08-09 18:34:38 +08:00
Ryu481
02d72179fe
Migrate away from deprecated methods for setting the standard application on macOS
...
The methods for checking if qBittorrent is set as the standard application for opening torrent files and magnet links and setting qBittorrent as the standard application for those is using deprecated methods now. For example `LSCopyDefaultHandlerForURLScheme` and `kUTTagClassFilenameExtension`.
The new methods have been moved to `macutilities.mm` because in `os.cpp` cocoa couldn't be imported.
PR #23059 .
2025-08-09 18:13:18 +08:00
Ryu481
fa3531dcb4
GHA CI: Disable the hardened runtime in the codesigning workflow for macOS
...
Currently the hardened runtime is enabled for code signing in the github workflow for macOS. However in this thread https://github.com/qbittorrent/qBittorrent/discussions/23041#discussioncomment-13969415 a user had a problem to open the nightly builds from github. Relevant part of the error:
```
Reason: tried: '/private/var/folders/y0/jmsflc717tn_tj2x9d1g3d9w0000gn/T/AppTranslocation/8B53E367-2E0C-42C1-A4D5-6787109EE46E/d/qbittorrent.app/Contents/Frameworks/QtWidgets.framework/Versions/A/QtWidgets' (code signature in '/private/var/folders/y0/jmsflc717tn_tj2x9d1g3d9w0000gn/T/AppTranslocation/8B53E367-2E0C-42C1-A4D5-6787109EE46E/d/qbittorrent.app/Contents/Frameworks/QtWidgets.framework/Versions/A/QtWidgets' not valid for use in process: mapping process and mapped file (non-platform) have different Team IDs), '/private/var/folders/y0/jmsflc717tn_tj2x9d1g3d9w0000gn/T/AppTranslocation/8B53E367-2E0C-42C1-A4D5-6787109EE46E/d/qbittorrent.app/Contents/Frameworks/QtWidgets.framework/Versions/
(terminated at launch; ignore backtrace)
```
Further investigation showed that when disabling the hardened runtime this won't occur any more. I haven't noticed this before because the error wouldn't occur when SIP (system integrity protection) is disabled and I have it disabled now.
PR #23058 .
2025-08-09 17:59:18 +08:00
Vladimir Golovnev
de7d9c960d
Forbid usage of context-less connections
...
PR #23032 .
2025-08-06 16:28:31 +03:00
rekayno
4eda3e791a
Fix invalid Transifex links
...
PR #23057 .
2025-08-05 00:20:53 +08:00
Thomas Piccirello
e86cc22b3d
WebUI: Fix editing/creating category
...
This broke in #22938 .
Closes #23042 .
PR #23056 .
2025-08-04 18:29:33 +08:00
tehcneko
96c55c4998
WebUI: Make "column resize" strings translatable
...
PR #23053 .
2025-08-04 18:14:55 +08:00
HamletDuFromage
d7b330c069
WebAPI: Add setComment endpoint
...
No UI implementation as of now.
Closes #19598 .
PR #23031 .
2025-08-04 17:52:54 +08:00
Chocobo1
fef6ac515c
Use source URL for search plugins
...
This saves a few URL redirections. And avoids potential issues related to Cloudflare
protections/blockages on qbt domain.
Closes #22990 .
PR #23048 .
2025-08-03 15:16:57 +08:00
Chocobo1
94552b2384
WebUI: use secure random number generator for generating random port
...
Cryptographically strong random number generators are generally preferred over others.
PR #23049 .
2025-08-03 15:09:39 +08:00
Ryu481
ae8a6689dc
Migrate away from deprecated API on MacOS
...
Currently `NSUserNotifications API` is used on MacOS to display notifications. However this is marked as deprecated and should be replaced with `UserNotifications.frameworks API`. With the new API it is required to ask for permission before notifications can be send. The program will ask for permission to send notifications on the start.
Related: #15630 .
PR #23019 .
2025-08-01 18:25:56 +08:00
Chocobo1
2c6c61cc79
WebUI: migrate away from outdated config in ESLint
...
The following message appears when using the outdated value:
>[@stylistic/eslint-plugin]: You are using deprecated value(boolean) for "allowTemplateLiterals"
>in "quotes", please use "always"/"never" instead.
Also prefer using double quotes over backticks for strings.
PR #23038 .
2025-07-28 04:33:50 +08:00
Chocobo1
eb84e99866
Revise command-line show message condition
...
Now when user specified 'help' or 'version' flag, the program will process them first and
ignore all other flags (even invalid flags).
This improves program usability since user will be able to consult the help description without
ensuring existing flags are all valid (or removing all flags). And user can refine the flags
after reading the help description.
PR #23037 .
2025-07-28 04:26:39 +08:00
Chocobo1
378b8c78cb
GHA CI: fix broken retry when packaging for macOS
...
Failed CI instance: https://github.com/qbittorrent/qBittorrent/actions/runs/16437290836/job/46449723244
Follow up bb1c02125b
.
PR #23036 .
2025-07-28 04:20:30 +08:00
Thomas Piccirello
2b3ee59e25
WebUI: Fix broken CACHEID changes
...
This broke in #22945 .
PR #23025 .
2025-07-28 04:09:21 +08:00
Illustar0
bb1c02125b
GHA CI: Add code signing to fix app launch crash on macOS
...
PR #23016 .
2025-07-22 15:09:16 +08:00
Chocobo1
d4c914e003
Add alternative URL for program update checking
...
The alternative URL is hosted on GitHub and users are able to access it:
https://github.com/qbittorrent/qBittorrent/issues/23000#issuecomment-3092538814
https://github.com/qbittorrent/qBittorrent/issues/23009#issuecomment-3093201180
Also, disguise the user agent as a normal browser to avoid standing out from the crowd and
avoid whatever issues from CDN. This only applies to non-fosshub URLs.
Closes #23000 .
Closes #23009 .
PR #23014 .
2025-07-22 14:56:42 +08:00
Ryu481
03efbac581
Migrate away from deprecated iconForFileType
...
Currently `iconForFileType` is used on macOS to display the file icons in the content tab. However this is marked as deprecated and should be replaced with `iconForContentType`.
Related #15630 .
PR #22992 .
2025-07-21 01:47:26 +08:00
Thomas Piccirello
1c33fefc6d
Fix wrong PR linked in WebAPI changelog
...
Follow up to #22958 .
PR #22994 .
2025-07-20 16:47:01 +08:00
Mark Yu
8f709b5fbc
WebUI: Implement Share limit action
...
PR #22989 .
Closes #22984 .
2025-07-20 16:39:31 +08:00
Thomas Piccirello
c962a6b1d7
WebUI: Apply cache id to all loaded resources
...
This includes html files and js/css assets loaded via MooTools.
PR #22945 .
Closes #18712 .
2025-07-20 16:32:18 +08:00
Bark
e3141ce449
WebUI: Allow closing dialogs with Escape key
...
Tested on the following WebUI Modals:
1. Delete
2. Rename files
3. Settings
4. About
5. Statistics
6. Add torrent
PR #22920 .
Closes #13891 .
2025-07-20 16:23:22 +08:00
Thomas Piccirello
163f683186
WebUI: Support reannouncing individual trackers
...
PR #22954 .
2025-07-19 15:29:14 +08:00
Chocobo1
7c443b0c3b
Fix random function detection with static PIE builds
...
Certain build options didn't like the detection with an no-op. So make it really fetch a random value.
Closes #22981 .
PR #22987 .
2025-07-15 01:56:04 +08:00
Ryu481
ec9d541bbd
Don't leave an empty folder when deleting or moving torrents
...
Currently when you delete or move a torrent sometimes an empty folder will stay. This is because hidden files will stay which didn't got deleted.
The reason that it is not working is that QDir::Files is used which doesn't lists hidden files. Adding QDir::Hidden will make the code work as expected. At least on Windows and macOS QDir::Files doesn't lists hidden files. I can't test on linux.
PR #22983 .
2025-07-15 01:44:57 +08:00
Thomas Piccirello
7aebd07f9f
WebUI: Support managing category download path
...
PR #22938 .
2025-07-15 01:29:03 +08:00
Vladimir Golovnev
e1ebf8374e
Add option to disable torrent state colors
...
PR #22976 .
2025-07-14 11:40:53 +03:00
Thomas Piccirello
66f3cf7e67
Reannounce DHT when reannouncing all trackers
...
PR #22953 .
2025-07-13 21:39:29 +08:00
Bark
bf86592e8c
WebUI: Add value constraint checks
...
Closes #22758 .
PR #22911 .
2025-07-13 21:29:33 +08:00
Vladimir Golovnev
b18a964a0b
Add a small gap between progress bars
...
PR #22977 .
2025-07-13 08:45:37 +03:00
Mark Yu
9fc7bd938f
Add option to make progress bar to follow torrent state color
...
PR #22967 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2025-07-13 08:42:38 +03:00
Ryu481
f5a93be544
Fix system language autodetection on MacOS
...
PR #22957 .
2025-07-08 12:38:02 +03:00
Thomas Piccirello
399707fdc5
WebUI: Focus on filter field using Ctrl+F
...
This supports the filters on the Transfers, Search, and Execution Log tabs.
Closes #15482 .
PR #22946 .
2025-07-08 02:01:51 +08:00
Thomas Piccirello
2ebe8595c9
Modify CategoryOptions
serialization to JSON
...
When a category's download path option is set to "Default", its `downloadPath` is serialized into JSON as `undefined`. This results in the `downloadPath` field being omitted from `torrents/categories` and `torrents/maindata` payloads (as is expected with an `undefined` value).
The use of `undefined` here causes an issue in the WebUI. Specifically, when the category previously contained a value for this field (i.e. download path option set to either "Yes" or "No"), the `processMap` logic in `SyncController` does not detect the removal this field. This results in the category's new `downloadPath` not being properly sent to the client. By switching from `undefined` to `null`, we ensure that the `downloadPath` value is always included in the category's payload. This allows `processMap` to properly detect whenever the value changes.
This change is backwards compatible with existing categories.json files. Older qBittorrent versions should also be able to parse new categories.json files containing `null`.
More context: cd3fbfbf9b (r2173148696)
PR #22958 .
2025-07-07 00:17:57 +08:00
Thomas Piccirello
c5a282a02f
WebUI: Fix footer left alignment
...
Follow up to #22918 .
PR #22947 .
2025-07-07 00:04:46 +08:00
Thomas Piccirello
0e0b1d0962
WebUI: Limit window sizes to viewport size
...
This change makes the WebUI easier to use on small screens (e.g. mobile). In cases where the window's default size is larger than the user's screen, the window will be resized appropriate (see example below). Every window has been tested for compatibility. The only windows that don't support this are the multi file rename window and the RSS Downloader window.
Closes #19813 .
PR #22919 .
2025-07-06 23:58:07 +08:00
Thomas Piccirello
15b8a81f92
WebUI: Improve search page experience on mobile
...
This change better handles resizing of elements on the search page to ensure no controls are hidden at typical mobile screen sizes.
Improvements seen below:
- "Search" button is now accessible
- Content no longer overflows w/ "Search plugins..." button pushed offscreen
- Tabs overflow horizontally and are scrollable, rather than pushing down the search results table
PR #22916 .
2025-07-06 23:50:54 +08:00
Thomas Piccirello
f8d44b5073
WebUI: Fix hiding of filters toolbar
...
The toolbar should be hidden when not on the "Transfers" tab. The hiding of this toolbar can result in resizing the panels, especially on mobile, so we should recompute panel heights.
PR #22915 .
2025-07-06 23:45:45 +08:00
Thomas Piccirello
f42dd1b529
WebUI: Support horizontal scrolling of tabs
...
Previously, the tabs would overflow to the next line, often being hidden by other content. For example, the "Content" tab is now accessible on mobile.
PR #22914 .
2025-07-06 23:40:25 +08:00
Thomas Piccirello
b7a43ea118
WebAPI: Cache metadata using TorrentID
...
`m_torrentMetadataCache` previously used a torrent's InfoHash as its key. However, InfoHashes for hybrid torrents cannot be serialized and deserialized via their TorrentID (e.g. `InfoHash(TorrentID(infoHash.toTorrentID().toString())) != infoHash`). This is due to hybrid InfoHashes containing both a v1 and v2 hash, while the serialized TorrentID only contains a single truncated v2 hash. Thus we cannot expect an InfoHash serialized by its TorrentID to be able to construct an equivalent InfoHash. By switching to the TorrentID, we always have a single ID to use.
Follow up #21015 .
PR #22926 .
2025-07-04 17:19:14 +08:00
sledgehammer999
4f94eac235
Merge private branch for an RSS security fix
...
Reported responsibly by Michael Lappas (@lappas-m)
2025-07-02 08:43:15 +03:00
sledgehammer999
a3e6d1a0ad
Merge pull request #22944 from sledgehammer999/fallback_update
...
Add fallback to update mechanism
2025-07-01 12:03:30 +03:00
Vladimir Golovnev
efedbcb407
Allow to customize ProgressBar color
...
PR #22928 .
2025-07-01 10:28:26 +03:00
Chocobo1
55de9b07d2
Add AppStream metadata for qbt-nox
...
Also trim redundant trailing path separators.
Ref: https://www.freedesktop.org/software/appstream/docs/sect-Metadata-ConsoleApplication.html
PR #22941 .
2025-07-01 14:47:14 +08:00
sledgehammer999
9ad4a94940
Store version numbers in the appropriate type
2025-06-30 15:02:58 +03:00
sledgehammer999
c47b981a56
Add fallback to update mechanism
...
This brings a fallback version check to the update mechanism,
which should be as stable as it can be.
It will allow migrating to another primary mechanism without
having to have updated the older primary mechanism too.
2025-06-30 15:02:57 +03:00
Ryu481
5028f68d48
Make qBittorrent quit on MacOS with main window closed
...
Fixes the reported bug that you couldn't quit qBittorrent when the main window was closed on MacOS.
Closes #22849 .
PR #22931 .
2025-06-30 01:56:39 +08:00
Thomas Piccirello
ef4957a9f4
WebUI: Make footer scrollable on mobile
...
The window footer can now be scrolled.
Closes #21541 .
PR #22918 .
2025-06-30 01:51:06 +08:00
Chocobo1
99d25eec71
Use proper capitalization for MSVC linker flags
...
The linker flags are case insensitive [1] but it would be better to use the proper capitalization [2].
[1] https://learn.microsoft.com/en-us/cpp/build/reference/linking?view=msvc-170#command-line
[2] https://learn.microsoft.com/en-us/cpp/build/reference/guard-enable-guard-checks?view=msvc-170
PR #22940 .
2025-06-30 01:45:10 +08:00
Chocobo1
70a6153b78
WebAPI: Trim leading whitespaces on Run External Program fields
...
Hacked qbt instances may contain malicious script placed in Run External Program and the script
will attempt to hide itself by adding a lot whitespaces at the start of the command string.
Users may mistake the field of being empty but is actually not.
So trim the leading whitespaces to easily expose the malicious script.
Note that GUI already trim the fields and only WebAPI doesn't trim them. This patch will unify
the behavior.
Related: https://github.com/qbittorrent/docker-qbittorrent-nox/issues/71#issuecomment-2993567440
PR #22939 .
2025-06-30 01:39:03 +08:00
Bark
690a139538
WebUI: Add ability to add/remove tracker from selected torrents
...
Closes #22618 .
PR #22698 .
2025-06-28 14:06:03 +08:00
Vladimir Golovnev
e447baa04a
Allow to customize PiecesBar colors
...
PR #22922 .
2025-06-28 08:53:47 +03:00
Vladimir Golovnev (Glassez)
fdfdbae30c
Show warning message box on opening inappropriate URL
2025-06-27 20:59:50 +03:00
Vladimir Golovnev
dd4a2eb583
Don't expose palette colors in UI theme editor
...
PR #22923 .
Fixes regression introduced by #22330 .
2025-06-27 13:44:10 +03:00
Vladimir Golovnev
41d7d672ce
Optimize parsing of search results
...
PR #22906 .
2025-06-26 08:49:58 +03:00
Vladimir Golovnev (Glassez)
d379fa3035
Prevent opening local files if web page is expected
2025-06-23 13:14:37 +03:00
Vladimir Golovnev
71af105a89
Avoid copying resume data when loading torrents
...
PR #22899 .
2025-06-23 12:20:01 +03:00
Chocobo1
f6ee6b92a4
Revise label wordings
...
Such that action subject is truly unambiguous to the user.
PR #22894 .
2025-06-22 16:01:00 +08:00
Chocobo1
fe1679d778
Provide testing cases for path concatenation
...
PR #22893 .
2025-06-22 15:40:14 +08:00
Thomas Piccirello
67ef356064
WebUI: Delete correct rows after re-sort
...
The previous logic assumed that trs was properly sorted, which is no longer the case.
Follow up to #22827 .
PR #22884 .
2025-06-22 15:35:07 +08:00
Thomas Piccirello
254f39f89d
WebUI: Restore node default collapse state
...
By default, nodes should be expanded until explicitly collapsed. This restores the default behavior which changed in b4a16f6464
.
Relevant: https://github.com/qbittorrent/qBittorrent/pull/21645#discussion_r2150695297
PR #22879 .
2025-06-22 14:55:37 +08:00
tehcneko
d702a02c1f
WebUI: Avoid forced reflow on virtual list rerender
...
Avoid forced synchronous layout caused by offsetHeight/scrollTop access.
PR #22858 .
2025-06-22 14:27:16 +08:00
xavier2k6
86e11d344f
GHA CI: Bump pandoc
to latest
...
* Bump `pandoc` to latest (3.7.0.2)
* Apply upstream suggestions
PR #22708 .
2025-06-22 14:21:50 +08:00
Awqre
6972962ee0
Compress images losslessly
...
Lossless reduction of file size for .icns icons for MacOS, and some small improvements for a few PNG images.
PR #22790 .
2025-06-21 01:21:01 +08:00
Vladimir Golovnev
599a2d0c93
Find CorePrivate package with Qt >= 6.10
...
PR #22890 .
Closes #22887 .
2025-06-20 10:20:13 +03:00
Vladimir Golovnev
e27cbab7ee
Don't ignore QFile::open() result
...
PR #22889 .
Closes #22888 .
2025-06-20 10:19:16 +03:00
Vladimir Golovnev
794310dca9
Add WebAPI for fetching torrent metadata
...
PR #21015 .
2025-06-17 10:15:21 +03:00
Chocobo1
3cd40cc5a2
Merge pull request #22867 from Chocobo1/webui_defer
...
* WebUI: use defer when loading scripts
So that the HTML layout can be rendered earlier.
* WebUI: move scripts into <head> section
For consistency reasons.
2025-06-17 03:03:46 +08:00
Thomas Piccirello
380d9af34c
WebUI: Increase number of buffered virtual rows
...
Negligible performance hit for increased UX. Currently when scrolling I frequently see blank rows.
PR #22853 .
2025-06-17 02:53:09 +08:00
Chocobo1
5605e08347
WebUI: move scripts into <head>
section
...
For consistency reasons.
2025-06-16 03:10:37 +08:00
Chocobo1
753c6629a3
WebUI: use defer
when loading scripts
...
So that the HTML layout can be rendered earlier.
2025-06-16 03:10:01 +08:00
xavier2k6
9b66693cb8
GHA CI: Bump dependencies
...
* Bumped `Qt` to `6.9.1` on macOS/Windows
* Bumped `Qt` to `6.9.1` & `Boost` to `1.88.0` on `coverity-scan`
PR #22839 .
2025-06-14 21:17:19 +08:00
Thomas Piccirello
406a389d7c
WebUI: Improve performance of re-sorting table rows
...
This change drastically improves the performance of changing a table's sorted column. This performance is achieved through improved data structures, namely removing operations that repeatedly spliced an array. We also no longer iterate over a potentially large array.
On a torrent with ~50,000 files, re-rendering after a sort improves from ~20 seconds to 2 seconds.
PR #22827 .
2025-06-14 21:06:33 +08:00
Leon Blakey
d7a5430893
Improve resume queue load performance
...
PR #22831 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2025-06-13 09:47:23 +03:00
Thomas Piccirello
7ac160a481
Bump WebAPI version
2025-06-11 17:03:47 -07:00
Thomas Piccirello
4c190b0d4f
Move priority parsing into helper function
2025-06-11 17:03:46 -07:00
Thomas Piccirello
69bf31f4e9
Add WebAPI for downloading torrent metadata
...
Signed-off-by: Thomas Piccirello <thomas@piccirello.com >
2025-06-11 17:03:46 -07:00
Thomas Piccirello
e45ca3fde7
Support downloading torrent from previously fetched metadata
...
Signed-off-by: Thomas Piccirello <thomas@piccirello.com >
2025-06-11 17:03:46 -07:00
Thomas Piccirello
5750de6270
Add WebAPI for fetching torrent metadata
...
Signed-off-by: Thomas Piccirello <thomas@piccirello.com >
2025-06-11 17:03:46 -07:00
Thomas Piccirello
ff07591a87
WebUI: add missing debounce handler
...
PR #22830 .
2025-06-09 21:46:07 +08:00
Chocobo1
c215c1e8b1
WebUI: reduce MooTools usage
...
WebUI is trying to be less tangled with MooTools.
PR #22822 .
2025-06-09 21:39:44 +08:00
Thomas Piccirello
06756936f3
WebUI: Always show Auto Torrent Management option
...
This behavior is consistent with the GUI.
Closes #22702 .
PR #22819 .
2025-06-09 21:31:46 +08:00
Thomas Piccirello
7ed026ef78
WebUI: Reset filter selection when double clicking filter
...
When double clicking on a filter, all other filters will be reset. For example, double clicking on a status filter will reset the categories, tags, and trackers filters to "All". This behavior can be disabled in WebUI options.
Closes #22449 .
PR #22818 .
2025-06-09 21:24:58 +08:00
Thomas Piccirello
78fae0ae76
WebUI: Cache server stats for statistics window
...
This change ensures that the WebUI caches relevant server stats for immediate display once the statistics window is opened. Previously, all stats would remain blank until maindata was fetched. This could take a while if e.g. the user was on the search tab.
Closes #22764 .
PR #22817 .
2025-06-09 21:17:30 +08:00
Chocobo1
8aa1a96d71
Revise Interface section layout in Options dialog
...
The Language option now has its own layout since it is independent to other options (Style and Color scheme).
This avoids text in Language combobox to be left out and replaced by `...` due to Style Hint text being too long.
PR #22823 .
2025-06-08 17:15:42 +08:00
Chocobo1
4132173b30
WebUI: avoid redundant operations when sorting
...
Avoid recomputing the same result on every sort operation.
Also clean up the caller site.
PR #22821 .
2025-06-08 17:08:47 +08:00
Rémi Marseault
8e2125ee72
WebAPI: Add metadata in /app/getDirectoryContent response
...
## Description
Send file/folder metadata instead of just the name of a filesystem entry.
Currently the endpoint only sends a list of string, containing the path of each entry, without specifying its type (file or folder).
The optional `withMetadata` flag has been added to provide metadata and to prevent breaking changes with older versions.
If `true`, JSON response will be an array of objects instead of an array of strings.
This object contains:
- `name`: the name of the file system entry (without path)
- `type`: Whether the file system entry is a "file" or a "dir"
- `creation_date`: file system entry's creation date
- `last_access_date`: file system entry's last access date
- `last_modification_date`: file system entry's last modification date
If the entry is a file, a `size` field is present with the file size in bytes.
## Objective
Build a server file browser inside WebUIs, feature is currently being developed for VueTorrent.
It will include file metadata, filtering and sorting on the different fields.
PR #22813 .
2025-06-07 23:02:48 +08:00
Vladimir Golovnev
05bcc4e175
Don't limit the size of read "resume data"
...
PR #22825 .
2025-06-07 06:58:48 +03:00
Thomas Piccirello
5dfb51a8d2
WebUI: Add ability to refresh search
...
WebUI equivalent of #22122 . Refreshing maintains all existing filters.
PR #22805 .
2025-06-06 17:32:47 +08:00
Vladimir Golovnev
526abdf7ce
Avoid data copying when prepare resume data
...
PR #22812 .
2025-06-06 08:59:39 +03:00
bolshoytoster
617b1da842
WebUI: Keep client session from expiring when the page is hidden
...
In #22567 , I made it so the web UI wouldn't refresh the main data while the page is hidden. This causes the session to time out (after 1 hour by default).
This PR changes that to instead refresh every Preferences/WebUI/SessionTimeout / 2 instead of not at all, which should keep the session alive.
PR #22804 .
2025-06-05 18:28:35 +08:00
Thomas Piccirello
c59ac3b970
Make modifying log file perms best effort
...
qBittorrent is able to write to the log file, so it's ok if the permission change fails.
PR #22800 .
2025-06-05 17:32:26 +08:00
Thomas Piccirello
0c48b70e5b
Send 204 when WebAPI response contains no data
...
PR #21349 .
2025-06-05 09:25:04 +03:00
Vladimir Golovnev
1cb6173ad1
Fix command line placeholders description
...
PR #22815 .
2025-06-05 09:21:46 +03:00
Vladimir Golovnev
2cbfb91b88
Use modern API to export torrent
...
PR #22786 .
2025-06-03 15:24:52 +03:00
Vladimir Golovnev
0729c9a2f8
Handle libtorrent alerts in SessionImpl only
...
PR #22798 .
2025-06-03 08:18:12 +03:00
Shanary
7982f66fa6
WebAPI: Optionally include files info in torrent list
...
PR #22750 .
Closes #22742 .
2025-06-01 12:06:11 +03:00
Chocobo1
50d60b9589
GHA CI: enforce sorted import in Python scripts
...
This main point is to normalize the sorting of imports in Python scripts.
Currently the default setting from isort is used: https://pycqa.github.io/isort/docs/configuration/custom_sections_and_ordering.html
PR #22793 .
2025-05-31 18:01:02 +08:00
Chocobo1
96f0eebc4e
WebUI: switch to lightweight clipboard library
...
The new library [1] will opt to the modern Clipboard API [2] when it is available. It will
fallback to the old method otherwise.
The new library is also smaller and without any bloat.
Note that the line `module.exports` is required to be removed/commented out. This is the only
patch required.
[1] https://github.com/feross/clipboard-copy
[2] https://developer.mozilla.org/en-US/docs/Web/API/Clipboard_API
PR #22792 .
2025-05-31 17:55:10 +08:00
Chocobo1
4b07597d54
WebUI: migrate away from recursion
...
PR #22791 .
2025-05-31 17:38:05 +08:00
Vladimir Golovnev
a9213627a9
Interpret tracker "updating" status as a separate property
...
PR #22787 .
2025-05-30 08:34:26 +03:00
Vladimir Golovnev
28c1ba869b
WebUI: Add support for tracker status filter
...
PR #22166 .
2025-05-30 08:32:46 +03:00
tehcneko
054003970e
WebUI: Fix path autofill in set location and new category
...
Attach `PathAutofill` after `DOMContentLoaded`.
Also removed pathAutofill.js in newfolder.html since it's meant for new RSS folder name.
PR #22773 .
2025-05-29 21:57:43 +08:00
ivan
44bb1ac7eb
WebUI: Add support for tracker status filter
2025-05-27 17:12:43 +03:00
Vladimir Golovnev (Glassez)
e309b17732
WebAPI: Provide announce stats within "sync" data
2025-05-27 11:28:13 +03:00
Chocobo1
e10fb40a48
NSIS: revise license page
...
The GPL doesn't need to be agreed with and therefore remove 'I accept agreement' checkbox and
adjust related UI elements.
Closes #22660 .
PR #22775 .
2025-05-27 14:53:50 +08:00
Zentino
7648a2838d
Fix access denial messages
...
Updated error messages for access denial from (401) to (403) for remote content.
Added (401) status code to authentication error messages.
PR #22774 .
2025-05-27 14:47:43 +08:00
Vladimir Golovnev
8cd1a80852
WebAPI: Add more properties to 'torrents/info' result
...
PR #22753 .
2025-05-27 09:37:06 +03:00
tehcneko
c79a9624af
WebUI: Remove unnecessary script loading
...
Removed Mootools script in most iframes, there is no longer any Mootools usage in them.
PR #22772 .
2025-05-27 14:33:22 +08:00
Chocobo1
4e9c514c2f
WebUI: migrate to JS native class
...
PR #22770 .
2025-05-27 14:28:15 +08:00
tehcneko
84ed24e257
WebUI: Replace slider with native input range
...
Got rid of Mootools and MochaUI.
PR #22769 .
2025-05-27 14:22:13 +08:00
tehcneko
48f7f6fb8c
WebUI: Convert 'Progress Bar' class to a custom element
...
Got rid of Mootools and manual calculation of width.
PR #22768 .
2025-05-27 14:16:18 +08:00
Vladimir Golovnev
f47754838b
Allow to pass torrent comment to external program
...
PR #22771 .
Closes #13186 .
2025-05-26 15:35:51 +03:00
bolshoytoster
a3d1ff0eb2
WebUI: Fix memory leak
...
See #22734 , there is a memory leak in the MooTools .destroy(), this replaces all uses of that with the browser native .remove().
This also overrides the MooTools Document.id function, which is used by $(id). The original function always allocates an ID to elements it selects, the override doesn't, and is also a little more efficient.
Closes #22734 .
PR #22754 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2025-05-25 15:41:52 +08:00
Chocobo1
afcfea5b8f
Merge pull request #22761 from Chocobo1/rss_fields
...
Add 'Open link' to RSS article header
2025-05-25 15:12:16 +08:00
Chocobo1
84cd8e1535
Utilize Path class when finding Python executable
...
This is a code clean up and shouldn't affect the outcome.
PR #22760 .
2025-05-25 15:00:19 +08:00
Chocobo1
eb3718fc91
Add 'Open link' to RSS article header
2025-05-23 23:32:46 +08:00
Chocobo1
7e0247fefe
Avoid redundant function calls
...
Fix code formatting.
2025-05-23 23:32:45 +08:00
Chocobo1
f9f031cdb4
Use HTTPS by default
2025-05-23 23:32:39 +08:00
Chocobo1
d56b353c52
Add checks for minimum supported Python version
...
Now it checks for all python installations and related procedures has been revised.
If the python version does not meet the minimum requirement, it will be logged.
PR #22729 .
2025-05-21 14:52:11 +08:00
samet sahin
83799f4f07
WebUI: Prevent mobile keyboards from capitalizing username input
...
This PR improves the user experience on mobile devices by ensuring the username field in the login form does not automatically capitalize the first letter when the keyboard opens.
Mobile browsers tend to automatically capitalize the first letter of text inputs, which can lead to login failures if the username is case-sensitive. By explicitly disabling autocapitalization, the WebUI ensures a more predictable and user-friendly experience on mobile devices.
Tested on:
iOS (Safari)
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
PR #22725 .
2025-05-18 15:49:40 +08:00
Chocobo1
c7caae1150
WebUI: fix wrong replacement sequence
...
Only IPv6 addresses may have a 'zone index' and therefore it should be replaced last for the
result to be correct.
PR #22724 .
2025-05-18 15:42:36 +08:00
Chocobo1
1662a9deb2
Add fallback for random number generator
...
`getrandom()` is available since Linux 3.17 (2014/10/05) yet there are older devices that don't
meet this requirement.
Closes #22691 .
PR #22723 .
2025-05-18 15:37:17 +08:00
Atk
6c310aa311
WebUI: Make multi-rename search & replace fields use a monospace font
...
Before the release of 5.1.0 I believe these two fields both used monospace fonts and also had an increased font size, maybe 14px (I couldn't find in blame where/how this regressed). Ideally, I'd like to bring this back, as it makes elaborate regexes easier to grok. This PR currently just tells the browser to use its monospace font, but I could also add a similar in-line style for font size. I just don't know if this is the best way to solve this problem; if there's a better place for this sort of styling to happen let me know
PR #22719 .
2025-05-18 15:32:06 +08:00
xavier2k6
368748ac52
GHA CI: Bump spellcheck related hooks revs
...
* Bumped `codespell` -> `2.4.1`
* Bumped `typos` -> `1.32.0`
PR #22709 .
2025-05-18 15:04:49 +08:00
KanishkaHalder1771
9c81e58de6
Update help message for Windows systems
...
For windows environment the `--help` output will show :
```
set QBT_NO_SPLASH=1
C:\Program Files\qBittorrent\qbittorrent.exe
```
instead of
```
QBT_NO_SPLASH=1 C:\Program Files\qBittorrent\qbittorrent.exe
```
Fixes #22662 .
PR #22695 .
2025-05-18 14:51:01 +08:00
Chocobo1
778a158597
WebUI: add versioning to local preferences
...
And provide migration path for changing preferences.
Fixes #22639 .
PR #22677 .
2025-05-14 07:20:01 +08:00
Chocobo1
09071d2b69
Allow symbolic links in torrent creator on Windows
...
Note that .lnk files (shortcuts) are always ignored on Windows.
Closes #22665 .
PR #22675 .
2025-05-14 07:13:52 +08:00
Hanabishi
b79ac0d716
Remove "Physical memory (RAM) usage limit" option on Linux
...
Memory working set limit is not effective on Linux at all. See [`getrlimit(2)`](https://man7.org/linux/man-pages/man2/getrlimit.2.html ) → `RLIMIT_RSS`.
Introduced in #16874 , disabled for macOS in #19805 . This PR hides the option for Linux too.
Worth to mention that #19805 did not deliver the change for WebUI. So there is also a small fixup, I covered both cases.
Also removed pointless "This option is less effective on Linux" remark.
PR #22680 .
2025-05-13 00:49:18 +08:00
skomerko
de767871f1
WebUI: Convert 'Pieces Bar' class to a custom element
...
Mootools is no longer used to create PiecesBar class (+ I cleaned it up a bit and turned into custom element but everything should work as before).
PR #22670 .
2025-05-13 00:43:35 +08:00
Chocobo1
2477e13b3f
GHA CI: update zizmor rules ID
...
zizmor 1.7.0 has changed the ID.
https://docs.zizmor.sh/release-notes/#v170
PR #22684 .
2025-05-13 00:36:31 +08:00
Chocobo1
eb82c9078d
WebUI: always provide event variable
...
This is unifying coding style and avoid wrong usages.
PR #22676 .
2025-05-13 00:11:00 +08:00
Vladimir Golovnev
663da093bd
Fix compilation with Qt 6.6.0
...
PR #22678 .
2025-05-12 11:27:02 +03:00
dezza
13f9c20a69
WebUI: Remove unselectable
from General tab
...
Making General-tab text `unselectable` is not an improvement.
It begs to add a new `Copy -> Save path` feature, because using `Set location` to copy save path (*which requires a request*) is not faster than simply copying it from the `General` tab by double-left clicking and pressing `CTRL+C`.
I don't see a reason why its necessary to software-restrict people from copying details from the `General`-tab - there are several reasons why you would - incl. the above mentioned usecase for quickly copying save-path, but other than that its counterproductive to limit people from copying the details displayed.
PR #22663 .
2025-05-10 16:48:05 +08:00
justusaac
86e4b662ce
WebUI: Select multiple files to rename with Shift
...
Convenience feature in the "Rename Files" menu in the WebUI.
If you click one file's checkbox, and then click another with Shift held, all the checkboxes between those two will be selected/unselected based on the state of the first checkbox.
It's based on what the Windows file explorer does when holding Ctrl and Shift
Closes #22455 .
PR #22610 .
2025-05-10 16:08:19 +08:00
Vladimir Golovnev
dcaf4b6d80
Fix async result handlers
...
PR #22669 .
Closes #22644 .
2025-05-10 10:17:35 +03:00
Vladimir Golovnev
d29f47c36e
Revamp adding torrents to libtorrent session
...
PR #22648 .
2025-05-08 16:31:02 +03:00
Vladimir Golovnev (Glassez)
ab04064adc
Store AddTorrentParams inside alert handlers
2025-05-07 06:52:33 +03:00
Vladimir Golovnev (Glassez)
9afbd47b52
Assign add_torrent_alert handler when adding torrent
2025-05-07 06:52:33 +03:00
Vladimir Golovnev (Glassez)
582dc99cae
Don't access libtorrent session directly from TorrentImpl
2025-05-07 06:52:33 +03:00
Vladimir Golovnev (Glassez)
3691eb948e
Join the similar code paths
2025-05-07 06:52:33 +03:00
Vladimir Golovnev (Glassez)
76bb4e5f98
Add helpers to get InfoHash from libtorrent classes
2025-05-07 06:52:23 +03:00
Chocobo1
0262faa915
Merge pull request #22650 from Chocobo1/webui_file_tree
...
* WebUI: migrate 'file tree' class to JS native class
* WebUI: avoid double lookup
2025-05-05 15:48:24 +08:00
Chocobo1
f1b7c4572b
Revise labels for 'duplicate torrent' actions
...
PR #22645 .
2025-05-05 15:38:12 +08:00
Chocobo1
c494314a29
Use short format for displaying RSS entry date
...
The long format is too verbose and hard to read.
PR #22646 .
2025-05-03 23:04:55 +08:00
Chocobo1
559f47ab0c
WebUI: avoid double lookup
2025-05-03 22:47:28 +08:00
Chocobo1
380b25e22f
WebUI: migrate 'file tree' class to JS native class
2025-05-03 22:41:48 +08:00
Chocobo1
7745ac19d8
Merge pull request #22636 from skomerko/webui-dynamic-classes
...
Dynamic table classes are now created using modern class syntax (minimal changes to remove Mootools bits).
2025-05-03 22:19:01 +08:00
Vladimir Golovnev
6cd6267c26
Fix ratio handling
...
PR #22638 .
2025-05-01 14:18:18 +03:00
Vladimir Golovnev
e7dee969e1
Remove dubious seeding time max value
...
PR #22624 .
2025-05-01 08:57:10 +03:00
skomerko
bb68a39b53
WebUI: Prefix private properties with # in dynamic table classes
2025-04-29 21:08:26 +02:00
skomerko
4c91cd9372
WebUI: Use modern class syntax to create dynamic table classes
2025-04-29 21:08:17 +02:00
tehcneko
0791828b84
WebUI: fix virtual list defects
...
Fixes https://github.com/qbittorrent/qBittorrent/pull/22502#issuecomment-2822201721 and https://github.com/qbittorrent/qBittorrent/pull/22502#issuecomment-2822253388 .
PR #22597 .
2025-04-29 20:16:00 +08:00
Vladimir Golovnev
c2f2a38582
Call QPromise::start()
early to avoid race condition
...
PR #22617 .
2025-04-28 18:04:35 +03:00
Chocobo1
ad4bdc0653
Merge pull request #22615 from Chocobo1/webui_eslint
...
* WebUI: disallow unnecessary semicolons
* WebUI: ensure consistent shorthand syntax
* WebUI: disallow async functions which have no await expression
* WebUI: remove unused variable
2025-04-28 20:20:57 +08:00
Chocobo1
f3095935ea
Merge pull request #22549 from skomerko/webui-element-by-id
...
Mootools `$` alias is no longer used for element lookup (excluding lib files).
Follow up PR for #22523 .
2025-04-28 03:34:23 +08:00
Vladimir Golovnev
732b2bcbdb
Provide asynchronous results via QFuture
...
Makes asynchronous logic to look more straightforward.
Allows caller to choose blocking or non-blocking way of obtaining asynchronous results via the same interface.
PR #22598 .
2025-04-27 16:24:07 +03:00
Vladimir Golovnev
33aaa867b5
Drop support of Qt 6.5
...
PR #22599 .
2025-04-27 16:21:20 +03:00
Chocobo1
fdd17159eb
WebUI: remove unused variable
2025-04-27 16:19:51 +08:00
Chocobo1
e9fee414df
WebUI: disallow async functions which have no await expression
2025-04-27 16:19:51 +08:00
Chocobo1
1077cbba2b
WebUI: ensure consistent shorthand syntax
2025-04-27 16:19:50 +08:00
Chocobo1
70dbe9468a
WebUI: disallow unnecessary semicolons
2025-04-27 16:19:50 +08:00
Isak05
45babc336d
Fix preview not opening on Wayland
...
Deferring the opening of the preview slightly gives the preview select
dialog time to close and for focus to shift back to the main window.
PR #22608 .
Closes #22607 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2025-04-27 10:02:52 +03:00
Vladimir Golovnev
70822e8942
Fix appearance of search history length spinbox
...
PR #22605 .
2025-04-26 09:28:24 +03:00
Vladimir Golovnev
b5394e7939
Don't interpret wildcard pattern as filepath globbing
...
PR #22590 .
Closes #22583 .
2025-04-26 09:27:22 +03:00
skomerko
411ca0f668
WebUI: Use native function for selecting elements by ID
2025-04-23 19:55:04 +02:00
skomerko
7b3aa51bb1
WebUI: Eliminate redundant DOM element queries
2025-04-23 19:49:40 +02:00
sledgehammer999
0b3bce8993
Sync translations from Transifex and run lupdate
2025-04-21 12:30:57 +03:00
bolshoytoster
0160aa28b6
WebUI: Don't update UI if the page is hidden
...
Currently, there is unnecessary CPU/network usage by the web UI when it's running in the background, this PR prevents it from refreshing in the background.
Closes #22565 .
PR #22567 .
2025-04-21 17:23:09 +08:00
Chocobo1
0187f19f60
WebUI: migrate away from recursion calls
...
Browsers have limited recursion depth about ~10000.
PR #22580 .
2025-04-21 17:21:18 +08:00
sledgehammer999
e87dfe35f3
Bump copyright year
2025-04-20 23:38:34 +03:00
sledgehammer999
e51be45ce6
Sync translations from Transifex and run lupdate
2025-04-20 23:34:53 +03:00
tehcneko
b4a16f6464
WebUI: Optimize table performance with virtual list
...
Adding virtual list support to dynamic tables to improve performance on large lists, I observed a 100x performance improvement on rendering on a torrent table with 5000 torrents.
This optimization is disabled by default and can be enabled in options.
PR #22502 .
2025-04-20 17:18:26 +08:00
Chocobo1
250fef4ee7
Improve error messages
...
Print error message to stderr instead of stdout.
PR #22581 .
2025-04-20 16:54:49 +08:00
Chocobo1
8fc5d0914d
Add versioning to socks.py
...
Also mark variable as private in novaprinter.py.
PR #22578 .
2025-04-20 16:47:45 +08:00
Kostiantyn Chernenok
fc5daf6e1d
Clamp seeding time limit in session
...
Add clamping for seeding and inactive seeding time limit on setting from dialog and loading from config.
Closes #21953 .
PR #22558 .
Signed-off-by: Kostiantyn <kos.chernenok@gmail.com >
2025-04-20 16:34:04 +08:00
Kostiantyn Chernenok
c878a09d27
Swap add file/link buttons on toolbar
...
Swap "Add torrent file" with "Add torrent link" button to be consistent with order in File menu.
Closes #22420 .
PR #22557 .
Signed-off-by: Kostiantyn <kos.chernenok@gmail.com >
2025-04-19 07:57:39 +08:00
Chocobo1
2aee875642
Enforce SOCKS proxy setting in search engine plugins
...
Previously it require each plugin to import helpers.py to setup SOCKS proxy.
Now it is enforced by default for all plugins.
Also added a function for plugins to ignore/restore the socket to
default state.
PR #22554 .
2025-04-19 07:11:50 +08:00
Vladimir Golovnev
2785636d3f
Prevent crash due to corrupted resume data
...
PR #22569 .
Closes #22540 .
2025-04-17 11:16:17 +03:00
Vladimir Golovnev
15069b2643
Fix the torrent relocates files when switching to "manual" mode
...
PR #22564 .
Closes #22283 .
Closes #22546 .
2025-04-16 10:23:34 +03:00
Chocobo1
f0361f1bed
Use the proper keyboard shortcut for deleting items on macOS
...
Closes #20187 .
PR #22544 .
2025-04-15 15:13:36 +08:00
Vladimir Golovnev
110e6d32b4
Explicitly reject opened Add torrent dialogs when exiting app
...
PR #22535 .
Closes #19933 .
Supercedes #22533 .
2025-04-14 09:51:59 +03:00
Chocobo1
3d73026ff2
Add SOCKS4/SOCKS4a proxy support to search engine
...
Pass 'Perform hostname lookup via proxy' setting along the way.
Also add underline to variables and functions that are private to the python module.
PR #22510 .
2025-04-13 16:25:38 +08:00
Chocobo1
abafbc0685
WebUI: avoid saving invalid size
...
Don't save the wrong size when the tab is collapsed.
Reported in: https://github.com/qbittorrent/qBittorrent/pull/21215/files#r1966052959
PR #22537 .
2025-04-12 17:59:42 +08:00
Chocobo1
5465605377
WebUI: fix dark mode in RSS entry viewer
...
Use `allow-same-origin` sandbox directive to allow fetching the parent CSS.
PR #22536 .
2025-04-12 17:54:55 +08:00
luzpaz
9331580e86
Fix grammar
...
ref: https://github.com/qbittorrent/qBittorrent/pull/19333#discussion_r1793252710
PR #22525 .
2025-04-12 17:46:48 +08:00
FredBill1
795889c417
Migrate socks.py from SocksiPy to PySocks 1.7.1
...
Migrate `socks.py` from SocksiPy 1.01 to [PySocks 1.7.1](c2fa43cbe1/socks.py
), allowing python 3+ compatibility, [details](https://github.com/qbittorrent/qBittorrent/issues/16447#issuecomment-2776894026 ).
The content of the `socks.py` is entirely copied from the [PySocks repository](c2fa43cbe1/socks.py
), the only modification is the license header at the top of the file and trimming trail whitespaces.
Closes #16447 .
PR #22507 .
2025-04-09 17:36:50 +08:00
Chocobo1
ff03eeab5b
Show info hash in log when added a duplicate torrent
...
Closes #22161 .
PR #22505 .
2025-04-08 16:31:04 +08:00
Chocobo1
f0b9a17566
WebUI: add headers to RSS entry viewer
...
Introduced Author, 'Open link' headers.
Note that the Author and 'Open link' are not mandatory fields in RSS/Atom feeds. So these
headers will only be displayed when the feed includes them.
PR #22503 .
2025-04-08 15:47:47 +08:00
xavier2k6
72e8b3272b
GHA CI: Use Qt 6.9.0 on Windows and macOS
...
PR #22509 .
2025-04-08 15:35:58 +08:00
skomerko
6c36830e5e
WebUI: Set status filter to 'All' if selected filter is no longer visible
...
Fixup for #21145
To reproduce:
1. Select status filter with 0 torrents
2. Enable 'Auto hide zero status filters' and save settings. Hidden filter is still selected:
PR #22487 .
2025-04-05 17:13:14 +08:00
Chocobo1
cdddaae939
WebUI: fix preferences not applied in magnet handler
...
Thanks for the diagnosis in this [post](https://github.com/qbittorrent/qBittorrent/issues/22495#issue-2958553624 ).
Closes #21486 .
Closes #22495 .
PR #22504 .
2025-04-05 13:51:08 +08:00
tehcneko
f540381caf
WebUI: Support creating new torrents
...
Implemented the torrent creator using WebAPI from #20366 in WebUI, the interface is mostly inspired by GUI and VueTorrent.
Closes #5614 .
PR #22459 .
2025-04-03 17:16:12 +08:00
Vladimir Golovnev
055d82bda4
Add option to enable previous Add new torrent dialog behavior
...
Some people are still unhappy with "standalone window mode" of "Add new torrent dialog" so just provide them with an option to use old "modal dialog mode" in all the current qBittorrent branches.
PR #22492 (based on original PR #19874 ).
2025-03-31 09:18:16 +03:00
Chocobo1
0796f96ee4
Merge pull request #22482 from Chocobo1/process_env
...
Refine environment variable scope
2025-03-30 15:12:10 +08:00
Vladimir Golovnev
841cffafa7
Restore ability to use server-side translation by custom WebUI
...
PR #20968 .
2025-03-30 09:47:21 +03:00
Chocobo1
ade39432be
Revise wordings related to SOCKS4 proxy
...
The affected options are not really incompatible with SOCKS4 but it is due to Qt missing
implementation. Therefore 'unavailable' is more suitable.
PR #22483 .
2025-03-29 21:09:49 +08:00
Chocobo1
830d2c207b
WebAPI: bump version
...
Related: https://github.com/qbittorrent/qBittorrent/pull/22460#issuecomment-2748821812
And add initial version of WebAPI changelog.
PR #22481 .
2025-03-29 20:47:53 +08:00
Chocobo1
97865545c3
WebUI: fix Tag counter counting wrong
...
Related: 73e9116d21 (r2014898781)
PR #22480 .
2025-03-29 20:41:05 +08:00
Hanabishi
3abdc3134b
WebUI: Disable alternative UI in case of the index page being inaccessible
...
Initial failed access shows an error as before, but on the next reload it falls back to the default WebUI.
PR #22399 .
Closes #18401 .
2025-03-29 20:32:22 +08:00
Chocobo1
5a716a40fb
Simplify proxy related code
2025-03-28 18:39:25 +08:00
Chocobo1
943e403241
Refine environment variable scope
...
Previously the proxy environment variable will affect the qbt process globally. Now it is
limited to where it required.
2025-03-28 18:15:53 +08:00
Vladimir Golovnev
103ea813dc
RSS: Fix crash when moving a folder into its subfolder
...
PR #22479 .
Closes #18446 .
2025-03-28 09:03:59 +03:00
Vladimir Golovnev
52b1f3588a
RSS: Mark matched article as "read" if refers to duplicate torrent
...
PR #22477 .
2025-03-28 09:01:22 +03:00
Vladimir Golovnev
4bd50672e8
Improve add torrent error handling
...
PR #22468 .
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 #22460 .
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 #22458 .
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 #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
882da47609
Use Qt built-in function for comparing values
...
PR #22389 .
2025-03-10 03:19:31 +08:00
Chocobo1
b74b334e34
Add tests for PeerAddress struct
...
PR #22388 .
2025-03-10 03:11:08 +08:00
Vladimir Golovnev
53f919aea8
Add missing includes
...
PR #22362 .
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 #22352 .
2025-03-03 21:42:03 +08:00
Chocobo1
96295adc08
Merge pull request #22351 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 #22339 .
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 #22338 .
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 #22330 .
Closes #22326 .
2025-02-25 18:56:15 +03:00
Vladimir Golovnev
249c80aaaf
Improve command line parameters serialization
...
PR #22319 .
Closes #22306 .
2025-02-25 09:11:03 +03:00
Chocobo1
0ac47496d4
GHA CI: ensure compatibility with newer cmake versions
...
Fixes #22315 .
PR #22320 .
2025-02-25 14:08:09 +08:00
Chocobo1
4ec80de268
Update website URL
...
The website don't use php now.
PR #22321 .
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 #22311 .
2025-02-25 13:55:04 +08:00
Chocobo1
41d9ee91a1
WebUI: tell web crawlers do not index the WebUI
...
PR #22309 .
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 #22299 .
2025-02-23 15:13:17 +08:00
skomerko
1ca33d45ba
WebUI: Access element attribute/property natively in log tables
...
#21007 changed pretty much everything already but I spotted some leftovers and replaced them too.
PR #22294 .
2025-02-21 20:54:26 +08:00
Chocobo1
a9b54d94a0
Merge pull request #22282 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 #22284 .
Closes #16818 .
2025-02-19 13:52:51 +03:00
Daniel Nylander
5ddc5a8b87
NSIS: Update Swedish translation
...
PR #22046 .
2025-02-19 13:45:59 +03:00
Bark
ad9100ac07
WebAPI: Do not wrap result if offset is invalid
...
Closes #22158 .
PR #22174 .
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 #22279 .
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 #22281 .
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 #22280 .
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 #22286 .
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 #22263 .
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 #22264 .
2025-02-12 15:11:54 +08:00
Vladimir Golovnev
c9eb1fbac8
WebAPI: Don't trim string parameters
...
PR #22266 .
Closes #19485 .
Closes #22254 .
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 #22252 .
2025-02-09 16:03:01 +08:00
Chocobo1
c65a68251e
WebUI: use native function when converting to numbers
...
PR #22246 .
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 #22234 .
2025-02-08 17:51:21 +08:00
Chocobo1
e55b59d9ca
Use switch statement
...
PR #22247 .
2025-02-08 17:39:10 +08:00
xavier2k6
f8469d02f7
GHA CI: Bump FORTIFY_SOURCE
hardening flag to 3
...
PR #22248 .
2025-02-08 17:00:10 +08:00
Chocobo1
dc10b88cec
GHA CI: explicitly set C++20 mode for libtorrent
...
Bump Boost version. Boost::asio 1.76 has a bug that prevents compiling in C++20 mode.
PR #22245 .
2025-02-08 16:30:36 +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
skomerko
9c2e698514
WebUI: Replace getElements
& getChildren
...
This PR further reduces Mootools usage.
PR #22220 .
2025-02-04 17:08:18 +08:00
xavier2k6
463700b76d
GHA CI: Bump libtorrent versions
...
PR #22217 .
2025-02-03 09:07:35 +03:00
Vladimir Golovnev
86387fbe49
Return first tracker as fallback for "current tracker"
...
PR #22224 .
Closes #20415 .
2025-02-01 14:58:12 +03: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
skomerko
af65ddd012
WebUI: Allow to move state icon to name column in torrents table
...
PR #22118 .
2025-01-28 14:46:09 +08:00
Chocobo1
fe9dc131bc
WebUI: don't wrap regex literal in regex constructor
...
PR #22206 .
2025-01-28 00:33:04 +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
Chocobo1
3ef4d0d798
GHA CI: add checking for GHA workflows
...
PR #22200 .
---------
Co-authored-by: userdocs <16525024+userdocs@users.noreply.github.com >
2025-01-26 03:44:59 +08:00
Chocobo1
e2341f5217
Merge pull request #22199 from Chocobo1/webui_eslint
...
WebUI: improve lint checks
2025-01-26 03:34:34 +08:00
xavier2k6
abd3cd54bc
GHA CI: Bump numerous hook revs
...
PR #22193 .
2025-01-26 03:26:27 +08:00
Chocobo1
dc8ac38494
WebUI: revise lint rules for css
...
Some rules are already covered by other tools, so remove them.
2025-01-24 23:58:13 +08:00
Chocobo1
e3eacf2bf7
WebUI: migrate stylelint config file format
...
From https://stylelint.io/user-guide/configure :
>Stylelint currently supports other configuration locations and formats, but we may remove these
>in the future:
>...
>.stylelintrc.json file
2025-01-24 22:26:36 +08:00
Chocobo1
5098519d46
WebUI: enable cache for lint checks
...
Also, WebUI gets its own .gitignore file.
2025-01-24 22:26:35 +08:00
ze0s
82c36aea89
WebAPI: add new method setTags to upsert tags on torrents
...
This is another optimization for torrent management on large scale instances with the goal to minimize the amount of required API calls. Ref #22128 .
This new function and endpoint torrents/setTags does an upsert to replace the torrent tags and handles the removal and add internally, instead of doing multiple calls to add and remove tags on torrents from the client.
PR #22156 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2025-01-24 22:24:35 +08:00
thalieht
05787d94ec
Fix torrent content checkbox state under certain conditions
...
PR #22190 .
Closes #22189 .
2025-01-24 12:11:19 +03:00
Chocobo1
f8c48349a1
WebUI: use native function for selecting elements
...
PR #22179 .
2025-01-20 23:36:11 +08:00
Chocobo1
1ee84033ec
WebUI: use template literals instead of string concatenation
...
PR #22177 .
2025-01-18 20:51:47 +08: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
ze0s
76e1040232
WebAPI: optionally include trackers list in torrent info response
...
This PR adds an optional parameter includeTrackers to the Torrent info endpoint /torrents/info to include the trackers list of each torrent in the response under the key trackers.
PR #22128 .
2025-01-17 17:10:25 +08:00
Chocobo1
4686d6709e
GHA CI: show installed version
...
Before this change, it wasn't clear which exact version were installed.
PR #22155 .
2025-01-13 17:24:08 +08:00
Chocobo1
2cc7ec90a8
WebUI: add percentage sign for hsl components
...
This is a workaround to avoid confusing the stylelint checker (and probably some other checker
internally). They cannot accept the fact that the component can be `<number>` but instead
insist it should be `<percentage>`
Reference: https://developer.mozilla.org/en-US/docs/Web/CSS/color_value/hsl#formal_syntax
Also, MDN recommended to use `hsl()` instead of `hsla()`.
From https://developer.mozilla.org/en-US/docs/Web/CSS/color_value/hsl :
> Note: The hsla() functional notation is an alias for hsl(). They are
> exactly equivalent. It is recommended to use hsl().
PR #22154 .
2025-01-13 17:13:20 +08:00
Vladimir Golovnev
99adb16090
Allow to reuse existing search term
...
PR #22148 .
2025-01-13 10:21:40 +03:00
Chocobo1
c622d50814
WebUI: use native API for accessing query string
...
PR #22141 .
2025-01-12 21:36:59 +08:00
Chocobo1
11991e62f5
WebUI: fix error when opening the same dialog twice
...
PR #22139 .
2025-01-12 21:18:41 +08:00
Chocobo1
82d90e599c
Preserve allocated buffer capacity
...
PR #22138 .
2025-01-12 21:01:39 +08:00
xavier2k6
45b7947cd0
GHA CI: Update Boost URL
...
The agreement between Boost & JFrog came to an end in December 2024.
Reference: https://github.com/boostorg/boost/issues/924
PR #22125 .
2025-01-11 21:33:51 +08:00
Chocobo1
2e21cf76de
WebUI: temporarily pin dependency
...
The plugin was causing problems in new versions so pin it with an older
version and look into it later.
Upstream issue: https://github.com/JamieMason/eslint-plugin-prefer-arrow-functions/issues/50
PR #22140 .
2025-01-11 16:28:56 +08: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
Hanabishi
68ecb13d14
Change URL seed error message
...
Current URL seed error message assumes that only possible error is DNS lookup failure, which is not true.
So replace it with a more generic message. Real reason is provided by the 'Error:' part.
PR #22119 .
2025-01-10 08:31:28 +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
Chocobo1
4f3d77963f
Add parameter to control whether to unescape HTML entities
...
Some plugin needed the raw data for further processing.
Related: #22074 .
PR #22106 .
2025-01-06 19:05:57 +08:00
Chocobo1
d911928c59
WebUI: Remove unnecessary hashing
...
Now the containers support using string as key so the intermediate hashing/mapping to number
isn't needed now.
PR #22103 .
2025-01-06 18:53:18 +08:00
Chocobo1
22e156e0af
Simplify captured variable type
...
By capturing the specific data instead of torrent handle the lambda can become non-mutable.
PR #22102 .
2025-01-06 18:22:43 +08:00
skomerko
6fe02895a8
WebUI: Remove redundant event listener
...
This PR removes broken event listener attached to RSS Rules table.
PR #22083 .
2024-12-31 21:43:39 +08:00
skomerko
395dbaa5c6
WebUI: Replace getElement with querySelector
...
All `getElement` instances (Mootools) were changed to `querySelector`.
PR #22082 .
2024-12-31 21:31:46 +08:00
Chocobo1
efe06f133d
Revise DHT bootstrap node list
...
Discussion:
https://github.com/qbittorrent/qBittorrent/pull/21296#issuecomment-2562341328
https://github.com/qbittorrent/qBittorrent/pull/21296#issuecomment-2561373010
PR #22081 .
2024-12-31 13:34:08 +08:00
Chocobo1
9c0475ebfa
WebUI: migrate to fetch API
...
This is the final part of it.
PR #22072 .
2024-12-29 15:44:28 +08:00
Chocobo1
e740a42366
Merge pull request #22070 from Chocobo1/py_html_decode
...
Improve Search engine
2024-12-29 14:39:11 +08:00
Chocobo1
cc31a90931
Provide SSL context field
...
The allows the caller to provide proper SSL parameters and avoid dirty monkey patching to
suppress SSL errors.
2024-12-27 03:53:46 +08:00
Chocobo1
90e457a671
Use built-in method for decoding HTML entities
2024-12-27 03:52:50 +08:00
Chocobo1
7487cd7e6d
WebUI: disallow unnecessary quotes in property name
...
Those two forms are the same and from now on we enforce to one style.
PR #22051 .
2024-12-24 22:25:18 +08:00
skomerko
bbc3c2832f
WebUI: Use closest()
to get parent element
...
All `getParent()` instances (Mootools) were changed to use `closest()` method:
https://developer.mozilla.org/en-US/docs/Web/API/Element/closest
PR #22048 .
2024-12-23 23:07:17 +08:00
Chocobo1
879c6bf9ff
Simplify conversion to string
...
PR #22036 .
2024-12-23 22:59:01 +08:00
Chocobo1
f2097dc4b5
Avoid redundant copy
...
PR #22035 .
2024-12-23 22:43:23 +08:00
Hugo Carvalho
166feb5bdf
NSIS: Update Portuguese translation
...
PR #21632 .
2024-12-23 22:37:46 +08:00
Chocobo1
a841fe9320
WebUI: migrate to fetch API
...
And away from mootools.
PR #22037 .
2024-12-22 17:51:19 +08:00
Patrik Elfström
9709672b34
WebUI: Change filter inputs to type search
...
Changing input type from text to search for all search and filter inputs
to enable user to easily clear input.
This feature is yet to be implemented in Firefox.
See tracking bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1654288
Also fix search icon horizontal positioning and minor input box paddings.
Closes #15481 .
PR #22033 .
2024-12-22 17:19:03 +08:00
xavier2k6
e2db0bc866
GHA CI: Update pandoc
to latest
...
* Bumped `pandoc` -> 3.6
PR #22021 .
2024-12-20 18:27:05 +08:00
xavier2k6
fee45e4ba6
GHA CI: Bump some pre-commit hook revs
...
* Bumped `pre-commit-hooks` -> v5.0.0
* Bumped `typos` -> v1.28.4
PR #22020 .
2024-12-20 18:16:43 +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
1c82eb3dff
Merge pull request #21996 from Chocobo1/check_ui
...
Sort grid items properly
2024-12-18 02:19:34 +08:00
sledgehammer999
d96ab6ba84
Bump to v5.1.0beta1
2024-12-16 21:56:08 +02: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
Vladimir Golovnev
eb2eea8d34
Avoid race condition when update tracker entries
...
PR #21995 .
2024-12-15 14:07:36 +03:00
skomerko
14684c8c83
WebUI: Use vanilla JS to create elements
...
All elements are now created using createElement() method:
https://developer.mozilla.org/en-US/docs/Web/API/Document/createElement
PR #21975 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-12-15 03:31:44 +08:00
Chocobo1
c887a6f7d8
GHA CI: add checks for grid items order
...
Now all items under `QGridLayout` are required to be sorted. This allow
us to omit tabstop order. The tabstop order will follow the layout order.
The script can be invoked to fix wrong grid items order in .ui files:
```console
python check_grid_items_order.py file.ui
```
2024-12-14 17:08:18 +08:00
Chocobo1
4c6dd8e68d
Remove wrong conditional in Origin trustworthy check
...
It might block WebUI from logging in under specific network configurations.
Fix up 130c0d8487
.
PR #21972 .
2024-12-13 16:12:29 +08:00
antanilol
27451469fa
Add eXact Length parameter when creating magnet URI
...
Include the `xl` (eXact Length) parameter in the magnet URI string inside the function `TorrentImpl::createMagnetURI()`.
Closes #20752 .
PR #21958 .
2024-12-09 03:29:41 +08:00
Chocobo1
a311c259cc
Use proper data type for elapsed time
...
PR #21963 .
2024-12-08 17:02:20 +08:00
Chocobo1
0ad65ceef6
Remove unused variable
...
PR #21962 .
2024-12-08 16:44:47 +08:00
Chocobo1
cbf7c09bf4
Use built-in method for setting header
...
PR #21961 .
2024-12-08 16:33:35 +08:00
skomerko
3fcc298539
WebUI: Add missing icon to 'Queue' context menu item
...
PR #21948 .
2024-12-08 16:27:14 +08:00
skomerko
7080f85b59
WebUI: Replace Mootools class list manipulation methods
...
All `addClass()`, `removeClass()` and `hasClass()` instances were changed to use `classList` equivalent:
https://developer.mozilla.org/en-US/docs/Web/API/Element/classList
PR #21946 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-12-08 16:12:57 +08:00
Giacomo411
9f0fa4c215
NSIS: Update Italian translation
...
PR #21920 .
2024-12-07 20:44:20 +08:00
Chocobo1
6f31a13f22
Don't follow symlink when creating torrents on Windows
...
Now on Windows, it won't follow/include .lnk files when creating torrents.
Note that libtorrent will throw errors if we force adding .lnk files.
Non-Windows OS will still follow symlinks.
Closes #13286 .
PR #21944 .
2024-12-07 20:43:16 +08:00
Vladimir Golovnev
200f7fc628
Use cached current time when parse RSS feed
...
PR #21959 .
2024-12-07 11:10:53 +03:00
Vladimir Golovnev
a180162405
Avoid redundant requests of announce entries from libtorrent
...
PR #21949 .
2024-12-06 19:59:45 +03:00
Chocobo1
2d1c4fc809
WebUI: use native event listeners for keyboard events
...
PR #21924 .
2024-12-02 13:41:19 +08:00
Chocobo1
e8d8de8f19
WebUI: fix window can not close regression
...
Fix up 1cd3c586c1
.
Fix up e1bd1038c0
.
PR #21919 .
2024-11-29 23:59:58 +08:00
Chocobo1
90aecfea02
WebUI improvements
...
WebUI improvements
2024-11-29 23:52:55 +08:00
skomerko
a85736fd27
WebUI: Set base background color
...
This PR ensures that the same base background color is used across different browsers (more consistent styling).
Context: https://github.com/qbittorrent/qBittorrent/pull/21498#issuecomment-2399929576
Used default Chrome colors: https://github.com/qbittorrent/qBittorrent/issues/21894#issuecomment-2494253459
PR #21914 .
2024-11-29 23:44:53 +08:00
skomerko
dafbcf8709
WebUI: Add colors to 'Status' column in Trackers table
...
PR #21820 .
2024-11-29 23:36:08 +08:00
wavygecko
d11622e3c0
Don't add duplicate episodes to previously matched
...
PR #21917 .
2024-11-28 11:37:05 +03:00
Vladimir Golovnev
d90a9d15ac
Avoid using QDateTime for announce timestamps
...
PR #21906 .
2024-11-27 21:03:54 +03:00
Chocobo1
f8aaea3476
WebUI: locate element faster
2024-11-27 16:17:57 +08:00
Chocobo1
b84a51c76d
WebUI: revise Edit Category dialog button text
...
The generic "OK" is suitable for more scenarios.
2024-11-27 01:22:58 +08:00
Chocobo1
83b0dd3026
WebUI: fix checkbox initialization
...
Previously the checkbox had all options checked regardless of the stored
setting.
2024-11-27 01:12:13 +08:00
Chocobo1
ef5506321a
WebUI: fix invalid style
...
`initial` isn't applicable to `borderLeft`/`borderRight`.
2024-11-27 01:12:13 +08:00
Chocobo1
24d349ffba
WebUI: fix wrong event property
2024-11-27 01:12:13 +08:00
Chocobo1
2109e13746
WebUI: use proper event for handling text changes
2024-11-27 01:12:13 +08:00
Chocobo1
5eec0c0213
WebUI: use idiomatic string methods
2024-11-27 01:12:13 +08:00
Chocobo1
f34787e6ba
WebUI: use correct property for selecting child elements
...
`firstChild` will select the first `Node` which is often not intended (it should be
`Element` instead).
2024-11-27 01:12:12 +08:00
Vladimir Golovnev
15ea836bb9
Avoid repeatedly creating the same QDateTime values
...
PR #21904 .
2024-11-26 09:04:59 +03:00
Chocobo1
72e033db79
WebUI: remove child elements directly
2024-11-26 00:43:58 +08:00
Chocobo1
e1bd1038c0
WebUI: simplify close window implementation
...
The caller site now take the responsibility to ensure the element is valid.
PR #21892 .
2024-11-26 00:40:05 +08:00
Chocobo1
3ebdb50457
Verify hash of Python installer
...
PR #21877 .
2024-11-26 00:29:11 +08:00
Chocobo1
b0fe6e6c59
WebUI: ensure cached info are initialized properly
...
PR #21893 .
2024-11-25 14:04:28 +08:00
Chocobo1
8d847eeb18
WebUI: clean up fetch API usage
...
The `Content-type` header isn't required since `URLSearchParams` is present.
The `method` property is preferred to be always specified for clarity.
The `cache: "no-store"` is preferred for most GET requests to avoid caching.
PR #21891 .
2024-11-25 13:49:35 +08:00
Chris B
f022ce8f84
WebAPI: Add forced
parameter to torrents/add
...
Adds the parameter `addForced` to the `/api/v2/torrents/add` API call. Defaults to false if not provided.
PR #21864 .
2024-11-23 16:19:19 +08:00
Thomas Piccirello
78a5e4ff3e
WebUI: Display error when download fails
...
Previously we would still download the file but it would contain the error response, resulting in an invalid file.
To test: export a .torrent file for a torrent that hasn't yet downloaded metadata
PR #21696 .
Signed-off-by: Thomas Piccirello <thomas@piccirello.com >
2024-11-23 16:03:43 +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
skomerko
7300b9f759
WebUI: Eliminate unnecessary Status filter list updates
...
Only update the Status filter list when torrents are removed, added or their state changed.
PR #21866 .
2024-11-22 20:59:23 +08:00
Bartu Özen
6ce2869108
WebAPI: Fix incorrect key in torrent creator
...
PR #21879 .
2024-11-21 13:59:20 +03:00
Vladimir Golovnev
0eba285ff1
Fix incorrect SQL column definition
...
PR #21874 .
2024-11-21 13:57:37 +03:00
Vladimir Golovnev
88161a6467
Discard obsolete "state update" events after torrent is reloaded
...
PR #21873 .
Closes #21827 .
2024-11-21 13:56:22 +03: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
Chocobo1
6578fd06fd
WebUI: fix failed conversion to number
...
The value has unit suffix (`px`) and require using `parseInt()` for conversion.
Fix up f73f31619d
.
PR #21862 .
2024-11-19 03:12:50 +08:00
Chocobo1
6ddde3f4b6
Avoid redundant string length function calls
...
Also switch to `std::string_view` as it is more generic and can handle more types (including
view types).
PR #21861 .
2024-11-19 02:53:16 +08:00
Patrik Elfström
530631322d
WebUI: Fix bug where you can't select RSS rules
...
Fixes bug caused by #21731 .
PR #21857 .
2024-11-19 02:40:22 +08:00
Mahdi Hosseinzadeh
928de36093
Improve the speed icons in the status bar
...
The speed icons in the status bar look weird. Whenever I look at them, there seems to be something off with them. The circle seems to have been stretched. Also, the gap between the needle and the circle is not big enough to be clearly visible (at least on my display).
PR #21853 .
2024-11-19 02:29:17 +08:00
Evgenii Ryshkov
1e851b3637
WebUI: Fix reloading page after login
...
PR #21832 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-11-19 02:20:04 +08:00
skomerko
c9c85eeb95
WebUI: Use event delegation to handle common table events
...
Event delegation is now used to handle basic table events.
2 minor fixes were added to match GUI behavior:
* Clicking on the table body deselects everything
* Table rows are now scrolled into view when using up/down arrows
PR #21829 .
2024-11-19 02:12:26 +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
skomerko
e51fcc6ea0
WebUI: Show 'Rename...' context menu item only when one torrent is selected
...
'Rename...' item in torrents table menu is displayed only when exactly one torrent is selected.
PR #21843 .
2024-11-17 15:31:30 +08:00
Chocobo1
f4eec75488
Don't apply Mark-of-the-Web on existing files
...
`TorrentImpl::isDownloading()` was excessively broad which included unexpected events for the
case here. So use the underlying state directly.
Closes #21788 .
PR #21836 .
2024-11-16 15:57:55 +08:00
Chocobo1
f73f31619d
WebUI: use native function to convert to numbers
...
Also replace `parseInt()` since `Number()` behavior is more intuitive.
PR #21831 .
2024-11-16 15:41:20 +08:00
Chocobo1
ede08f3845
WebUI: fetch cached info early
...
The cached info doesn't need to wait until the DOM is loaded. They can be fetched far earlier.
PR #21830 .
2024-11-16 15:34:35 +08:00
Patrik Elfström
c9a55fce95
WebUI: Fix wrong log levels
...
Fixes bug where the first time visiting Execution Log view all log levels are deselected but log items with all levels are still displayed.
This requires you to select a log level and then deselect it to hide that log level.
PR #21812 .
2024-11-16 15:22:26 +08:00
Thomas Piccirello
1cd3c586c1
WebUI: Always close one window
...
Closing all windows is overly broad and never the intention.
PR #21804 .
2024-11-16 15:12:35 +08:00
Chocobo1
0f12d077c8
Avoid reapplying Mark-of-the-Web when it already exists
...
Also use scope guards to handle resources.
Related #21788 .
PR #21806 .
2024-11-14 15:06:33 +08:00
Chocobo1
92daca1fef
Avoid redundant string length scan
...
PR #21807 .
2024-11-11 19:19:10 +08:00
skomerko
889df72ab3
WebUI: Use thin scrollbars
...
Thin scrollbars are now used if they are supported by user's browser. The main goal was to make them less intrusive in Chrome-likes on some platforms.
PR #21763 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-11-11 19:05:42 +08:00
Hanabishi
631e873ff2
WebUI: fix preferences class name
...
Fixup for #21780 . Account for changed preferences class name in the color scheme logic.
PR #21809 .
2024-11-11 18:53:06 +08:00
Vladimir Golovnev
69f19d4a0b
Preserve initial torrent progress while checking resume data
...
PR #21784 .
2024-11-10 12:01:12 +03:00
skomerko
3ec645674a
WebUI: Use modern class syntax to create LocalPreferences class
...
LocalPreferences class is now created using modern class syntax (minimal changes to remove Mootools bits). In addition, I removed redundant suffix from class name.
PR #21780 .
2024-11-09 16:40:25 +08:00
skomerko
71f83cf9ba
WebUI: Display torrent progress percentage in General tab
...
This PR adds torrent progress percentage next to pieces bar in General tab, as in the GUI.
PR #21756 .
2024-11-09 16:03:20 +08:00
Hanabishi
06fe3e5fb0
WebUI: fix color scheme for iframes
...
Applies the color scheme for iframe dialogs.
Fixup for #21613 .
PR #21750 .
2024-11-09 16:02:28 +08:00
3gf8jv4dv
fe153f8919
NSIS: Update Traditional Chinese translation
...
PR #21694 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-11-09 16:01:02 +08:00
3gf8jv4dv
568de90923
NSIS: Update Simplified Chinese translation
...
PR #21693 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-11-09 16:00:31 +08: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
Chocobo1
fb9b3c0f34
WebUI: use Fetch API to login
...
Fetch API is the modern replacement for XMLHttpRequest.
Also show more detailed error messages.
Closes #21739 .
PR #21744 .
2024-11-09 14:08:03 +08:00
Vladimir Golovnev
33e3fb2f46
Correctly handle "torrent finished" events
...
PR #21786 .
Closes #21699 .
2024-11-08 11:45:57 +03: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
Vladimir Golovnev
a6c7aef6c1
Optimize checking for outdated tracker endpoints
...
PR #21768 .
2024-11-07 09:40:33 +03:00
Vladimir Golovnev
4527536858
Optimize converting TCP endpoints to strings
...
There may be quite a few endpoint names (one for each available network card), and they usually remain unchanged throughout the session, while previously producing such names was performed every time they were accessed. Now they are retrieved from the cache.
PR #21770 .
2024-11-07 09:39:33 +03:00
Chocobo1
3da9444688
Reduce dependency on Main Window
...
PR #21753 .
2024-11-06 13:45:14 +08:00
Vladimir Golovnev
75d1ac8889
Optimize conversion of time points from libtorrent to Qt clocks
...
Obtain current date time of Qt and libtorrent clocks only once
for processing entire current libtorrent alerts bunch.
PR #21764 .
2024-11-05 16:43:43 +03: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
b462a2bf0c
Reset tracker entries when pause the session
...
PR #21738 .
2024-11-04 16:27:21 +03:00
Patrik Elfström
c02f80cec5
WebUI: Hide context menu when clicking on a table row
...
This fixes a bug where the torrents table header menu
could not be closed by clicking on a table row.
This also fixes the same bug for other context menus.
PR #21731 .
2024-11-04 19:09:51 +08:00
Patrik Elfström
3bb1e34233
WebUI: Add tooltip to regex filter button
...
Add a tooltip to indicate the button's function.
And change the cursor to a pointer since label is used as a button.
PR #21695 .
2024-11-03 15:35:28 +08:00
Thomas Piccirello
dc30b9c2ec
WebUI: Improve table overflow handling
...
This PR relies on flexbox to ensure all WebUI tables are the correct height without overflowing. Table headers are now always visible and JS-based dynamic resizing is no longer needed.
PR #21652 .
2024-11-03 15:11:30 +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
Jack Moran
1a7ebfc8f0
Create SECURITY.md
...
* Create SECURITY.md
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
PR #21589
2024-11-02 22:03:38 +02:00
sledgehammer999
0771970627
Merge pull request #21613 from sledgehammer999/webui_color_switcher
...
WebUI: Add color scheme switcher
2024-11-02 16:30:01 +02: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
sledgehammer999
13e3192444
Reorder code to match UI
2024-11-02 13:11:05 +02:00
sledgehammer999
3aefc16c57
Webui: Add color scheme switcher
...
Closes #21600
2024-11-02 13:11:05 +02:00
sledgehammer999
7b0b3a1522
Merge pull request #21722 from sledgehammer999/changelog_upkeep
...
Changelog upkeep
2024-11-01 21:48:12 +02:00
Thomas Piccirello
8991d994c2
WebUI: Eliminate unnecessary torrents table updates
...
Only update the torrents table when torrents are added, edited, or removed.
PR #21656 .
2024-11-01 04:34:17 +08:00
Chocobo1
72cbc83569
WebUI: prefer arrow functions whenever applicable
...
Compared to plain function, arrow function is simpler to understand (without bindings to `this`, `arguments`, `super`) and to read.
Now, plain function will only be used when this object is required.
PR #21691 .
2024-11-01 04:17:41 +08:00
Chocobo1
7af6ac18aa
Merge pull request #21658 from Chocobo1/ssl_setup
...
Simplify SSL parameters setup
2024-11-01 04:03:51 +08:00
sledgehammer999
41236d8e58
Consolidate all the Changelog entries into master
2024-10-30 22:50:46 +02:00
sledgehammer999
03dfd983d0
Add new version in Changelog
...
Closes #21718
2024-10-30 22:50:26 +02:00
Vladimir Golovnev
84d895231c
Correctly delete the moved search tab
...
PR #21687 .
Closes #21675 .
2024-10-28 09:41:09 +03:00
Vladimir Golovnev
91b2687032
WebAPI: Prevent producing empty sync data
...
PR #21688 .
2024-10-28 09:40:13 +03:00
Thomas Piccirello
be3eefd8de
WebUI: Fix displaying RSS panel on load
...
The required JS may not yet be loaded, resulting in an error when calling `window.qBittorrent.Rss.init()`.
Signed-off-by: Thomas Piccirello <thomas@piccirello.com >
PR #21689 .
2024-10-28 14:06:52 +08:00
Thomas Piccirello
e0e61ffd02
WebUI: Support auto resizing table columns
...
Auto resize can be triggered by:
1. Double clicking the column's resize handle (its rightmost edge)
2. The table header's context menu
Closes #21627 .
PR #21655 .
2024-10-28 13:59:13 +08:00
Thomas Piccirello
c3c91be578
WebUI: Clear properties panel when torrent no longer selected
...
PR #21654 .
2024-10-28 13:53:24 +08:00
xavier2k6
e0431e3ffb
Update python installer version for Windows
...
PR #21643 .
2024-10-27 15:05:05 +08:00
skomerko
67b6cf5a6f
WebUI: Don't sort rows with static trackers in Trackers table
...
Static trackers come before anything else so in this PR I made sure they are not moved when sorting Trackers table columns.
PR #21609 .
2024-10-27 14:54:33 +08:00
Thomas Piccirello
e8dc6b3f73
WebUI: Show file filter when Content tab selected on load
...
This fixes a bug where the file filter is only shown when the Content tab is switched to. The filter is not being shown if the Content tab is already selected on page load (due to being previously selected).
PR #21657 .
2024-10-26 03:28:01 +08:00
Hanabishi
dfe9daf25d
WebUI: restore arrow keys table navigation
...
Fixup for #21007 and #21147 . Table navigation with arrows (#15186 ) has been broken by that changes.
See https://github.com/qbittorrent/qBittorrent/pull/21007#discussion_r1807326166 and https://github.com/qbittorrent/qBittorrent/pull/21147#discussion_r1807361385 for details.
This PR restores the functionally.
PR #21640 .
2024-10-26 03:14:36 +08:00
Tyler True
ca933c60a1
Update GPLv2 license to reflect latest version
...
The license text and terms do not change, but the document has been
updated, to reflect the FSF's current contact points, and to change
the example name, under the "How to apply..." part, to "Moe Ghoul".
This reflects the FSF's own change, in the www.gnu.org CVS repo, at
https://web.cvs.savannah.gnu.org/viewvc/www/www/licenses/old-licenses/gpl-2.0.txt?annotate=1.5
Related #7749 .
PR #21626 .
2024-10-26 03:04:02 +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
Chocobo1
e91412ec8b
Use default secure protocol list from Qt
...
In Qt 6.5, `QSsl::SecureProtocols` is the same as `QSsl::TlsV1_2OrLater`. And by using
`QSsl::SecureProtocols` we won't need to worry it being outdated since Qt will regularly adjust
it.
https://github.com/qt/qtbase/blob/v6.5.0/src/plugins/tls/openssl/qsslcontext_openssl.cpp#L425-L429
2024-10-22 00:27:01 +08:00
Chocobo1
337730ddef
Simplify SSL parameters setup
...
Simplify code by utilizing QSslConfiguration object.
Also don't mess with global default value via `QSslConfiguration::setDefaultConfiguration`. It
should not be done at such local class.
2024-10-21 16:22:45 +08:00
Vladimir Golovnev
3ab9fe55e5
Improve color scheme change detection
...
* Fix pieces bars won't correctly detect color scheme change with Qt 6.8.
* Update RSS article content view on color scheme changed.
PR #21625 .
Closes #21327 .
2024-10-21 09:50:53 +03:00
dyseg
ab8d0d1dae
Free resources allocated by web session once it is destructed
...
PR #21618 .
Closes #20873 .
2024-10-21 09:23:08 +03:00
Chocobo1
25dbea1388
WebUI: fix 'rename files' dialog cannot be opened more than once
...
Added an IIFE around the whole script to suppress variable redeclaration errors.
Closes #21614 .
PR #21620 .
2024-10-20 16:01:57 +08:00
Vladimir Golovnev
a47e1cdb48
Allow to choose color scheme on Windows
...
PR #21615 .
2024-10-19 13:37:51 +03:00
Vladimir Golovnev
4805afc1a2
Correctly apply filename filter when !qB extension is enabled
...
PR #21628 .
Closes #21624 .
2024-10-19 13:36:03 +03:00
skomerko
5a0914e333
WebUI: Use modern class syntax in context menu classes
...
Context menu classes are now created using vanilla JS syntax (minimal changes to reduce MooTools bits).
PR #21598 .
2024-10-19 16:32:20 +08:00
skomerko
7031c52d16
WebUI: Improve sort order in Status column
...
This commit adds custom compare function to Status column (same sort order as in the GUI).
Closes #15499 .
PR #21570 .
2024-10-19 16:25:30 +08:00
Vladimir Golovnev
8e941a06f1
Correctly handle "torrent finished after move" event
...
PR #21596 .
Closes #21576 .
2024-10-14 11:51:30 +03:00
Vladimir Golovnev
966387859a
Always notify user about duplicate torrent
...
PR #21480 .
Closes #21475 .
2024-10-14 11:50:20 +03:00
Chocobo1
fb40275507
Don't change combobox index after selection
...
Also keep the list sorted.
PR #21599 .
2024-10-14 14:39:54 +08:00
sledgehammer999
3d9e9715b4
Merge pull request #21364 from sledgehammer999/dont_ignore_ssl_errors
...
Don't ignore SSL errors
2024-10-12 10:37:48 +03:00
Chocobo1
21b0367629
Avoid heavy weight function object
...
Also, by switching to template we can avoid the cost of converting to some specific type and
perfectly forward the parameter to the final function.
PR #21572 .
2024-10-12 15:15:39 +08:00
Chocobo1
ac646f47a2
Avoid shadowing function parameter
...
The function already has a parameter named `result`.
Also remove a duplicate variable since it already has a pref pointer at the start of the function.
PR #21571 .
2024-10-12 15:04:47 +08:00
Chocobo1
c4eeb4a14a
Add drag support to torrent content widget
...
Now qbt supports dragging items from torrent content widget to another app.
Closes #5860 .
PR #21569 .
2024-10-12 14:49:17 +08:00
algebnaly
6418033cc8
Add support for Thunar file manager
...
PR #21531 .
Co-authored-by: yalikes <algebnaly@qq.com >
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-10-12 14:41:05 +08:00
skomerko
cbcb46bcfb
WebUI: Setup copy events only once
...
It is enough to set them up just once during initial load. Number of elements with copyToClipboard class is fixed - they are context menu items.
PR #21558 .
2024-10-12 14:29:54 +08:00
skomerko
0704049026
WebUI: Apply box-sizing reset
...
Box-sizing: border-box is now applied globally. A lot of tiny changes were made but they were necessary to correct resulting inconsistencies. Everything should be pretty much as it was with just some minor exceptions.
Looks like this PR also indirectly fixed #21414 .
PR #21464 .
2024-10-12 14:22:07 +08:00
skomerko
81509dfb65
WebUI: Improve filter lists
...
This PR adds following improvements:
* Remove unused tracker entries while processing sync data
* Take into account filter selection & terms when performing 'Start/stop/delete' context actions in filter lists
Now, only filtered torrents will be affected by them, just like in the GUI.
* Provide better feedback when performing 'Start/stop/delete' context actions in filter lists
Small improvement over GUI - now these actions will be disabled if it's not possible to use them.
* Add context menu to status filter list
* Fix error when toggling filter title
Fixup for small bug introduced in https://github.com/qbittorrent/qBittorrent/pull/21269
PR #21438 .
2024-10-12 13:40:18 +08:00
Thomas Piccirello
b1fd61af3a
WebUI: Handle folders when updating RSS feed url
...
Follow up to #21371 ([context](https://github.com/qbittorrent/qBittorrent/pull/21371#discussion_r1780908605 )).
PR #21437 .
2024-10-12 13:30:24 +08:00
Vladimir Golovnev
2d185dc1c7
Allow to choose Qt style
...
PR #21553 .
2024-10-11 16:04:57 +03:00
Vladimir Golovnev
2d857b6200
Disable "Move to trash" option by default
...
PR #21528 .
2024-10-10 14:13:40 +03:00
Chocobo1
871438f557
Bump search engine components version
...
The master branch should have version larger than stable branch.
https://github.com/qbittorrent/qBittorrent/pull/21539/files#r1790078486
PR #21542 .
2024-10-10 16:30:45 +08:00
skomerko
87644441ad
WebUI: Add context menu to search tabs
...
PR #21516 .
2024-10-07 22:04:29 +08:00
thalieht
d73201c098
Fix the tab order in dialogs
...
* Torrent options
* Torrent creator
* Preferences
Closes #21387 .
PR #21395 .
2024-10-07 21:51:56 +08:00
stalkerok
3ea2be41e7
Disable the ability to create torrents with a piece size of 256MiB
...
Disabling will reduce the number of users experiencing this issue.
https://github.com/qbittorrent/qBittorrent/issues/21011
PR #21295 .
2024-10-07 21:40:02 +08:00
Chocobo1
6bbedbea8a
WebUI: remove unused variable
...
PR #21500 .
2024-10-06 16:54:42 +08:00
xavier2k6
56a0692b68
GHA CI: Update pre-commit-config workflow
...
* Bumped numerous revisions
* Removed obsolete exclusions (files/folders were removed previously)
* Implement fix/workaround for "false positives" (typos/codespell)
PR #21460 .
2024-10-06 16:49:30 +08:00
xavier2k6
dfa4eebbce
GHA CI: Bump pandoc to latest version
...
PR #21458 .
2024-10-06 16:41:38 +08:00
Chocobo1
6ed662c68b
CI: turn on assertion checks
...
This turn on assertions from qbt codebase so that testers can verify the assertions really hold.
PR #21499 .
2024-10-06 16:13:14 +08:00
Ikko Eltociear Ashimine
f81d8a85e9
NSIS: update luxembourgish
...
PR #21456 .
2024-10-06 15:43:43 +08:00
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
Vladimir Golovnev
3fb5d7764c
Don't try to apply Mark-of-the-Web to nonexistent files
...
Trying to apply it to a nonexistent file is unacceptable, as it may unexpectedly create such a file.
PR #21488 .
Closes #21440 .
2024-10-05 12:27:03 +03:00
stalkerok
e75bcbed6d
Remove non-working DHT bootstrap nodes
...
router.utorrent.com has been dead for a long time. router.bittorrent.com died about a month or two ago. dht.aelitis.com doesn't work either. It is no longer possible to get DHT nodes from them.
Added router.silotis.us. Only ipv6!
PR #21296 .
2024-10-05 16:45:29 +08:00
thalieht
7f38216d22
Regenerate .ui files
...
PR #21411 .
2024-10-05 16:42:03 +08:00
sledgehammer999
e309148147
Reorder code to match UI
2024-10-04 22:48:46 +03:00
sledgehammer999
6981217369
Don't ignore SSL errors
2024-10-04 22:48:46 +03:00
skomerko
4ff0687b94
WebUI: Add confirm dialog for Auto TMM
...
Just like in GUI, confirmation dialog shows up if it's possible to enable Auto TMM for any selected torrent. Right now it's not possible to properly test all cases in the WebUI because context menu completely hides TMM option when some torrents have it enabled and some not (no tri-state) - but that's something to add in another PR.
PR #21378 .
2024-10-04 22:39:08 +08:00
Chocobo1
dc02a0fc56
WebUI: remove unused variables
...
PR #21432 .
2024-10-04 22:23:04 +08:00
Vladimir Golovnev
c48d2c1dde
WebUI: Fix incorrect row ID
...
Incorrect row ID prevented the "Torrent content removing mode" option from being displayed on some platforms.
PR #21481 .
2024-10-04 14:06:51 +03:00
Hanabishi
b5b34c9ff4
Add "Simple pread/pwrite" disk IO type
...
PR #21300 .
2024-10-01 19:58:35 +03:00
Chocobo1
7b45566efc
Migrate away from deprecated functions in Qt 6.9
...
Closes #21412 .
PR #21415 .
2024-09-30 18:31:17 +08:00
xavier2k6
c30a07702d
Replace QVector with QList
...
Migrated last remnants of QVector to Qlist, reference https://github.com/qbittorrent/qBittorrent/pull/21016#issuecomment-2212403741 onward.
PR #21407 .
2024-09-30 18:20:58 +08:00
skomerko
d8e24314ec
WebUI: Improve lookup performance when filtering by tracker
...
Torrent hashes in tracker list are now kept in sets instead of arrays.
PR #21405 .
2024-09-30 18:13:45 +08:00
skomerko
449ca96e28
WebUI: Add 'Engine' column to Search table
...
This PR adds 'Engine' column to Search table.
I also fixed inconsistent naming and renamed 'Search engine' column to 'Engine URL'.
PR #21397 .
2024-09-30 18:05:17 +08:00
Chocobo1
cebaedf485
WebUI: CSS/styling improvements
...
WebUI: CSS/styling improvements
2024-09-30 17:57:42 +08:00
Chocobo1
fd311fd5ff
Reduce sensitive data instances
...
There is no reason for `WebUI` class to retain this information.
PR #21373 .
2024-09-30 17:45:28 +08:00
Thomas Piccirello
50acb670b0
WebUI: Support updating RSS feed URL
...
PR #21371 .
Signed-off-by: Thomas Piccirello <thomas@piccirello.com >
2024-09-30 17:34:37 +08:00
xavier2k6
3888b465d8
Revise bug_report
template
...
PR #21343 .
2024-09-30 17:24:57 +08:00
Thomas Piccirello
6bbb7b71cd
Add WebAPI/WebUI for managing cookies
...
Closes #21125 .
PR #21340 .
2024-09-30 17:13:25 +08:00
Chocobo1
10eb921d70
Allow drop action only on transfer list
...
Now drop action is only allowed on transfer list, previously it was on main window.
Having drop action on the whole main window is not preferred because it could allow drop action
on other unrelated widgets, such as execution log or RSS widget which is unexpected behavior.
PR #21332 .
2024-09-30 16:59:57 +08:00
skomerko
5e3161a3f9
WebUI: Improve statistics window
2024-09-28 17:49:52 +02:00
skomerko
4cc3fedf37
WebUI: Reduce padding in torrents table
2024-09-28 17:49:52 +02:00
skomerko
2952480f37
WebUI: Use correct text and background colors in RSS details view
2024-09-28 17:49:52 +02:00
skomerko
6bfabad92f
WebUI: Prevent text selection within tabs, menu items
2024-09-28 17:49:52 +02:00
skomerko
0e03e4f8a7
WebUI: Add colors to log table rows
2024-09-28 13:33:14 +02:00
skomerko
10149de205
WebUI: Define global CSS variables in root selector
2024-09-28 13:33:14 +02:00
skomerko
960edd95cc
WebUI: Remove redundant imports
2024-09-28 13:33:14 +02:00
skomerko
8b2d8f3afd
WebUI: Use Map instead of Mootools Hash in all dynamic tables
...
PR #21358 .
2024-09-28 15:46:16 +08:00
Thomas Piccirello
81def39d8c
WebUI: Support managing web seeds
...
Closes #8475 .
PR #21055 .
2024-09-28 15:37:36 +08:00
Chocobo1
a23f45cc70
Split platform specific code to its own file
...
PR #21368 .
2024-09-22 14:28:40 +08:00
Thomas Piccirello
8a6207d3fc
WebUI: Fix removing tracker URL with '|' character
...
Closes #19074 .
PR #21346 .
2024-09-22 14:22:52 +08:00
skomerko
c3224459db
WebUI: Add 'Confirm torrent recheck' option
...
This PR adds setting & confirmation dialog for torrent recheck.
Closes #19557 .
PR #21348 .
2024-09-22 14:12:44 +08:00
skomerko
183c7c75b1
WebUI: Display DHT information in the Status bar only when DHT is enabled
...
GUI completely hides DHT information when DHT is disabled - now WebUI does the same thing.
Closes #18417 .
PR #21339 .
2024-09-22 14:06:25 +08:00
sledgehammer999
1c43286616
Make Program Updater choose the same build for download
...
We're probably stuck offering the duo of RC_1_2 and RC_2_0 for some
time in the future. So hardcode the choices and make the Program Updater
choose the variant the user currently uses.
2024-09-16 22:26:57 +03:00
Chocobo1
4555a46e5d
Remove unused function
...
PR #21334 .
2024-09-16 18:10:13 +08:00
Chocobo1
23f7275bd5
Merge pull request #21333 from Chocobo1/random
...
Improve PRNG functions
2024-09-16 17:56:19 +08:00
Thomas Piccirello
d2b2afad23
Support removing tracker from all torrents in WebUI/WebAPI
...
Closes #20661 .
PR #21056 .
2024-09-16 17:47:10 +08:00
skomerko
d19f7b12d9
WebUI: Improve hash copy actions in context menu
...
This PR provides better feedback for hash context menu actions and now it is clearly shown if there is anything to copy.
PR #21321 .
2024-09-16 17:41:14 +08:00
skomerko
6df1f68ead
WebUI: Use Map instead of Mootools Hash in Torrents table
...
PR #21308 .
2024-09-16 17:34:49 +08:00
Burnerelu
e06b7f8f4d
Enable customizing the save statistics time interval
...
This change extends the Advanced section of the Preferences menu with a new field, allowing changing the time statistics save interval. A zero value will prevent recurrent saving.
This aims to provide the feature requested in issue #21285 .
PR #21291 .
2024-09-16 17:16:59 +08:00
Chocobo1
3058158b69
Use modern function for getting random numbers on Windows
...
The previous `RtlGenRandom()` just redirects to `ProcessPrng()` according to "The Windows 10
random number generation infrastructure" whitepaper from MS.
`ProcessPrng()` is also the de facto PRNG for Rust lang:
aa13fa5882/src/windows.rs (L3C1-L22C81)
And for golang:
https://go-review.googlesource.com/c/go/+/536235
2024-09-14 23:20:07 +08:00
skomerko
0ea35c54a3
WebUI: Improve torrent deletion
...
* Added 'Confirm when deleting torrents' option to the WebUI
* Confirm deletion dialog now uses MUI.Modal
PR #21289 .
Closes #18345 .
2024-09-13 22:28:02 +08:00
Chocobo1
dbef6da544
Use modern function for getting random numbers on Linux
...
Now we don't need a file handle anymore and there is no initialization involved in this new
implementation.
2024-09-13 22:27:42 +08:00
Chocobo1
a0c32110f1
Add URL link for reverse proxy setup examples
...
The link is helpful for users whom needs to setup reverse proxy.
PR #21305 .
2024-09-13 22:18:31 +08:00
skomerko
435385816a
WebUI: Provide 'Merge trackers to existing torrent' option
...
PR #21302 .
2024-09-10 11:12:30 +03:00
skomerko
1b53fdf9ee
WebUI: Improve subcategories
...
Now they should fully match GUI behavior, please let me know if I missed something.
Still plenty of room to improve them further (e.g styling/CSS) but for now I wanted to keep the changes to the minimum.
Also included small tweaks to category context menu actions.
PR #21269 .
2024-09-08 15:21:11 +08:00
Andarwinux
f00c5c9fa3
Opt into Windows SegmentHeap
...
SegmentHeap provides a faster malloc implementation that only available with Dynamic UCRT in Windows 10, version 2004 (build 19041) and later.
PR #21263 .
2024-09-08 15:09:34 +08:00
Chocobo1
130c0d8487
Revise cookie 'secure flag' enable condition
...
The localhost is 'potentially trustworthy' and RFC 6265 allows setting secure flag in this case.
Also check `X-Forwarded-Proto` header value to support reverse proxy usage.
Note: for reverse proxy users, now the `X-Forwarded-Proto` header is expected to be sent to qbt
otherwise the `secure` flag might be set erroneously.
https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.2.5
https://w3c.github.io/webappsec-secure-contexts/#is-origin-trustworthy
Closes #21250 .
PR #21260 .
2024-09-07 21:38:27 +08:00
Vladimir Golovnev
d9bc7935eb
Apply "merge trackers" logic regardless of way the torrent is added
...
PR #21299 .
2024-09-06 16:28:22 +03:00
Chocobo1
944499814b
Revert "Use client side translation for public login page"
...
This reverts #20520 .
PR #21290 .
2024-09-06 15:38:31 +08:00
Chocobo1
0e63b83aed
WebUI: do not follow anchor URL
...
Fix up 5afeecbf18
.
PR #21283 .
2024-09-06 15:31:26 +08:00
skomerko
f681e954c7
WebUI: Show country/region name next to its flag when 'Resolve peer countries' is enabled
...
PR #21278 .
2024-09-06 15:23:11 +08:00
Prince Gupta
a7f7c5fb73
Fix highlighted piece color
...
PR #20971 .
2024-09-02 08:11:35 +03:00
skomerko
9d0fa213be
WebUI: Allow to display only hostname in the Tracker column
...
It is now possible to display only hostname in the Tracker column.
Closes #11357 .
PR #21243 .
2024-09-01 16:34:49 +08:00
Chocobo1
fc82abe7f6
Remove 'loopback address detection' helper function
...
It is not needed since `QHostAddress::isLoopback()` can do the job.
PR #21259 .
2024-08-31 15:53:39 +08:00
sledgehammer999
72feee6fdd
Fix version bump
...
Closes #21265
2024-08-26 09:46:27 +03:00
skomerko
58eab8d453
WebUI: Don't apply hover/selection styles to flag, highlighted category icons
...
Related: https://github.com/qbittorrent/qBittorrent/pull/21162#discussion_r1721799836
Fix up: #21162 .
PR #21236 .
2024-08-25 15:29:05 +08:00
skomerko
7ab4758279
WebUI: Provide 'Use Category paths in Manual Mode' option
...
This PR adds 'Use Category paths in Manual Mode' option to WebUI.
PR #21223 .
2024-08-25 14:51:59 +08:00
xavier2k6
e6cd9b90d2
Sync flag icons with upstream
...
* Release: 7.2.3
* Contains bug fixes & additional flags
PR #21220 .
2024-08-25 14:46:15 +08:00
skomerko
5b7c9d5725
WebUI: Filter list improvements
...
A couple of tweaks to make them a little bit better:
1. Make highlighting functions more consistent (this also fixes minuscule bug when no filter item in tracker list is highlighted due to a type mismatch)
2. Use [event delegation](https://javascript.info/event-delegation ) to handle filter toggling & item selection
3. Other minor improvements (everything should work like it was previously)
PR #21191 .
2024-08-25 14:23:35 +08:00
skomerko
39dd415d43
WebUI: Improve torrent deletion dialog
...
This PR improves torrent deletion dialog.
1. Now shows different message depending on the number of selected torrents
2. Visually pretty much inline with the GUI
3. Adjusts to content on load
4. Now uses XHR load method. Panels / windows loaded using this method become part of the current document so there is no need to import styles or scripts (they should load marginally faster now).
PR #21185 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-08-25 14:11:36 +08:00
sledgehammer999
9a9c375b9d
Bump to v5.1.0alpha1
2024-08-24 21:49:49 +03:00
skomerko
fda797cb76
WebUI: Improve properties panel
...
It is now possible to expand & collapse it by clicking directly on tabs, just like in GUI.
In addition, collapse state is saved and applied on page load.
Fixed one minor bug and now files search input is properly hidden even when panel is collapsed.
PR #21209 .
2024-08-24 14:09:10 +08:00
Chocobo1
a91bac8aa0
Add link to 'List of alternative WebUI' wiki page in Options
...
PR #21224 .
2024-08-23 02:27:24 +08:00
Vladimir Golovnev
0904f4a89b
Refresh search results colors once color scheme is changed
...
* Refresh search results colors once color scheme is changed
* Improve color of visited search result items
PR #21189 .
Closes #21187 .
2024-08-21 15:08:14 +03:00
Chocobo1
9c370bf391
Merge pull request #21215 from Chocobo1/webui_event_param
...
WebUI: improve event handlers
2024-08-19 16:11:38 +08:00
xavier2k6
f09d43d073
GHA CI: Bump boost dependency
...
PR #21214 .
2024-08-19 15:59:09 +08:00
xavier2k6
f818d0dbe0
Sync "expected lite" with upstream
...
* Release 0.8.0
PR #21213 .
2024-08-19 15:32:01 +08:00
Chocobo1
98623b2cf7
WebUI: use passive event handlers
...
These kind of event handlers can be asynchronously dispatched, freeing up the main thread for
lag-free operation.
2024-08-17 14:03:51 +08:00
Chocobo1
29379232aa
WebUI: implement debounce behavior for resize events
2024-08-17 14:02:15 +08:00
Chocobo1
0c580c3174
WebUI: remove redundant events
...
The base class already handle them.
Also optimize the base implementation a bit.
2024-08-17 14:02:15 +08:00
Chocobo1
1179fc3de3
WebUI: prevent passing wrong parameter
...
The `event` object will be passed as the first parameter to the event handler. So wrap the
event handler with a closure to prevent `event` leaking to other functions.
2024-08-17 14:02:13 +08:00
skomerko
e069fbc37f
WebUI: Add missing icons
...
This adds missing icons to WebUI (in tabs, buttons, etc.).
PR #21162 .
2024-08-17 13:38:44 +08:00
ducalex
efdc4af448
Search helpers: Add POST support to retrieve_url
...
This allows passing request_data to retrieve_url in order to create a post request.
PR #21184 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-08-17 13:32:57 +08:00
Russell Martin
0535993e41
Bump WebAPI version
...
Accounts for the addition of webseed modification endpoints.
PR #21205 .
2024-08-16 07:19:53 +03:00
skomerko
f5aa0bb126
WebUI: Always create generic filter items
...
PR #21188 .
2024-08-15 20:36:38 +03:00
stalkerok
0da383e7b6
Add a flag about the connection peers are using NAT hole punching
...
PR #21052 .
2024-08-15 20:27:19 +03:00
Vladimir Golovnev
c5b7c82344
Refresh pieces bar colors once color scheme is changed
...
PR #21183 .
Closes #21155 .
2024-08-13 09:11:21 +03:00
Chocobo1
b1d2b9d02b
WebUI: fix wrong property for keyboard keys
...
Fix up 2d9e3b3330
.
PR #21182 .
2024-08-12 15:14:17 +08:00
Chocobo1
d9667b5221
Merge pull request #21179 from Chocobo1/webui_style
...
WebUI: use native property to set styles
2024-08-12 15:08:26 +08:00
Chocobo1
155fe96bdd
Revise quote escaping for translated strings in WebUI
...
qbt only need to escape double quotes for the sake of HTML attributes. As for single quotes it
can leave them as-is since WebUI enforce using double quotes for strings.
PR #21180 .
2024-08-12 14:59:30 +08:00
HamletDuFromage
9a8572bd21
WebUI: Handle regex syntax error for torrent filtering
...
https://github.com/qbittorrent/qBittorrent/pull/20566#discussion_r1704548226
PR #21173 .
2024-08-12 14:54:37 +08:00
skomerko
04eb40376e
WebUI: Allow to filter torrent list by save path
...
This PR adds ability to filter torrent list by save path. Everything should work exactly like in GUI.
Closes #19393 .
PR #21175 .
2024-08-11 16:08:13 +08:00
Thomas Piccirello
ea06eb9fe6
Add WebAPI for managing torrent webseeds
...
Closes #18465 .
PR #21043 .
2024-08-11 15:58:56 +08:00
Chocobo1
3e18b1d30c
WebUI: remove outdated CSS property
...
WebUI already has the standard counterparts.
2024-08-10 14:26:10 +08:00
Chocobo1
9df3ee0de8
WebUI: use native property to set styles
2024-08-10 14:26:10 +08:00
Chocobo1
0c7045042d
WebUI: replace deprecated property
2024-08-10 13:01:26 +08:00
Chocobo1
5afeecbf18
WebUI: migrate away from inline HTML code
...
`innerHTML` & `outerHTML` setter will more or less evaluate the value which could be used to
inject malicious code. So replace them with safer alternatives.
PR #21163 .
2024-08-10 12:55:48 +08:00
skomerko
4570c0ef9e
WebUI: Clear trackerList on full update
...
Like other similar data structures, trackerList also need to be cleared in the event of a full sync update.
PR #21148 .
2024-08-10 12:49:00 +08:00
thalieht
d0af02cc17
WebUI: Add missing columns in transfer list
...
* Incomplete Save Path
* Info Hash v1
* Info Hash v2
PR #21158 .
2024-08-09 14:48:22 +08:00
skomerko
62c5f41f39
WebUI: Implement 'Auto hide zero status filters'
...
PR #21145 .
2024-08-09 14:38:53 +08:00
Vladimir Golovnev
bee56f2567
Fix Incomplete Save Path cannot be changed for torrents without metadata
...
PR #21152 .
Closes #21140 .
2024-08-08 08:20:26 +03:00
Vladimir Golovnev
cbabe56fcf
Hide zero status filters when torrents removed
...
PR #21150 .
Closes #21146 .
2024-08-08 08:19:53 +03:00
Chocobo1
2d9e3b3330
WebUI: use native functions for event handling
...
PR #21147 .
2024-08-07 22:00:54 +08:00
Harald Nordgren
989b1d176d
Enable adaptive step size for upload and download limits
...
PR #21138 .
2024-08-07 21:51:06 +08:00
skomerko
142780b863
WebUI: Highlight torrent category in context menu
...
This PR makes it possible to see common category of selected torrents in context menu. Everything should behave exactly like in GUI.
Closes #12701 .
PR #21136 .
2024-08-07 21:40:21 +08:00
Chocobo1
7b2886e477
Revise label text
...
PR #21118 .
2024-08-05 21:01:49 +08:00
Thomas Piccirello
66c1acbce2
Don't reannounce when removing tracker via WebAPI
...
Discussion: https://github.com/qbittorrent/qBittorrent/pull/21056#discussion_r1674632942
PR #21077 .
2024-08-04 17:21:15 +08:00
Chocobo1
49507ad670
Merge pull request #21123 from skomerko/webui-use-alternating-row-colors
...
WebUI: Add ability to toggle alternating row colors in tables
2024-08-04 17:16:01 +08:00
Chocobo1
d74f49111b
WebUI: fix accessing wrong variable
...
Fix up 7131d1bd6b
.
PR #21129 .
2024-07-30 20:25:19 +08:00
Carmelo Scandaliato
642a9c29eb
WebUI: remove deleted torrents even if they are currently filtered out
...
Remove the torrent row regardless of it being visible.
I've also removed the return value because:
* it doesn't appear to be used by any caller;
* other functions (e.g. updateRowData) do not return any value;
* it's not clear whether true refers to the torrent being removed from the list of all torrents or just the visible ones.
Closes #21070 .
PR #21071 .
2024-07-29 16:20:21 +08:00
Chocobo1
9d494e84bf
Merge pull request #21117 from Chocobo1/webui_interval
...
WebUI: timer related clean ups
2024-07-29 15:06:48 +08:00
skomerko
aed103d06e
WebUI: Improve visibility of unread RSS articles
2024-07-28 11:35:01 +02:00
skomerko
b67495464d
WebUI: Add ability to toggle alternating row colors in tables
2024-07-28 11:34:52 +02:00
Chocobo1
bf7e1516d5
WebUI: clear timer variable properly
...
In JS the timer handle pool is reused and therefore require careful handling of it.
2024-07-26 05:08:40 +08:00
Chocobo1
7131d1bd6b
WebUI: listen to resize events properly
...
The workaround is not needed now.
Also added a debouncer to avoid too many transient resizing events.
2024-07-26 03:19:58 +08:00
Chocobo1
062904c2bd
WebUI: avoid excessive checking
2024-07-25 14:20:57 +08:00
Chocobo1
6b52a04ff1
WebUI: avoid queuing up requests
...
`setInterval()` will always fire a new timeout regardless previous `updateRssFeedList()` has
completed or not. This patch will now wait for previous request to complete before another
timeout.
2024-07-25 14:20:57 +08:00
Chocobo1
69a829dfb0
Clean up search engine
...
Notable changes:
1. Prevent excessive engine module imports.
2. Replace trivial usage of `join()`.
3. Keep the output text sorted whenever possible.
4. Close handles properly.
5. Print error to stderr, not stdout.
6. Report search job exit code.
7. Print exception message to stderr if exception was thrown when
running a search job.
8. Utilize XML library to build XML data
And use 2 spaces as indentation.
PR #21098 .
2024-07-22 16:51:57 +08:00
Chocobo1
3c5baac150
Merge pull request #21097 from Chocobo1/webui_a11y
...
WebUI: Improve accessibility
2024-07-22 16:44:52 +08:00
Chocobo1
8e9680bf69
WebUI: simplify code
2024-07-19 17:47:34 +08:00
Chocobo1
b75c42f850
WebUI: associate label to input fields
2024-07-19 17:47:34 +08:00
Vladimir Golovnev
3b38d0de7f
Represent by TorrentInfo only info-section related metadata
...
PR #21084 .
2024-07-19 06:25:41 +03:00
Chocobo1
8b7fdf0f22
Bump Python version minimum requirement
...
The new minimum version is Python 3.9.
Debian Buster (oldoldstable) support ends at [2024.06.30](https://www.debian.org/releases/buster/ ).
Ubuntu Focal (20.04LTS) support ends at [2025.04](https://ubuntu.com/about/release-cycle ).
By the time qbt v5.1 is released, Buster and Focal would have become EOL.
https://packages.debian.org/search?keywords=python3
https://packages.ubuntu.com/search?keywords=python3
PR #21064 .
2024-07-17 12:13:58 +08:00
Chocobo1
83d730ffda
Merge pull request #21074 from Chocobo1/webui_html5
...
WebUI improvements
2024-07-17 12:06:08 +08:00
Hanabishi
3acd5409a6
WebUI: Fix Torrent Management Mode selector
...
PR #21053 .
2024-07-15 18:33:51 +08:00
Chocobo1
a61df019b3
WebUI: provide legend text
...
It provides semantic meanings for the option group.
2024-07-15 18:27:53 +08:00
Chocobo1
7df98e1c9a
WebUI: specify scope of table header
...
This may help screen readers.
2024-07-15 18:26:59 +08:00
Chocobo1
c3b7dfa918
WebUI: omit closing on HTML void elements
...
https://developer.mozilla.org/en-US/docs/Glossary/Void_element#self-closing_tags :
>Self-closing tags (<tag />) do not exist in HTML.
2024-07-15 17:46:33 +08:00
Chocobo1
0fd24358ce
WebUI: check buttons to have valid text (or assistive text)
...
It helps people using assistive technology.
https://stackoverflow.com/a/22040485
2024-07-15 17:25:27 +08:00
Chocobo1
7e8e6269d0
WebUI: drop unused lint rule
2024-07-15 17:12:20 +08:00
Chocobo1
25dd6c72f7
WebUI: use the correct property for accessing text
...
In these instances we don't need the rendered result. So use the most efficient
property to access it: `.textContent`.
2024-07-15 17:09:16 +08:00
Chocobo1
adde3c3f65
WebUI: check headings to have textual content
2024-07-15 17:03:21 +08:00
Chocobo1
7119de9b8d
WebUI: provide semantic information of table body
...
From https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#usage_notes :
>Specifying such table content groups also provides valuable contextual
>information for assistive technologies
2024-07-15 16:59:05 +08:00
David Newhall
3999b9a4f9
add root_path to torrent/info api output ( #21066 )
...
WebAPI: Add root_path to torrent/info result
PR #21066 .
Closes #21057 .
2024-07-15 08:44:26 +03:00
Vladimir Golovnev
7f4cb43a33
Fix incorrect sorting by "private" column
...
PR #21041 .
2024-07-15 08:42:02 +03:00
Chocobo1
9feefc8144
WebUI: avoid redundant re-initialization
...
PR #21012 .
2024-07-12 15:00:36 +08:00
Chocobo1
9c26e5d4d6
WebUI: access attribute/property natively
...
It is now clearer to see what property is being accessed.
Previously mootools library would re-map attribute/property to another.
PR #21007 .
2024-07-12 14:06:59 +08:00
Vladimir Golovnev
815ab180c1
Prevent incorrect size from being used for creating array
...
PR #21050 .
2024-07-12 08:49:45 +03:00
Vladimir Golovnev
eba5cbb803
WebUI: Correctly apply changed "save path" of RSS rules
...
PR #21030 .
Closes #20141 .
2024-07-08 10:08:28 +03:00
ManiMatter
87a202c71e
Add ability to display torrent "privateness" in UI
...
PR #20951 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
Co-authored-by: thalieht <thalieht@users.noreply.github.com >
2024-07-07 19:09:57 +03:00
Vladimir Golovnev
a4f63a5c30
Show scroll bar in Torrent Tags dialog
...
PR #21026 .
Closes #21022 .
2024-07-07 08:25:31 +03:00
Vladimir Golovnev
ccdf178ee7
Fix handling of tags containing '&' character
...
PR #21024 .
Closes #20773 .
2024-07-07 08:24:30 +03:00
Hanabishi
b52fa98a02
WebUI: Implement double-click behavior controls
...
PR #21000 .
2024-07-05 14:34:05 +08:00
Paweł Kotiuk
d87533bf4c
WebUI: Implement path autocompletion
...
PR #20906 .
2024-07-05 14:24:02 +08:00
Vladimir Golovnev
5ef2a1df07
Use QList explicitly
...
PR #21016 .
2024-07-04 08:30:39 +03:00
Vladimir Golovnev
d2fceaa228
Apply bulk changes to correct content widget items
...
PR #21006 .
Closes #21001 .
2024-06-29 21:57:59 +03:00
Vladimir Golovnev
4e27e88f6a
Allow to move content files to Trash instead of deleting them
...
PR #20252 .
2024-06-29 08:21:35 +03:00
Thomas Piccirello
c5fa05299b
WebUI: Fix preference name conflict
...
PR #20990 .
2024-06-28 16:46:21 +08:00
Vladimir Golovnev
0cbe4882c3
Use custom storage when reloading torrent
...
PR #20998 .
2024-06-28 07:14:19 +03:00
Chocobo1
610d5ef5ff
GHA CI: use static versions of AppImage builder
...
It does not affect the produced artifacts. The only difference is the
tool itself won't depend on some specific OS image or library version.
PR #20983 .
2024-06-25 13:11:32 +08:00
Thomas Piccirello
9d87a813b2
Use enabled search plugins by default in WebUI
...
PR #20969 .
Closes #20558 .
2024-06-24 20:45:14 +03:00
Chocobo1
5740238933
Use proper casting
...
Previously `m_shutdownTimeout * 1000` was calculated in `int` and now it
is `qint64`.
PR #20982 .
2024-06-24 15:02:48 +08:00
Chocobo1
ea918da931
Allow numeric types
...
The canonical type for `size_string` is `str`. However numeric types are also accepted in order
to accommodate poorly written plugins.
PR #20976 .
2024-06-23 12:43:35 +08:00
vikas_c
9317c25ecb
Show download progress for folders with zero byte size as 100 instead of 0
...
Fixes the download progress calculation for folders with zero size.
Previously, the progress would be Zero. Now, folders with zero size
show 100% progress.
PR #20567 .
2024-06-20 08:08:55 +03:00
Chocobo1
7a2bfae5e4
Improve connection handling
...
1. Previously unhandled connections will stay in pending state. It won't
be closed until timeout happened. This may lead to wasting system
resources. Now the (over-limit) connection is actively rejected.
2. When out-of-memory occurs here, reject the new connection instead of
throwing exception and crash.
3. Also clean up some unused bits.
PR #20961 .
2024-06-20 12:13:27 +08:00
Vladimir Golovnev
9894f654cf
Allow to use regular expression to filter torrent content
...
PR #20944 .
Closes #19934 .
2024-06-19 15:25:48 +03:00
Chocobo1
d71086e400
Add type annotations
...
A few code are revised because the type checker (mypy) doesn't allow
changing types on a variable.
PR #20935 .
2024-06-17 13:18:32 +08:00
Chocobo1
2000be12ba
Merge pull request #20928 from Chocobo1/webui_curly
...
WebUI: unify coding style
2024-06-17 13:09:18 +08:00
ManiMatter
914728d9a1
WebAPI: Add "private" filter for 'info' endpoint
...
PR #20833 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-06-16 10:57:12 +03:00
Vladimir Golovnev
c36100fa85
Don't use custom "file icon provider" on Windows
...
PR #20936 .
Closes #20908 .
2024-06-14 22:39:42 +03:00
Chocobo1
1c49e0973c
Revise Protocol column
...
Add "BT" (BitTorrent) to avoid confusion about which protocol it is referring to.
Also its value doesn't need to be translated.
PR #20897 .
2024-06-12 15:20:37 +08:00
Vladimir Golovnev
65d143d4c4
Apply share limits when torrent downloading is finished
...
PR #20917 .
Closes #20874 .
2024-06-12 09:03:07 +03:00
Vladimir Golovnev
d89f289f82
Apply filename filter to subfolder names as well
...
PR #20902 .
Closes #14480 .
2024-06-12 09:02:10 +03:00
Chocobo1
648dd9988d
WebUI: unify comment format
2024-06-11 02:17:10 +08:00
BurningMop
dd34c85884
Add optional headers to search request
...
PR #20923 .
2024-06-09 14:03:39 +08:00
Chocobo1
1903ddada1
Add required manifest field
...
https://learn.microsoft.com/en-us/windows/win32/sbscs/application-manifests#assemblyidentity
PR #20907 .
2024-06-09 14:02:53 +08:00
Chocobo1
bf4e0df386
WebUI: unify curly bracket usage
2024-06-07 02:51:35 +08:00
dependabot[bot]
b9a1bbbb8a
GHA CI: Bump Github Actions versions
...
PR #20913 .
---------
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-06-04 14:15:44 +08:00
Chocobo1
41d8f473b7
Avoid redundant lookup
...
PR #20890 .
2024-05-30 19:35:58 +08:00
Chocobo1
4155d4660f
Merge pull request #20888 from Chocobo1/cookie
...
Simplify HTTP cookie code
2024-05-30 19:35:40 +08:00
thalieht
455a04b68e
Increase default height of 'Share ratio limit' dialog in WebUI
...
PR #20866 .
2024-05-29 12:30:28 +08:00
Chocobo1
4c57318e89
Avoid creating redundant temporary file list
...
PR #20863 .
2024-05-29 12:29:48 +08:00
Chocobo1
d52995015e
Merge pull request #20828 from Chocobo1/js_quotes
...
WebUI: enforce coding styles
2024-05-29 01:39:13 +08:00
Chocobo1
b1b6685663
Use Qt built-in methods
2024-05-27 23:52:39 +08:00
Chocobo1
534615373e
Use simpler conversion
...
The cookie value can only contain ASCII characters.
2024-05-27 23:40:40 +08:00
Chocobo1
1ba69be869
WebUI: add missing break
2024-05-27 23:02:19 +08:00
Chocobo1
c54750469e
WebUI: don't auto infer radix
parameter
2024-05-27 23:00:51 +08:00
Chocobo1
3ebd15d408
WebUI: simplify code
2024-05-27 23:00:30 +08:00
Chocobo1
64dfb7e122
WebUI: iterate over own properties only
2024-05-27 23:00:03 +08:00
Chocobo1
b07afa3ea9
WebUI: use assignment operator shorthand
2024-05-27 22:58:47 +08:00
Chocobo1
24a1537cdd
WebUI: prefer arrow function in callbacks
2024-05-27 22:57:28 +08:00
Chocobo1
55bff4f07a
WebUI: enforce usage of const
whenever possible
2024-05-27 22:56:51 +08:00
Chocobo1
cb90b6769c
WebUI: enforce string quotes coding style
2024-05-27 22:50:17 +08:00
Thomas Piccirello
6d073771ca
WebUI: Restore previously used tab on load
...
This PR restores the users previously used tab (Transfer, Search, RSS, etc.) when the WebUI is reloaded.
PR #20705 .
2024-05-27 20:51:02 +08:00
Chocobo1
a126a7b493
Adjust user agent version automatically
...
The version calculation is an estimation and it will drift off after some time. Hopefully the
drift offset won't be noticeable within a few years.
Also switched the user agent to Windows 10 which has the largest portion of users to avoid
standing out from the crowd.
PR #20864 .
2024-05-20 13:50:18 +08:00
Vladimir Golovnev
b8a774f1fb
Improve structure of AddNewTorrentDialog code
...
Restructures the code to separate the basic logic from the logic that depends on the parameters and properties of the torrent being added.
Also fixes "Never show again" checkbox functionality.
PR #20848 .
2024-05-18 10:38:49 +03:00
Vladimir Golovnev
e09a871ca3
Revamp alerts handling
...
PR #20854 .
2024-05-18 10:36:08 +03:00
Chocobo1
04154ebb76
GHA CI: don't use hardcoded path
...
PR #20763 .
2024-05-17 01:44:43 +08:00
Vladimir Golovnev
fb796ec595
Don't hide member variables when storing current speeds
...
PR #20847 .
Closes #20843 .
2024-05-16 08:17:51 +03:00
Vladimir Golovnev
00ca209ab9
Allow to rearrange search tabs
...
PR #20842 .
Closes #20841 .
2024-05-16 08:16:54 +03:00
Vladimir Golovnev
4d8713ce11
WebAPI: Add a way to download .torrent file using search plugin
...
* Simplify nova2dl script
* Use search engine name instead of site URL (like nova2 does)
* Add a way to download torrent using search plugin
PR #20824 .
2024-05-15 08:47:40 +03:00
Hanabishi
2c47f09d7a
Sanitize peer client names
...
PR #20788 .
Closes #20010 .
2024-05-11 18:46:11 +03:00
Chocobo1
a19ef58400
Merge pull request #20800 from Chocobo1/eslint_v9
...
WebUI: migrate to ESLint v9
2024-05-11 13:56:08 +08:00
cayenne17
21a4ab6bac
Update User-Agent
...
PR #20801 .
2024-05-10 21:47:55 +03:00
Vladimir Golovnev
2b728b3bc0
Add an option to set BitTorrent session shutdown timeout
...
PR #20797 .
2024-05-07 13:15:39 +03:00
Chocobo1
6231208ddf
WebUI: add linting for regular expressions
...
And applies to following suggestions:
* Use case-insensitive flag `i`
* Use `\w` for matching characters
* Sort the regex flags
2024-05-04 15:01:03 +08:00
Chocobo1
e2d6cd31b2
WebUI: migrate to ESLint v9
2024-05-04 14:59:45 +08:00
Chocobo1
79eb7b8e38
WebUI: migrate ESLint rules
...
https://eslint.style/guide/migration
PR #20727 .
2024-05-03 21:03:08 +08:00
Vladimir Golovnev
8ef7d3ec9a
Add ability to pause/resume entire BitTorrent session
...
PR #20757 .
Closes #18993 .
2024-05-03 09:02:50 +03:00
ManiMatter
05416458db
WebAPI: Provide "isPrivate" flag via "torrents/info" endpoint
...
PR #20686 .
2024-05-02 13:04:03 +03:00
Vladislav Grechannik
cd3982cf3c
Include missing header
...
PR #20776 .
Closes #20774 .
2024-05-01 12:37:22 +03:00
Paweł Kotiuk
a1af077889
Add API for listing directory content
...
PR #20314 .
2024-04-29 21:13:32 +03:00
ducalex
42b87963fd
Add date column to the built-in search engine
...
Adds a date column to the built-in search engine to show when a torrent was published/uploaded on the engine site.
When a plugin wants to show a date, it can now add a `pub_date` entry to its result dict. The value format is a unix timestamp (an integer representing seconds since epoch).
Plugins with no date support will keep working.
PR #20703 .
2024-04-29 21:10:24 +03:00
Chocobo1
775b38079f
Avoid repetitive function calls
...
PR #20764 .
2024-04-29 13:05:05 +08:00
Chocobo1
d65d8558d6
Merge pull request #20728 from Chocobo1/webui_state
...
WebUI: clean up code
2024-04-29 12:58:14 +08:00
Chocobo1
b1175b60e1
Use proper comparison for None
...
PR #20762 .
2024-04-29 12:47:27 +08:00
luzpaz
d3315f7cc7
WebUI: Fix inconsistent naming between (Done/Progress) column
...
Closes #20602 .
PR #20700 .
2024-04-27 14:43:47 +08:00
Chocobo1
321d7e5b17
Adjust tracker tier when adding additional trackers
...
Closes #20102 .
PR #20729 .
2024-04-25 12:18:30 +08:00
milahu
4ac586c896
Lazy load search plugins
...
PR #20553 .
2024-04-24 22:15:22 +03:00
Vladimir Golovnev
ca71c186e0
Don't forget to resume "missing files" torrent when rechecking
...
PR #20747 .
2024-04-24 09:15:19 +03:00
xavier2k6
ddb0ff29e2
GHA CI: Use Qt 6.7.0 on Windows and macOS
...
PR #20431 .
2024-04-22 15:21:16 +03:00
xavier2k6
6c57fad0cd
GHA CI: Bump Boost version to 1.85.0
...
PR #20723 .
2024-04-22 13:39:58 +08:00
Chocobo1
1c7ecb7371
WebUI: migrate away from MooTools deprecated functions
...
https://mootools.net/core/docs/1.6.0/Core/Core#Deprecated-Functions
2024-04-21 16:55:30 +08:00
Chocobo1
4945ed576a
WebUI: enforce strict comparison operators
2024-04-21 16:44:15 +08:00
xavier2k6
c6f4e95b7d
Raise minimum libtorrent 2 version to 2.0.10
...
PR #20447 .
2024-04-21 09:52:51 +03:00
Vladimir Golovnev
fc3953dbaa
Don't overwrite stored layout of main window with incorrect one
...
Prevents overwriting of the stored layout in case the main window was hidden at startup and
has not been shown since, because incorrect dimensions can be provided by it in this case.
PR #20725 .
Closes #20720 .
2024-04-20 11:10:31 +03:00
Chocobo1
75e2ae2fa0
WebUI: clean up code
...
Use proper function for finding match.
Use strict comparison operators.
2024-04-19 16:13:27 +08:00
Vladimir Golovnev
7310eec74e
Focus on Download button if torrent link retrieved from the clipboard
...
PR #20716 .
Closes #20682 .
2024-04-19 09:21:52 +03:00
Vladimir Golovnev
3e0fd01604
Add extra offset for dialog frame
...
PR #20715 .
Closes #20609 .
2024-04-18 09:04:06 +03:00
Vladimir Golovnev
ace5286402
Prevent invalid status filter index from being used
...
PR #20714 .
Closes #20701 .
2024-04-18 07:59:24 +03:00
Chocobo1
d7cded54e4
WebUI: enforce parentheses around operators
...
PR #20696 .
2024-04-15 12:50:07 +08:00
Chocobo1
6c82d5e305
WebUI: fix wrong peer number
...
PR #20695 .
2024-04-15 12:42:47 +08:00
Chocobo1
c036313adf
Update screenshot URL in appstream metadata
...
Those URL are pointing to our git repo:
723c0df824/src/img/screenshots/linux
PR #20694 .
2024-04-15 12:17:40 +08:00
Thomas Piccirello
29f0adf215
WebUI: Restore search tabs on load
...
This PR restores searches previously performed in the same browser (via local storage).
PR #20637 .
2024-04-15 12:07:15 +08:00
Thomas Piccirello
e697d40382
WebUI: Improve table scrolling and selection on mobile
...
This PR improves touch interaction with table rows that have a context menu. Previously, those rows couldn't be selected or scrolled on mobile. Additionally, this PR modifies the context menu to appear when the user removes their finger/touch, rather than the current behavior of appearing mid-touch. This allows us to only display the context menu if the user's finger remains on the same element, which should significantly reduce erroneous context menu triggering.
Closes #19819 .
Closes #19820 ,
Closes #19823 .
PR #20639 .
2024-04-09 14:33:10 +08:00
Chocobo1
01cc4ea90b
GHA CI: revise packaging failure detection
...
Fix up 1d221c22e4
.
PR #20664 .
2024-04-09 14:22:05 +08:00
Chocobo1
d407e954d1
GHA CI: lock to ESLint v8
...
For unknown reasons, ESLint v9 doesn't work correctly. Migration to ESLint v9 will be done
later when it is stable enough.
PR #20665 .
2024-04-09 14:12:30 +08:00
Vladimir Golovnev
f085f8c076
Fix Enter key behavior in Add new torrent dialog
...
Prevent inappropriate default completer from being used by path edit.
PR #20670 .
Closes #20663 .
2024-04-08 16:02:26 +03:00
Chocobo1
92ce507151
WebUI: Allow to specify login page language via query parameter
...
There were a few reports that the user has messed up their browser's language and this PR gives an escape hatch in case the user is unable to configure the browser's language for various reasons.
Example for choosing French: http://127.0.0.1:8080/?lang=fr
PR #20591 .
2024-04-06 15:13:58 +08:00
Vladimir Golovnev
67dfce7437
WebAPI: return correct value for queued uploading state
...
PR #20651 .
Closes #20648 .
2024-04-04 08:41:25 +03:00
dependabot[bot]
e4aad461c7
GHA CI: Bump Github Actions versions
...
PR #20652 .
---
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-03 13:00:50 +08:00
Aliaksei Urbanski
f37d0c486c
Add the Popularity metric
...
PR #20180 .
2024-04-01 21:23:08 +03:00
Thomas Piccirello
8e6515be2c
WebUI: Fix error when category doesn't exist
...
This prevents hitting a TypeError when the category stored in localstorage does not exist. The behavior for a nonexistent category now mirrors that of a nonexistent tag or filter - no option is selected and no torrents are shown.
Closes #20623 .
PR #20638 .
2024-04-01 20:15:30 +08:00
Chocobo1
1d221c22e4
GHA CI: retry action on failure
...
PR #20641 .
2024-04-01 19:59:26 +08:00
Chocobo1
2fe91a6c8f
GHA CI: only store cache for master branch
...
Also set a lower cache limit for macOS to prevent cache thrashing. Previously the default was 5G.
PR #20640 .
2024-04-01 19:36:45 +08:00
Chocobo1
90383567b2
Revise Tracker related classes
...
And also rename them.
PR #20489 .
2024-04-01 19:17:35 +08:00
Thomas Piccirello
4967f977c5
WebUI: Improve accuracy of trackers list
...
This PR fixes various accounting issues with the trackers list. Removing a torrent would not update the trackers list, nor would removing a tracker from a torrent. And removing a tracker with a shared host but unique url (e.g. example.com/1 and example.com/2) would erroneously remove the tracker's host from the list.
Closes #20053 .
Closes #20054 .
PR #20601 .
2024-03-29 15:43:49 +08:00
Thomas Piccirello
eb9e98a4b3
WebUI: Add support for running concurrent searches
...
This PR adds support for running multiple concurrent searches in the Web UI. This is already supported in the GUI as well as by the Web API. Behavior mimics the GUI as closely as possible.
All filters and sorting are preserved per-tab, allowing you to apply unique filters and sorts to each of your searches. Row selection is also preserved across tab navigation.
Closes #12840 .
PR #20593 .
2024-03-29 15:05:43 +08:00
Vladimir Golovnev
f5cac13979
Prevent app from being closed when disabling system tray icon
...
PR #20627 .
Closes #20604 .
2024-03-29 09:38:54 +03:00
Chocobo1
f20467889d
Improve AppStream metadata
...
PR #20606 .
2024-03-26 22:06:57 +08:00
Vladimir Golovnev
5e8b9df859
Revamp system tray icon menu handling
...
Update system tray icon menu without re-create it.
PR #20597 .
Closes #20516 .
2024-03-26 15:24:43 +03:00
Thomas Piccirello
489bacd766
WebUI: Conditionally show filters sidebar
...
This fixes a bug where the filters sidebar would always be displayed when switching back to the Transfers tab.
Closes #19257 .
PR #20600 .
2024-03-26 12:41:47 +08:00
thalieht
5d1c249606
Use Start/Stop instead of Resume/Pause
...
PR #20532 .
---------
Co-authored-by: Vladimir Golovnev (Glassez) <glassez@yandex.ru >
2024-03-25 19:11:04 +03:00
Chocobo1
f2d6129db3
Merge pull request #20590 from Chocobo1/py
...
GHA CI: check python scripts
2024-03-25 13:42:09 +08:00
HamletDuFromage
5c67c5a77d
Add regex toggle for WebUI torrent filtering
...
PR #20566 .
2024-03-24 13:44:57 +08:00
Vladimir Golovnev
ce013f132f
Refresh custom colors once color scheme is changed
...
PR #20588 .
2024-03-23 11:32:07 +03:00
Chocobo1
abcf1e076e
Remove unused script
2024-03-23 13:55:58 +08:00
Chocobo1
47c38e8d91
Apply formatting
2024-03-23 13:55:58 +08:00
Chocobo1
34d19e5714
GHA CI: check python scripts
2024-03-23 13:54:57 +08:00
Vladimir Golovnev
25b7972f88
Initialize completer for file system path widget on demand
...
PR #20586 .
2024-03-23 08:18:36 +03:00
Vladimir Golovnev
845f9a821e
Use better icons for RSS articles ( #20587 )
2024-03-22 18:46:25 +03:00
Vladimir Golovnev
b489262f51
Add workaround to refresh styled controls once color scheme is changed
...
PR #20569 .
2024-03-21 11:14:41 +03:00
sledgehammer999
a5681f72bc
Bump to v5.0.0beta1
2024-03-19 02:44:55 +02:00
sledgehammer999
9e569f1a70
Update Changelog
2024-03-19 02:23:13 +02:00
foxi69
9d3c314ac0
NSIS: Update Hungarian translation
...
PR #20565
2024-03-19 01:56:05 +02:00
Chocobo1
931de85ab5
Merge pull request #20520 from Chocobo1/i18n
...
Use client side translation for public login page
2024-03-18 13:23:44 +08:00
sledgehammer999
6a82cb1af6
Update WebUI translations from old format
2024-03-16 01:20:11 +08:00
sledgehammer999
f8ae8f419d
Add helper scripts to manage WebUI translations
2024-03-16 01:20:11 +08:00
Chocobo1
ac91c1348b
Use client side translation for public login page
...
The translation strings are meant to be synced from Transifex.
2024-03-16 01:20:11 +08:00
MarcDrieu
d7aaf80744
Update french.nsh ( #20545 )
...
Updated a couple of strings with more accurate wording.
PR #20545
2024-03-14 22:46:51 +02:00
tehcneko
50caa231f7
Fix invisible tray icon on Plasma 6 in Linux
...
PR #20529 .
Closes #20367 .
---------
Co-authored-by: thalieht <thalieht@users.noreply.github.com >
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2024-03-13 10:24:08 +03:00
Vladimir Golovnev
d5e41bf679
Allow torrents to override default share limit action
...
PR #20528 .
2024-03-12 14:08:59 +03:00
Chocobo1
773cb1e55d
Ensure the profile path is pointing to a directory
...
Closes #20513 .
PR #20519 .
2024-03-11 13:02:51 +08:00
Chocobo1
0967bdc715
Switch to lightweight function for filtering data
...
We can use this function since the columns doesn't change.
PR #20518 .
2024-03-11 12:54:38 +08:00
Thomas Piccirello
c06817f4eb
Add button for sending test email
...
This allows for easily testing whether the provided email configuration is correct.
PR #20488 .
2024-03-08 21:51:44 +08:00
Vladimir Golovnev
1702b6c891
Correctly handle share limits in torrent options dialog
...
PR #20485 .
2024-03-04 11:54:10 +03:00
Loris Laera
f65af03c67
NSIS: Add Luxembourgish translation
...
PR #19943
---------
Co-authored-by: sledgehammer999 <hammered999@gmail.com >
2024-03-04 09:04:48 +02:00
sledgehammer999
a567f8b600
Update gitignore for vscode ( #20494 )
...
PR #20494
2024-03-03 13:51:06 +02:00
Chocobo1
71f1e6df59
GHA CI: disable security hardening flag
...
OpenSSL isn't compatible with `/guard:cf` flag so we omit it for now.
Related: https://github.com/openssl/openssl/issues/22554
Closes #20479 .
PR #20487 .
2024-03-03 13:49:07 +08:00
dependabot[bot]
896f5fe729
GHA CI: Bump action version
...
PR #20486 .
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-03 13:33:07 +08:00
sledgehammer999
8a1bc8e5fd
Bump copyright year
2024-03-03 06:02:40 +02:00
sledgehammer999
6964132475
Sync translations from Transifex and run lupdate
2024-03-03 05:53:09 +02:00
JayRet
f265eb0166
Improve WebUI login behavior
...
Closes #20441 .
PR #20442 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-03-02 14:47:02 +08:00
Vladimir Golovnev
0114610a40
Provide torrent creation feature via WebAPI
...
PR #20366 .
Closes #5614 .
Co-authored-by: Radu Carpa <radu.carpa@cern.ch >
2024-02-27 15:57:16 +03:00
Chocobo1
15697f904d
Add a small delay before processing the key input of search boxes
...
PR #20465 .
Closes #20025 .
Closes #20235 .
2024-02-27 12:57:55 +08:00
Chocobo1
46e8ee50c8
Allow to set custom suffix to window title
...
This is to allow users to differentiate qbt instances when there are multiple running.
PR #20429 .
Closes #17905 .
2024-02-27 12:41:12 +08:00
Chocobo1
364bcf73ee
Write format result directly to file
...
And not print to stdout.
2024-02-25 20:17:56 +08:00
Chocobo1
031fa6183c
Add viewport meta tag
...
This helps displaying WebUI on mobile devices. Note that WebUI aren't
optimized for mobile yet.
2024-02-25 20:17:56 +08:00
Chocobo1
66c34ddb6e
Avoid leaking user locale preference to the web
2024-02-25 20:17:56 +08:00
Chocobo1
3f2b4afc21
Add description meta tag
2024-02-25 20:17:56 +08:00
Chocobo1
e1fa7e01c6
Remove unneeded polyfill
...
All browsers already have native support for it.
2024-02-25 20:17:56 +08:00
Chocobo1
9192c988ed
Warp script in anonymous scope (IIFE)
...
It was erroneously removed in 9b64d50660
.
2024-02-25 20:17:56 +08:00
Chocobo1
cffd74b62a
Add support for SSL torrents
...
The 'SSL torrent' feature is not standardized. I.e. there are no BEP (BitTorrent Enhancement Proposals) associated with it, so we do not greatly encourage its usage as it will only work with libtorrent clients and derivatives. It will not work with other torrent clients that do not support the libtorrent specific implementation.
This PR aims to provide minimal support for those who need SSL torrents. Furthermore, it is intended that there will be no UI support (nor indication) of adding/creating SSL torrents.
* Prerequisites:
I omit the instructions of creating those files as the intended audience (experts & advanced users) should have no problem with it. All files are as follow:
1. Root (torrent publisher) certificate
2. Root private key
3. A .torrent file created with root certificate
5. Peer certificate (signed by the root certificate)
6. Peer private key
7. Diffie-Hellman parameters file
All files are stored in .pem format.
* Enable SSL torrent protocol in qbt
There are 2 hidden keys to put in qbt config file, under `[BitTorrent]` section:
1. `Session\SSL\Enabled`: set it to `true`.
2. `Session\SSL\Port`: set it to some unused port or omit the key entirely to let qbt pick one for you.
* Add an SSL torrent to qbt
The only way of adding an SSL torrent is via WebAPI. The `/api/v2/torrents/add` endpoint will support 3 additional parameters. You must provide them for an SSL torrent.
1. `ssl_certificate`: Contents of the peer certificate file (in PEM format).
2. `ssl_private_key`: Contents of the peer private key file.
3. `ssl_dh_params`: Contents of the Diffie-Hellman parameters file.
* Change the SSL parameters to a torrent
In case you provided wrong SSL parameters when adding a torrent, there is a new endpoint `/api/v2/torrents/setSSLParameters` that you can update the SSL parameters. The parameters (`ssl_*`) are the same as `/api/v2/torrents/add` endpoint.
* Query the SSL parameters of a torrent
There is a new endpoint `/api/v2/torrents/SSLParameters` that you can query the SSL parameters of a torrent.
References:
* https://www.libtorrent.org/manual-ref.html#ssl-torrents
* https://blog.libtorrent.org/2012/01/bittorrent-over-ssl/
PR #20338 .
---------
Co-authored-by: Radu Carpa <radu.carpa@cern.ch >
2024-02-25 19:58:58 +08:00
xavier2k6
c6ee0ff017
GHA CI: Bump libtorrent 2 version to 2.0.10
...
PR #20455 .
2024-02-25 19:30:20 +08:00
sledgehammer999
dc501c39be
Merge pull request #20444 from sledgehammer999/sync_changelog
...
Consolidate all the Changelog entries into master
2024-02-24 13:31:32 +02:00
Vladimir Golovnev
7786e1b084
Improve received metadata handling
...
Avoid blocking call to libtorrent when accessing underlying torrent_info object.
PR #20424 .
2024-02-21 17:25:54 +03:00
sledgehammer999
80dea08328
Consolidate all the Changelog entries into master
2024-02-18 20:26:10 +02:00
Chocobo1
bb8a012b1c
Revise cache internals
...
Now cache initialization and `get()` is less costly to use and it shifts the weight to `set()`.
PR #20430 .
2024-02-18 14:16:00 +08:00
Chocobo1
63c9b6388e
Rename to WebUI
...
PR #20428 .
2024-02-18 13:58:44 +08:00
Chocobo1
3d24a4e0f7
Specify standards conformance mode to MSVC
...
https://learn.microsoft.com/en-us/cpp/build/reference/permissive-standards-conformance?view=msvc-170
PR #20427 .
2024-02-18 13:03:00 +08:00
Vladimir Golovnev
f04edd555f
Open "lock" files for the same folder only once
...
PR #20414 .
Closes #12203 .
2024-02-15 08:42:44 +03:00
Chocobo1
e31b553807
Stop sync requests after qbt has been shutdown
2024-02-14 03:38:09 +08:00
Chocobo1
a9741bb203
Defer loading of js code on landing pages
...
So that DOM tree can be processed earlier.
2024-02-14 03:38:09 +08:00
Chocobo1
67e0a2de44
Combine script tags
2024-02-14 03:38:09 +08:00
Chocobo1
1afb3ff433
Add support for dark theme
2024-02-14 03:38:09 +08:00
Chocobo1
16a91f26fb
Simplify code
2024-02-14 03:38:09 +08:00
Chocobo1
963a7faab8
Migrate to Cache for commonly used data
...
Previously it was abusing the `localStorage` and now it is storing data in memory (per session).
2024-02-14 03:38:09 +08:00
Chocobo1
d06d5b923a
Cache program preferences
...
So that qbt can just use the data from memory which is vastly faster than waiting for a response
over the net.
2024-02-14 03:38:09 +08:00
xavier2k6
6d68ab4dae
GHA CI: Bump boost dependency and revise install method
...
PR #20371 .
2024-02-14 03:36:47 +08:00
Vladimir Golovnev
60bb819e2e
Allow WebAPI to specify filename and mime type for result data
...
PR #20377 .
2024-02-12 09:07:09 +03:00
Chocobo1
8ef99b336c
Remove 'no cache' directive for POST requests
...
The response for POST request is only cachable under a specific condition and
qbt doesn't use it.
https://developer.mozilla.org/en-US/docs/Glossary/Cacheable
2024-02-11 23:28:44 +08:00
Chocobo1
f7e9ff0fb0
Clean up functions in global scope
2024-02-11 23:28:44 +08:00
Chocobo1
9b64d50660
Conditionally hide settings in Advanced Options
2024-02-11 23:28:44 +08:00
Chocobo1
5fe5c333b5
Rename file
2024-02-11 23:28:44 +08:00
Chocobo1
49f819ef78
Use correct type for each option
2024-02-11 23:28:44 +08:00
Vladimir Golovnev
2755190d8e
Link PowrProf library to qBittorrent base
...
PR #20387 .
2024-02-10 11:59:14 +03: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
88a4990435
Don't use iterator after erase
...
PR #20357 .
Closes #20356 .
2024-02-03 08:10:14 +03:00
Chocobo1
9bfb447dd3
Improve WebUI responsiveness
...
This migrates Category and Tag to `Map` type from `Object` type. And done some algorithm and data structure optimization.
PR #20297 .
2024-01-27 22:04:39 +08:00
Vladimir Golovnev
d652a10495
Add seeding limits to RSS and Watched folders options UI
...
PR #20324 .
Closes #19605 .
2024-01-27 14:30:27 +03:00
jNullj
df41940ebc
Fix typo in preferences.html
...
PR #20326 .
2024-01-26 10:58:57 +03:00
Chocobo1
94e80d01a8
Clean up code
...
* Use compiler generated comparison function
* Use designated initializers
* Convert to proper type
* Use reference
* Remove redundant text
The `msg` already contain the text `Reason:` so it isn't needed.
PR #20312 .
2024-01-25 02:56:12 +08:00
Vladimir Golovnev
bab9c15913
Revamp handling of getting resume data from libtorrent
...
PR #20310 .
2024-01-24 15:40:08 +03:00
Chocobo1
31d456c43b
Set specific exit codes when NSIS installer failed in silent mode
...
* Set specific exit codes when NSIS installer failed in silent mode
Related: https://github.com/qbittorrent/qBittorrent/issues/18115#issuecomment-1789404780
* GHA CI: treat NSIS warnings as errors
PR #20296 .
2024-01-22 14:01:15 +08:00
jNullj
c5d7b62473
Delay subsequent requests to the same host
...
PR #19801 .
Closes #8350 .
2024-01-19 20:38:16 +03:00
Vladimir Golovnev
8ec3db1807
Change "metadata received" stop condition behavior
...
PR #20283 .
Closes #20122 .
2024-01-19 20:34:40 +03:00
Vladimir Golovnev
05572a7317
Add missing comparison case
...
Closes #20290 .
2024-01-19 10:13:34 +03:00
Chocobo1
00372dd559
Use natural sorting in WebUI
...
Also change case sensitivity to the default of 'sort' mode.
PR #20264 .
2024-01-15 13:12:36 +08:00
Chocobo1
6918316a3d
Switch to new method for checking own properties
...
The new method is an intended replacement for previous one as suggested by MDN:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwn
2024-01-15 13:12:12 +08:00
Chocobo1
2edb1a0765
Improve WebUI responsiveness
...
Related: #20249 .
2024-01-15 13:12:12 +08:00
sledgehammer999
582e4dcb59
Sync translations from Transifex and run lupdate
2024-01-15 00:28:06 +02:00
Vladimir Golovnev
14513d051d
Don't stuck loading on mismatching info-hashes in resume data
...
PR #20262 .
Closes #20251 .
2024-01-13 18:08:16 +03:00
Vladimir Golovnev
97c0abcbf0
Improve Download Manager subsystem
...
PR #20257 .
2024-01-13 08:55:40 +03:00
Chocobo1
ad22237a2f
Provide safe helper for converting to 'seconds since epoch'
2024-01-08 15:13:02 +08:00
Chocobo1
8bdb83d973
Use initialization form for variable
2024-01-08 15:13:02 +08:00
Chocobo1
54bcabeca4
Leave the fields empty when value is invalid
...
This follows GUI behavior.
2024-01-08 15:13:02 +08:00
Chocobo1
114652205c
Fix wrong time stamp values in WebAPI
...
The wrong values are observed when encountered an invalid QDateTime data.
2024-01-08 15:13:02 +08:00
Chocobo1
5b3b56c918
Improve natural sort algorithm
...
1. Use proper case folding function instead of `toLower()`.
2. Use locale aware comparison instead of comparing unicode code points.
Now `a` comes before `A` which is the same as the result from QCollator. A nice side effect
is now it properly compares locale specific characters (for example `C`, `Č`).
3. Improve testing. Now the test is runnable and stable on all platforms.
PR #20208 .
2024-01-08 14:47:00 +08:00
David
e69f857828
Allow to remember torrent content files deletion in WebUI
...
Add a 'remember choice' button to the WebUI Torrent Deletion dialog that sets the default file deletion setting. The setting is shared with GUI, so if you set it in WebUI and open the Qt app, the 'delete files' checkbox will match WebUI (checked or unchecked).
PR #20150 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2024-01-08 14:39:51 +08:00
Vladimir Golovnev
0b6d785e87
Show URL seeds for torrents that have no metadata
...
PR #20233 .
Closes #20198 .
2024-01-06 15:51:19 +03:00
Vladimir Golovnev
f3d45327e1
Apply inactive seeding time limit set on new torrents
...
PR #20231 .
Closes #20224 .
2024-01-05 18:25:29 +03:00
Vladimir Golovnev
9bf7f3b181
Show correctly decoded filename in log
...
PR #20214 .
Closes #20186 .
2024-01-02 16:03:12 +03:00
Chocobo1
d5bf0358cb
Revise conditional for when to use QCollator
...
According to https://doc.qt.io/qt-6/qcollator.html#posix-fallback-implementation
The 'POSIX fallback implementation' is only used when ICU is not available. So the correct way is to detect ICU directly and not depend on the OS. The exceptions are macOS and Windows since they support the required functionalities natively.
Closes #20205 .
PR #20207 .
2024-01-02 16:58:12 +08:00
Chocobo1
fc56fdade7
Specify a locale if none is set
...
Sometimes users had not properly configured their system locale and thus
qbt will specify a default locale just in case.
Closes #16127 .
Closes #19609 .
Closes #19834 .
PR #20203 .
2024-01-02 16:49:40 +08:00
dependabot[bot]
293a2efca7
GHA CI: Bump Github Actions versions
...
PR #20220 .
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-02 16:23:09 +08:00
Chocobo1
8bd604f633
GHA CI: add fallback URL for boost library
...
Boost main download site jfrog is unavailable at the time of writing.
Related: https://github.com/boostorg/boost/issues/842
PR #20218 .
2024-01-02 15:54:49 +08:00
Allan Laal
fcd16d56e2
Remove old build instructions from README.md
...
PR #20200 .
2024-01-01 14:15:16 +03:00
Chocobo1
be5bf9a138
GHA CI: ditch unusable build step
...
lukka/run-vcpkg v11.3 has deliberately changed to avoid writing outside of `GITHUB_WORKSPACE`
directory and this conflict with our usage. So ditch it and invoke vcpkg directly.
https://github.com/lukka/run-vcpkg/releases/tag/v11.3
PR #20202 .
2023-12-31 14:03:42 +08:00
thalieht
8dcc734df5
Enable Ctrl+F hotkey for more inputs
...
PR #20131 .
2023-12-19 20:52:47 +03:00
Chocobo1
4057972b2d
GHA CI: fix coverity build failure
...
PR #20129 .
2023-12-19 00:30:36 +08:00
Chocobo1
073ca4267c
Introduce helper function to join values as string
...
PR #20130 .
2023-12-19 00:08:37 +08:00
d47081
9d90141c29
Add dark theme for WebUI
...
Closes #19844 .
PR #19901 .
---------
Co-authored-by: d47081 <localhost>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2023-12-12 12:23:40 +08:00
Chocobo1
cc563d9f78
Fix incorrect usage of translation functions
...
PR #20107 .
2023-12-10 23:07:29 +08:00
Chocobo1
88ef8a51dd
Move local functions into anonymous namespace
...
PR #20106 .
2023-12-10 22:51:33 +08:00
Victor Chernyakin
0297f0f34b
Allow relative profile paths
...
PR #19558 .
2023-12-07 09:20:37 +03:00
Vladimir Golovnev
7a41192597
Add a class to represent a tag
...
PR #20028 .
Closes #19744 .
2023-12-05 17:01:09 +03:00
Chocobo1
65771d66fc
Update Readme for WebUI
...
PR #20077 .
2023-12-05 03:34:40 +08:00
Chocobo1
0dbac78e17
Revise legal notice
...
For GUI and non-daemon console, the legal notice won't ask for user acceptance anymore and only
provide an OK button (or Enter key in console) from now on.
For daemon mode, qbt will print the legal notice and continue to run. It will also notify user
to use command line option `--confirm-legal-notice` to suppress the message. The message will be
printed on every start up unless user specify the command line option once.
PR #20080 .
2023-12-05 03:13:37 +08:00
Chocobo1
608efc77e8
GHA CI: put libtorrent into its own directory
...
Previously it was rooted within qbt project and it caused some issues when running
'update translations' command.
2023-12-05 02:39:24 +08:00
Chocobo1
9ecb3874d8
GHA CI: use parallel downloading
...
Also clean up other commands.
2023-12-05 02:39:24 +08:00
Vladimir Golovnev
4ba8eaf4b4
Don't forget to store Stop condition
...
PR #20045 .
Closes #20043 .
2023-11-30 08:58:41 +03:00
Vladimir Golovnev
bfd3ce2fca
Don't forget to update filter items
...
PR #20030 .
Closes #19905 .
2023-11-29 07:05:46 +03:00
Chocobo1
86d5d13ce6
Migrate away from deprecated functions
...
Those functions are deprecated in mootools.
2023-11-27 13:29:54 +08:00
Chocobo1
8f230bc2e6
Remove unused icon provider singleton
2023-11-27 13:29:54 +08:00
Chocobo1
6d0ad62632
Remove Qt5 remnants
...
The env variable was added in 51cf05c1bd
And `QNetworkConfigurationManager` is deprecated in Qt5 and not available in Qt6.
https://doc.qt.io/qt-5.15/qnetworkconfigurationmanager.html
2023-11-27 13:29:54 +08:00
Chocobo1
c165131c3f
Disable stdout buffering for qbt-nox
...
The messages printed out via stdout is usually important and short so
there is no reason to buffer them.
Closes #19984 .
PR #20018 .
2023-11-26 15:36:50 +08:00
brvphoenix
9fde5634f1
Fix JS memory leak
...
The memory leak can be reproduced easily by opening two web pages of qbittorrent so that the WebUI pages are updated with full_update = true. If you have a large number of torrents, such as 100 torrents, you can observe a rapid increase in memory usage.
This is caused by the incorrect usage of dispose and empty methods in the js codes and none of them garbage collect the elements. If event listeners are added to the DOM elements, those DOM elements will not be garbage collected at all event if they are not referenced or out of the scope, which will cause memory leaks. If some elements are expected to be removed, the correct way is to use destroy method instead.
https://github.com/mootools/mootools-core/blob/master/Docs/Element/Element.md#element-method-dispose-elementdispose
https://github.com/mootools/mootools-core/blob/master/Docs/Element/Element.md#element-method-empty-elementempty
https://github.com/mootools/mootools-core/blob/master/Docs/Element/Element.md#element-method-destroy-elementdestroy
Closes #19034 .
PR #19969 .
2023-11-25 13:50:45 +08:00
xavier2k6
19b88b7f4a
NSIS: Display correct Minimum Windows OS requirement
...
PR #20001 .
2023-11-24 11:43:18 +03:00
Vladimir Golovnev
60eaff9fcb
Simplify share ratio limits processing code
...
PR #19971 .
2023-11-21 22:14:27 +03:00
Vladimir Golovnev
c3adc90f7e
Show Add new torrent dialog on main window screen
...
PR #19963 .
Closes #19774 .
2023-11-21 22:13:22 +03:00
Chocobo1
6f7f418ec1
Improve error message when daemonizing failed
...
PR #19959 .
2023-11-21 14:05:32 +08:00
Chocobo1
137df132e8
GHA CI: link to C libraries dynamically
...
The C libraries is now updated by the OS and therefore there is no
reason to bundle static versions which might be outdated later.
Also enable Control Flow Guard for 3rd party libraries.
2023-11-21 13:49:10 +08:00
Chocobo1
b2c51a5b9e
GHA CI: use built-in ninja
...
`choco install` is slow: A basically simple download and extract operation takes 20sec compared to ~3sec
when done manually. So we add a conditional for it.
2023-11-21 13:49:10 +08:00
Chocobo1
e99a012bb4
GHA CI: only store compile cache on stable branches
...
Given the amount of PR and compile matrix, the CI cache size limit is
easy to hit. So for now on, only store compile cache for stable branches
to avoid cache thrashing.
2023-11-21 13:49:10 +08:00
Chocobo1
75feacb213
GHA CI: enable caching for Qt library
2023-11-21 13:49:10 +08:00
Vlad Zahorodnii
ce34245aaf
Fix parent widget of "Lock qBittorrent" submenu
...
The parent widget of lockMenu is going to be used to derive the
transient parent window. Currently the parent widget of lockMenu is
the main window, therefore the main window is also going to be the
transient parent for lockMenu's window handle.
In other words, the "View" menu and "Lock qBittorrent" menu are
going to be considered as siblings by the window manager even though
the latter is nested inside the former.
On platforms like wayland, such popup hierarchies are illegal, popups
must be properly nested. qtwayland works around it, but it also prints
warning messages.
This change makes lockMenu a child of the view menu so they are
properly nested from the window manager point of view.
PR #19967 .
Closes #19955 .
2023-11-20 20:39:21 +03:00
Vladimir Golovnev
ef06be63bf
Remove incorrect assertions
...
PR #19964 .
2023-11-20 20:37:55 +03:00
Vladimir Golovnev
a1c78a0455
Follow the parent category options
...
PR #19957 .
Closes #19941 .
2023-11-20 20:37:17 +03:00
avivmu
32fbacf615
NSIS: Add Hebrew translation
...
PR #19929 .
2023-11-20 12:07:26 +03:00
Vladimir Golovnev
75c638e2f8
Add timeouts to network requests
...
PR #19947 .
2023-11-18 09:55:33 +03:00
Chocobo1
298e4ba852
Revert "Set symbol visibility to hidden"
...
This negatively affect stacktrace functionality.
This reverts commit 50680a3d9b
.
PR #19942 .
2023-11-15 21:25:45 +08:00
Chocobo1
50680a3d9b
Set symbol visibility to hidden
...
This suppresses compiler warnings in GHA CI:
>ld: warning: direct access in function 'std::__1::__function::__func<libtorrent::storage_interface* (*)(libtorrent::storage_params const&, libtorrent::file_pool&), std::__1::allocator<libtorrent::storage_interface* (*)(libtorrent::storage_params const&, libtorrent::file_pool&)>, libtorrent::storage_interface* (libtorrent::storage_params const&, libtorrent::file_pool&)>::target(std::type_info const&) const' from file '/usr/local/lib/libtorrent-rasterbar.a(create_torrent.cpp.o)' to global weak symbol 'typeinfo name for libtorrent::storage_interface* (*)(libtorrent::storage_params const&, libtorrent::file_pool&)' from file 'src/base/libqbt_base.a(mocs_compilation.cpp.o)' means the weak symbol cannot be overridden at runtime. This was likely caused by different translation units being compiled with different visibility settings.
And also makes the binary a bit smaller.
https://gcc.gnu.org/onlinedocs/gcc-13.2.0/gcc/Code-Gen-Options.html#index-fvisibility
PR #19921 .
2023-11-14 14:07:04 +08:00
sledgehammer999
20bfd392ff
Sync translations from Transifex and run lupdate
2023-11-14 03:05:55 +02:00
Vladimir Golovnev
8cc8ffabb0
Improve Torrent files watcher internals
...
PR #19924 .
2023-11-13 14:27:04 +03:00
Vladimir Golovnev
2a20764d39
Add option to enable ".unwanted" folder
...
PR #19926 .
2023-11-13 14:25:27 +03:00
Chocobo1
9d6d3a30eb
Improve performance of getting torrent numbers via WebAPI
...
PR #19919 .
2023-11-12 17:12:02 +08:00
Chocobo1
b67da4bebe
Use natural sort for categories
...
PR #19920 .
2023-11-12 17:11:39 +08:00
sledgehammer999
8e39ac7efd
Merge pull request #19918 from sledgehammer999/webui_opt
...
WebUI: Minor optimizations to the login page
2023-11-11 16:00:26 +02:00
Vladimir Golovnev
fb497f3410
WebUI: Correctly set save path in RSS rules
...
PR #19916 .
Closes #19915 .
2023-11-11 16:04:13 +03:00
sledgehammer999
5d1d3fcf57
WebUI: Minor optimizations to the login page
2023-11-10 16:22:52 +02:00
Vladimir Golovnev
0f40fad74d
Drop WebUI default credentials
...
PR #19777 .
2023-11-10 07:18:42 +03:00
vik
28b5d7230c
WebUI: Remove extra ')' in QBT_TR macro
...
PR #19894 .
2023-11-08 08:32:25 +03:00
Vladimir Golovnev
c88bd7cb3f
Improve free disk space checking for WebAPI
...
Use single free disk space checker instance for all the web sessions.
PR #19855 .
Closes #19732 .
2023-11-07 12:44:27 +03:00
thalieht
30d9978c97
Add copy comment functionality to the torrent list's context menu
...
PR #19846 .
Closes #18890 .
2023-11-07 12:42:31 +03:00
xavier2k6
f067ab1692
WebUI: Add "Moving" filter to side panel
...
PR #19870 .
2023-11-06 16:23:59 +03:00
Chocobo1
bcfa251290
GHA CI: speed up boost installation
...
Here is some benchmark for various archive formats:
```
gz
0m11.384s
0m11.495s
0m11.193s
zip
0m14.159s
0m14.416s
0m13.917s
7z
0m17.569s
0m17.295s
0m18.496s
bz2
0m31.519s
0m28.885s
0m29.510s
```
Looking by compressed size, bz2 is the best. However its decompressing
speed is the slowest. bz2 and gz file size only differs by ~20MB
and this difference is neglectable given the network speed on
Github. So switch to gz format to speed up CI build time.
PR #19867 .
2023-11-06 14:10:51 +08:00
Chocobo1
f49507cb58
Exclude identical strings
...
This gives slightly smaller final binary.
https://doc.qt.io/qt-6/linguist-lrelease.html#lrelease-options
>If the translated text is the same as the source text, exclude the
>message.
2023-11-06 14:10:27 +08:00
Chocobo1
606c23d1a4
Use highest compression algorithm & level
...
https://doc.qt.io/qt-6/resources.html#compression
2023-11-06 14:10:27 +08:00
Chocobo1
7c0e3baf5f
Drop support for 32-bit Windows
...
PR #19865 .
2023-11-06 14:10:01 +08:00
Chocobo1
6cfbc02d8f
Expose Mark-of-the-Web setting in Options
2023-11-06 14:09:34 +08:00
Chocobo1
794cce38f3
Move some functions into Utils::OS namespace
...
Also remove `Utils::Misc::getUserIDString()` since there are no use of
it.
2023-11-06 14:09:34 +08:00
sledgehammer999
f20f009b78
Sync translations from Transifex and run lupdate
2023-11-05 21:57:07 +02:00
Vladimir Golovnev
e216a9cf53
Keep unwanted files in separate folder
...
PR #19842 .
Closes #13531 .
2023-11-05 11:00:06 +03:00
dependabot[bot]
7f57324655
GHA CI: Bump github actions versions
...
PR #19784
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2023-11-05 13:31:06 +08:00
xavier2k6
0186f44bf4
Use appropriate icon for "moving" torrents in transfer list
...
PR #19821 .
2023-11-04 12:09:47 +03:00
MartinKing01
6b53c57157
Fixed typo in the installer's hungarian translation
...
PR #19830 .
2023-11-03 10:30:50 +03:00
Bartu Özen
5db2c2c2be
WebUI: Fix incorrect subcategory sorting
...
PR #19833 .
Closes #19756 .
2023-11-02 11:35:42 +03:00
Vladimir Golovnev
cecbb44a03
Allow to request torrents count via WebAPI
...
PR #19831 .
Closes #19731 .
2023-11-02 11:12:32 +03:00
Vladimir Golovnev
4a20a1660e
Correctly handle changing save path of torrent w/o metadata
...
PR #19829 .
Closes #19824 .
2023-11-01 09:22:32 +03:00
Vladimir Golovnev
eddfaedc4d
Update size of selected files when selection is changed
...
PR #19827 .
Closes #19818 .
2023-11-01 09:21:39 +03:00
Vitaly Cheptsov
e42d3f38cc
Fix .torrent file upload on iPadOS
...
Mobile Safari on iOS does report `ios` platform, but iPadOS reports `mac`
instead. It is common sense to check for touch points when this happens
to differentiate Mac and iPad.
PR #19822 .
Closes #19057 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2023-11-01 09:19:52 +03:00
Vladimir Golovnev
e7f38ec6ce
Don't forget to delete TorrentContentAdaptor instance
...
PR #19825 .
Closes #19816 .
2023-10-31 10:20:23 +03:00
iomezk
a689ccf798
Add missing main window icon
...
PR #19815 .
---
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2023-10-31 10:18:35 +03:00
Chocobo1
7bd8f262db
Disable "limit virtual memory" routine on macOS
...
This has no effect on macOS.
https://stackoverflow.com/questions/3274385/how-to-limit-memory-of-a-os-x-program-ulimit-v-neither-m-are-working
Closes #18656 .
PR #19805 .
2023-10-29 17:41:38 +08:00
Chocobo1
98576dacae
Add support for quarantine on macOS
2023-10-29 17:41:08 +08:00
Chocobo1
b4642ca9d3
Use proper fallback value for Mark-of-the-Web URL
...
References:
https://chromium.googlesource.com/chromium/src.git/+/refs/heads/main/components/services/quarantine/quarantine_win.cc#211
https://hg.mozilla.org/mozilla-central/file/bd568ad893882d37f094d43cba3f62c78982cd05/toolkit/components/downloads/DownloadIntegration.sys.mjs#l537
2023-10-29 17:41:08 +08:00
Chocobo1
9b924c1931
Drop support for Windows < 10
2023-10-29 17:40:02 +08:00
Chocobo1
de2ba53f08
GHA CI: don't override cmake default CXXFLAGS
2023-10-29 17:40:02 +08:00
Chocobo1
031be41491
Bump Windows macro versions
2023-10-29 17:40:02 +08:00
Chocobo1
c671b7059e
Drop unsupported keys
2023-10-29 17:40:02 +08:00
Chocobo1
347124812e
Migrate away from deprecated functions
2023-10-29 17:40:02 +08:00
AgentConDier
bf95eb50da
WebUI: Fix duplicate scrollbar on Transfer List
...
The overlay scrollbars introduced in Firefox 100 take up no space,
breaking the existing overflow detection.
Add an extra check for `scrollHeight != clientHeight` which is able to
detect an overflow independent of scrollbar style.
PR #19779 .
---------
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2023-10-29 17:39:30 +08:00
Vladimir Golovnev
ee9390fecd
Fix Enter key behavior when add new torrent
...
PR #19787 .
Closes #19760 .
2023-10-28 10:42:37 +03:00
Vladimir Golovnev
12674d2990
Prevent crash due to race condition when adding magnet link
...
PR #19792 .
2023-10-28 10:41:53 +03:00
Hanabishi
35e4b35d12
Make WebUI error non-fatal
...
* Do not exit the app when WebUI is failed for start.
* Print the error to stdout.
PR #19697 .
Closes #19695 .
Closes #19469 .
2023-10-24 13:32:21 +03:00
Vladimir Golovnev
6860c0d60d
Allow to set qBittorrent as default program
...
Register qBittorrent as possible default program for .torrent files and
magnet links during install.
PR #19446 .
2023-10-24 13:31:01 +03:00
Vladimir Golovnev
9de32a78f1
Improve NSIS scripts
...
* Improve NSIS scripts
* CI: Create installer for Windows build artifacts
PR #19728 .
2023-10-20 09:04:56 +03:00
Chocobo1
8d5022c715
Combine CSS properties
...
PR #19730 .
2023-10-19 12:07:36 +08:00
Vladimir Golovnev
921be09d8f
Git: Ignore all compiled translation files (*.qm) and DLLs
...
PR #19726 .
2023-10-18 10:53:55 +03:00
Vladimir Golovnev
116b05009d
CI: Use dynamic MSVC run-time library
...
Otherwise, there is a conflict of run-time libraries used (since Qt DLLs are still use dynamic MSVCRT) that leads to strange errors.
PR #19718 .
Closes #19701 .
2023-10-17 21:31:55 +03:00
Chocobo1
63499511cb
Forward declare "Add torrent manager" type
...
PR #19713 .
2023-10-16 14:52:09 +08:00
Chocobo1
413e7dd3c4
GHA CI: use proper git URL
...
The `repo` value will be used by `git clone` command and therefore the
URL should end with `.git` for repos on Github.
https://pre-commit.com/#repos-repo
PR #19710 .
2023-10-16 14:51:43 +08:00
Chocobo1
cba433823f
Improve .torrent associate handling
...
* Use correct pointer type in NSIS scripts
* Only remove qbt specific registry keys when uninstalling or disassociating
* Set .torrent Content Type when associating .torrent format
* Move ".torrent association" functions to Utils::OS class
PR #19709 .
2023-10-16 14:51:17 +08:00
Hanabishi
90e023f138
Fix WebUI greeting for qbittorrent-nox
...
* Check if WebUI is enabled and print an appropriate message otherwise.
* Print an actual runtime server scheme, address and port.
PR #19696 .
2023-10-16 14:48:32 +08:00
Nick Korotysh
e6ec3d0c2b
Display download/upload speed in dock icon
...
Implementation is based on Transmission sources.
Closes #2761
Closes #3671
Closes #7098
Closes #11350
Closes #18527
PR #19595
2023-10-16 14:45:24 +08:00
xavier2k6
d60f9c6142
GHA CI: Update numerous pre-commit revisions and fixed typo
...
Updated:
* pre-commit-hooks -> 4.5.0
* codespell -> 2.2.6
* typos -> 1.16.18
Note:
fixed a typo from previous "test run" of codespell 2.2.6 (L151) `dist\windows\config.nsi` - `unistaller` -> `uninstaller`
PR #19699 .
2023-10-14 03:57:08 +08:00
thalieht
a3888811f6
Add I2P settings to WebUI
...
PR #19700 .
2023-10-13 21:30:25 +03:00
Vladimir Golovnev
30189ae943
Allow to remove tracker from tracker filter widget menu
...
PR #19681 .
Closes #11100 .
2023-10-11 21:58:05 +03:00
Urek Mazino
ec90d169c0
Change author name
...
PR #19682 .
2023-10-09 10:21:29 +03:00
Vladimir Golovnev
3ca0939411
Add separate filter item for tracker errors
...
* Add separate filter item for tracker errors
* Rename "Error" filter item to "Other error"
PR #19672 .
2023-10-07 15:41:05 +03:00
Chocobo1
34f7b75f12
Add support for Mark-of-the-Web
...
https://redcanary.com/threat-detection-report/techniques/mark-of-the-web-bypass/
https://mikehadlow.blogspot.com/2011/07/detecting-and-changing-files-internet.html
https://textslashplain.com/2016/04/04/downloads-and-the-mark-of-the-web/
Closes #19648 .
PR #19675 .
2023-10-07 12:28:07 +08:00
Vladimir Golovnev
c051ee9409
Revamp tracker list widget
...
Internally redesign tracker list widget using Qt Model/View architecture.
Make tracker list sortable by any column.
PR #19633 .
Closes #261 .
2023-10-03 08:42:05 +03:00
Vladimir Golovnev
70b438e6d9
Improve GUI behavior when adding multiple torrents
...
Allows you to bring the main window to the front when one or more "Add new torrent" dialogs are open.
Also allows you to minimize/maximize the "Add new torrent" dialog.
PR #19670 .
Closes #17919 .
2023-10-03 08:40:25 +03:00
Vladimir Golovnev
73028f9930
Double check whether database needs to be updated
...
Prevents qBittorrent from being failed to start after torrents database metadata is corrupted by one of the first releases of v4.5.x series.
PR #19668 .
Closes #19622 .
2023-10-01 20:59:27 +03:00
Chocobo1
bda18ad29b
Add logging for some alerts
...
Specifically these alerts:
* i2p_alert
* session_error_alert
PR #19662 .
2023-09-30 11:43:44 +08:00
Chocobo1
0404ff9fb3
Migrate away from deprecated function
...
`QStyle::standardPixmap()` is deprecated.
PR #19660 .
2023-09-30 11:43:11 +08:00
Chocobo1
47439a7efd
Use reference when parsing URL query
...
PR #19659 .
2023-09-30 11:42:35 +08:00
Vladimir Golovnev
16111496ca
Improve handling the case when torrent enters/leaves trackerless state
...
PR #19658 .
2023-09-29 07:34:21 +03:00
Vladimir Golovnev
43e9403a4c
Filter out duplicate trackers when replacing
...
PR #19656 .
2023-09-29 07:33:19 +03:00
Vladimir Golovnev
7ab90cfc40
Don't forget to delete worker thread object
...
PR #19655 .
2023-09-29 07:32:09 +03:00
Chocobo1
b3fda76027
Allow users to specify Python executable path
...
Closes #19195 .
PR #19644 .
2023-09-28 01:27:48 +08:00
Chocobo1
529e49aea7
Fix performance regression
...
Follow up #19417 .
PR #19652 .
2023-09-28 01:26:57 +08: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
xavier2k6
cacae42e5e
Bump OpenSSL requirement to 3.0.2
...
Addresses:
* [CVE-2022-0778](https://github.com/advisories/GHSA-x3mh-jvjw-3xwx )
* [OpenSSL 1.1.1 End of Life](https://www.openssl.org/blog/blog/2023/09/11/eol-111/ )
PR #19638 .
2023-09-26 06:51:53 +03:00
Jay
f3b688217e
Show RSS feed title in HTML browser
...
RSS feed title will be displayed on top of the HTML browser when 'Unread' is selected in feed list.
PR #19604 .
2023-09-20 13:15:08 +03:00
Vladimir Golovnev
5e5c6aa7d8
Don't show outdated tracker message
...
PR #19616 .
Closes #19612 .
2023-09-20 13:12:54 +03:00
Chocobo1
88d32d57ab
GHA CI: enable run-time checks in C++ library
...
Those have minimal impact on run-time:
https://www.gnu.org/software/libc/manual/html_node/Source-Fortification.html
https://bugs.launchpad.net/kicad/+bug/1838448/comments/40
PR #19608 .
2023-09-19 00:25:02 +08:00
Priit Uring
1537f1e703
Sync flag icons with upstream
...
* Includes all 268 flags.
* Upstream commit `a7b7c3c55560cb39d96e70324876e1bb5b1c625b` - (Release v6.11.0)
* Flags source from (zip): https://github.com/lipis/flag-icons/releases/tag/v6.11.0
PR #19518 .
2023-09-18 19:13:16 +03:00
Trim21
30badbf36e
WebUI: fix missing error icon
...
PR #19610 .
Closes #18737 .
2023-09-18 16:42:03 +03:00
Vladimir Golovnev
5a334175a8
Use Fusion style on Windows 10+
...
PR #19051 .
2023-09-18 08:38:35 +03:00
Chocobo1
dcba9eda00
Expose 'DHT bootstrap nodes' setting
...
This allows user to select DHT bootstrap nodes. Or even use their own bootstrap nodes.
PR #19594 .
2023-09-14 13:57:34 +08:00
Vladimir Golovnev
633167a6da
Prevent torrent from being started unexpectedly
...
Improves "Metadata received" stop condition handling by "Add new torrent" dialog.
The problem is when "Metadata received" stop condition is set the metadata can still be received 0.1 sec before clicking the "OK" button so torrent is actually added with metadata and therefore it cannot respect "Metadata received" stop condition.
The solution is to uncheck "Start torrent" checkbox once metadata is received.
PR #19597 .
Closes #19583 .
2023-09-13 15:48:13 +03:00
Hanabishi
c394868f87
Implement Reannounce In
column
...
PR #19571 .
2023-09-09 08:12:43 +03:00
Vladimir Golovnev
2deb7eb3d9
Don't limit max RSS feed file size
...
PR #19576 .
2023-09-08 09:19:16 +03:00
Chocobo1
d19f4c2e1f
GHA CI: bump versions
2023-09-07 15:30:01 +08:00
Chocobo1
22f63468a2
GHA CI: introduce dependabot updates
...
https://docs.github.com/en/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
2023-09-07 15:30:01 +08:00
Chocobo1
479639162d
GHA CI: simplify vcpkg commands
2023-09-07 15:30:01 +08:00
Chocobo1
5b57abc7d8
GHA CI: add checking for doc
...
And also regenerate man pages with latest pandoc
2023-09-07 15:28:43 +08:00
Chocobo1
d841dda654
Make the AUTHORS
strings translatable
2023-09-07 15:28:43 +08:00
Chocobo1
4cf933b4fc
Update URL
2023-09-07 15:28:43 +08:00
Vladimir Golovnev
7cd2445a49
Improve tracker entries handling
...
PR #19496 .
* Add torrent entry status to represent tracker error
* Add torrent entry status to represent unreachable endpoint
* Display tracker entry next/min announce time
* Reset tracker entries when torrent is stopped
2023-09-07 08:58:13 +03:00
yuri@FreeBSD
2f94c92df9
Enable DBUS cmake option on FreeBSD
...
PR #19559 .
2023-09-05 11:23:50 +03:00
Chocobo1
39efd0e9ff
Remove thin space
...
Generally qbt doesn't put a space before percentage symbol.
This change makes the UI elements consistent.
2023-09-04 13:10:12 +08:00
Chocobo1
ff80e0ce66
Use Qt built-in non-breaking space variable
2023-09-04 13:10:12 +08:00
Victor Chernyakin
65930ddf94
Use std::pair
instead of QPair
...
PR #19548 .
2023-09-03 09:39:34 +03:00
Chocobo1
4d2015cfed
Support creating .torrent with larger piece size
...
Warning: users are at their own discretion to create .torrent with >= 64 MiB piece size as not
every torrent client supports it.
Larger piece sizes are only available when using libtorrent 2.x. libtorrent 1.x is not
efficient with memory usage and in order to avoid user complaints it is limited to 128 MiB.
Also note that, as of this writing, libtorrent 2.0.9 has an internal limitation that only
allows loading maximum 256 MiB piece size. And therefore > 256 MiB size options are forbidden
for now.
Closes #19527 .
PR #19535 .
2023-09-03 14:31:32 +08:00
Victor Chernyakin
2dc1a7d66f
Set up infrastructure for localized man pages
...
PR #19515 .
2023-09-02 21:38:37 +03:00
Matic Babnik
145971b915
Add "Add Tags" field for RSS rules in WebUI
...
PR #19519 .
2023-09-02 21:37:53 +03:00
Chocobo1
43e3d0b4b2
Make the title label selectable
...
And therefore its text is copyable.
2023-09-01 00:18:25 +08:00
Chocobo1
0fdb1b3f53
Add button to copy library versions to clipboard
...
Closes #18702 .
2023-09-01 00:18:25 +08:00
Chocobo1
24da51ffa0
Perform type conversion properly
...
Closes #19521 .
PR #19525 .
2023-09-01 00:18:03 +08:00
sledgehammer999
e434812cda
Bump copyright year
2023-08-29 00:17:23 +03:00
sledgehammer999
9a1df0c595
Pull translations from Transifex
2023-08-29 00:05:14 +03:00
Victor Chernyakin
44763d3e15
Fix duplicated text in GitHub's SUPPORT.md
...
PR #19508 .
2023-08-28 13:52:34 +03:00
Xu Chao
9a73a21f3f
Don't set parent of "Add new torrent dialog" on macOS
...
PR #19494 .
Closes #12849 .
Closes #12852 .
Closes #19072 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2023-08-28 13:50:36 +03:00
Victor Chernyakin
e045b4678d
Use std::clamp()
instead of various custom implementations
...
PR #19501 .
2023-08-27 21:55:08 +03:00
Chocobo1
d8a03cd8d8
Use atomic primitives from standard library
...
QAtomicInteger underlying is using std::atomic structures, so
using std::atomic directly should not be a problem for us.
PR #19507 .
2023-08-28 02:08:40 +08:00
Xu Chao
270c63d64c
Open "Save path" if torrent has no metadata
...
PR #19495 .
Closes #18738 .
2023-08-27 08:38:59 +03:00
rcarpa
bbac94cc95
Use QThreadPool for torrent creation
...
The change is in preparation for adding the possibility to create
torrent files via the API.
Rework TorrentCreatorThread to be a more lightweight QRunnable class.
The parameters are now defined on construction time and are fixed
throughout the lifecycle of the TorrentCreator. The lifecycle of the
object is not bound to the one of QDialog anymore; it is now handled
by the QThreadPool. This will enable easier queueing of multiple torrent
creation jobs without risk of spawning many threads.
PR #19500 .
2023-08-27 00:27:11 +08:00
Vladimir Golovnev
9ab8203c8a
Don't overwrite tracker entry of unrelated protocol
...
PR #19493 .
2023-08-23 12:38:18 +03:00
Vladimir Golovnev
c805606524
Improve tracker entries handling
...
PR #19468 .
* Use QHash to map tracker endpoints
* Don't clear numPeers unexpectedly
* Remove outdated tracker entry endpoints
* Move presentation logic from Core to GUI code
* Show all endpoints per tracker in tree structure
---------
Co-authored-by: Kacper Michajłow <kasper93@gmail.com >
2023-08-21 10:27:19 +03:00
Victor Chernyakin
34d30ed031
Replace Q_UNUSED
with [[maybe_unused]]
attribute
...
PR #19471 .
2023-08-18 07:09:40 +03:00
Victor Chernyakin
f3f4610ba4
Convert Windows header names to lowercase
...
PR #19465 .
2023-08-16 10:29:13 +03:00
xavier2k6
21b77cb4f8
GHA CI: Bump Windows/macOS Boost version to 1.83.0
...
PR #19453 .
2023-08-15 14:04:44 +03:00
Vladimir Golovnev
dcf3e97291
Implement gateway for adding new torrents
...
PR #19355 .
2023-08-14 18:17:56 +03:00
Victor Chernyakin
e4313d6651
Use using declarations instead of typedef
...
PR #19458 .
2023-08-14 18:14:36 +03:00
Victor Chernyakin
52fbb774a2
Disable clang-tidy for 3rd-party code
...
PR #19459 .
2023-08-14 18:13:28 +03:00
Vladimir Golovnev
a0e41a11de
Display error message when unrecoverable error occurred
...
PR #19462 .
2023-08-14 16:03:57 +03:00
Vladimir Golovnev
cab5edb721
Add more precondition checks when handle async operation result
...
PR #19460 .
2023-08-14 16:02:50 +03:00
Vladimir Golovnev
7a9a102b6f
Check returned Bundle ID for NULL
...
PR #19463 .
2023-08-14 16:01:54 +03:00
Omar Abdul Azeez
6ba561dea2
Fix overwriting feeds.json with an incomplete load of it
...
PR #19444 .
Closes #19439 .
---------
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2023-08-12 18:59:24 +03:00
Vladimir Golovnev
56ba5e5182
Correctly load colors from custom themes
...
PR #19448 .
Closes #19447 .
2023-08-12 18:57:34 +03:00
Chocobo1
69d60b5f1c
Specify interface requirements as an C++ concept
...
PR #19440 .
2023-08-12 20:53:03 +08:00
Victor Chernyakin
850da9dd83
Replace Q_UNLIKELY with [[unlikely]] attribute
...
PR #19445 .
2023-08-11 08:54:26 +03:00
Chocobo1
502b3d3228
Merge pull request #19427 from Chocobo1/cleanup
...
Remove unused include
2023-08-11 13:49:35 +08:00
Victor Chernyakin
c25d14b1d0
Specify charset and end_of_line in .editorconfig
...
Additionally, changes the link to the EditorConfig website
from http to https.
PR #19437 .
2023-08-11 13:49:07 +08: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
Chocobo1
870bcc7a19
Switch to QHash
2023-08-09 20:36:41 +08:00
Chocobo1
44f0a63354
Remove unused include
2023-08-09 20:36:39 +08:00
Chocobo1
9fa48a375d
Merge pull request #19428 from Chocobo1/boost
...
Bump boost requirement to 1.76
2023-08-09 20:34:43 +08:00
Victor Chernyakin
f2b4aa6570
Remove unused parameter in Utils::Gui::scaledPixmap()
...
PR #19426 .
2023-08-09 20:34:12 +08:00
Chocobo1
5c06d0aa75
Replace template conditionals with C++20 requires
clause
...
Related: https://clang.llvm.org/extra/clang-tidy/checks/modernize/use-constraints.html
PR #19424 .
2023-08-09 20:33:19 +08:00
Chocobo1
4d98761e99
GHA CI: remove redundant conditionals
2023-08-08 23:56:04 +08:00
Chocobo1
180e708f3c
Bump boost requirement to 1.76
...
std::hash specialisations for boost::asio structures is required.
2023-08-08 23:56:03 +08:00
Chocobo1
da4f2c2439
GHA CI: install boost from upstream
2023-08-08 23:55:30 +08:00
Vladimir Golovnev
33d767b765
Disable using Qt functions deprecated up to Qt 6.5
...
* Disable using Qt functions deprecated up to Qt 6.5
* Utilize QSet::removeIf()
PR #19419 .
2023-08-08 08:52:13 +03:00
Vladimir Golovnev
06581636a1
Utilize QByteArrayView
...
PR #19417 .
2023-08-07 11:21:32 +03:00
Vladimir Golovnev
a0fa1709d5
Raise minimum supported Qt version to 6.5
...
PR #19394 .
2023-08-07 07:19:43 +03:00
Chocobo1
699dc1689a
Remove column span
...
The property widget already has scroll bars and thus we don't need this span.
Closes #15000 .
PR #19404 .
2023-08-04 13:01:08 +08:00
Chocobo1
a427b9228d
Ensure file name is valid when exporting torrents
...
Closes #19275 .
Closes #19329 .
PR #19403 .
2023-08-04 13:00:48 +08:00
Jimmy Axenhus
c4ed40b82f
Set property instead of set attribute
...
This commit resolves an issue with Safari not properly selecting an `<option>`.
Closes #17866 .
PR #19024 .
2023-08-03 13:34:24 +08:00
Chocobo1
e68cf87f05
Merge pull request #19396 from Chocobo1/ci
...
GHA CI: specify a category for CodeQL analysis
2023-08-03 11:41:40 +08:00
Vladimir Golovnev
fccdeb4e78
Don't use variable after it is moved
...
PR #19397 .
2023-08-02 15:04:15 +03:00
Chocobo1
431860482c
GHA CI: specify a category for CodeQL analysis
2023-08-01 15:27:04 +08:00
Chocobo1
d554db4f4e
Revise wording
2023-08-01 15:27:04 +08:00
Chocobo1
6c16a09385
Guard against potential negative number
2023-08-01 15:27:04 +08:00
Chocobo1
b35c2bca5d
Merge pull request #19390 from Chocobo1/openssl
...
Remove unused conditional
2023-08-01 12:57:12 +08:00
Chocobo1
852927bf50
Use qreal
type whenever feasible
...
The idea is follow Qt and use `qreal` instead of `double` for generic code.
2023-07-31 03:50:49 +08:00
Chocobo1
a5a4ea9ba0
Remove unused conditional
2023-07-31 03:03:02 +08:00
MarcDrieu
45ca5d31c9
NSIS: Update French translation
...
PR #19284 .
2023-07-28 10:36:26 +03:00
rusu-afanasie
b14740aeac
NSIS: Add Romanian translation
...
PR #19377 .
2023-07-28 10:34:48 +03:00
xavier2k6
5b0706df65
GHA CI: Bump Qt version to 6.5.2
...
PR #19378 .
2023-07-27 17:45:26 +03:00
Vladimir Golovnev
11efd26acc
Fix crash on application exit (Qt 6.5)
...
PR #19169 .
2023-07-27 15:09:14 +03:00
Vladimir Golovnev
006ad23d0d
Map selected indexes to source before modify the data
...
Changing the data may affect the layout of the sort/filter model, which in turn may invalidate the indexes previously obtained from selection model before we process them all. Therefore, we must map all the selected indexes to source before start processing them.
PR #19372 .
Closes #19359 .
2023-07-26 18:19:32 +03:00
Peter Dave Hello
9975230dea
Update Transifex link in TRANSLATION_INSTRUCTIONS
...
PR #19366 .
2023-07-25 15:28:56 +03:00
Chocobo1
e31c3376bd
Use library provided erase_if()
...
`Algorithm::removeIf()` is still valuable as `QHash::removeIf()` predicate require an
iterator or a `std::pair`, which both require more code to unpack the variable and therefore
cumbersome to use.
PR #19353 .
2023-07-24 20:29:02 +08:00
Chocobo1
9898901236
Merge pull request #19349 from Chocobo1/c++20
...
Use default operators generated/synthesized by compiler
2023-07-23 12:54:44 +08:00
Chocobo1
56c52af124
Mark override
for virtual destructors
...
PR #19348 .
2023-07-22 12:46:21 +08:00
Chocobo1
c20a77aa77
Merge pull request #19346 from Chocobo1/powerMgt
...
Avoid excessive power management updates
2023-07-22 12:45:55 +08:00
Chocobo1
d6adebe4c0
Switch to efficient algorithm
2023-07-22 04:11:39 +08:00
Chocobo1
c58aa58cba
Use C++20 designated initializers
2023-07-22 02:25:44 +08:00
Chocobo1
7612d5d0ef
Use default operators generated/synthesized by compiler
2023-07-22 02:25:44 +08:00
Chocobo1
1874fd7f93
Fix incorrect state
...
Fix up f3f9cfe44e
.
2023-07-22 01:59:36 +08:00
Chocobo1
0bcc1cf4a0
Fix indentation
2023-07-21 20:41:00 +08:00
Chocobo1
cffcf5783f
Avoid excessive power management updates
2023-07-21 20:39:25 +08:00
Vladimir Golovnev
10ee1ab7a2
Switch to C++20
...
PR #19336 .
2023-07-21 15:38:49 +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
d554f4d44a
Always use QStyledItemDelegate as base of delegate classes
...
PR #19340 .
2023-07-21 08:37:11 +03:00
Chocobo1
d357cdd5f9
Set power state to idle when deconstructing class
2023-07-21 12:19:29 +08:00
Chocobo1
0f862fcf9f
Use efficient algorithm for removing entries
...
PR #19345 .
2023-07-21 12:18:26 +08:00
Chocobo1
6bd56478fd
Merge pull request #19344 from Chocobo1/systemd
...
Add support for systemd power management
2023-07-21 12:17:49 +08:00
Chocobo1
76b5ca6b8b
Remove debugging messages
...
As requested in https://github.com/qbittorrent/qBittorrent/pull/19344#discussion_r1269156895
2023-07-20 18:05:40 +08:00
Chocobo1
dbb1b1e9bb
Use default timeout
2023-07-20 18:05:39 +08:00
Chocobo1
b5fbfdf106
Use correct type
...
https://doc.qt.io/qt-6/qdbustypesystem.html
https://dbus.freedesktop.org/doc/dbus-specification.html#id-1.3.8
2023-07-20 18:05:39 +08:00
Chocobo1
f3f9cfe44e
Add support for systemd power management
2023-07-20 18:05:39 +08: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
Vladimir Golovnev
5e610cfdcf
Drop support of Autoconf/Automake and QMake
...
PR #19335 .
2023-07-20 11:15:46 +03:00
Chocobo1
2c08dc9dad
Merge pull request #19333 from Chocobo1/clean
...
Change default power management to Gnome Session Manager
2023-07-20 13:04:13 +08:00
Chocobo1
15b46259f3
Add logging
2023-07-19 00:50:01 +08:00
Chocobo1
d569eaa991
Revise message
2023-07-19 00:49:58 +08:00
Chocobo1
64c3845a7c
Detect D-Bus interface
2023-07-18 22:31:52 +08:00
Chocobo1
79afa0b84d
Clean up coding style
2023-07-18 20:41:21 +08:00
Chocobo1
38d773ca46
Change default power management to Gnome Session Manager
...
As seen on https://www.freedesktop.org/wiki/Specifications/power-management-spec/ ,
the `org.freedesktop.PowerManagement` is obsolete.
2023-07-18 20:41:19 +08:00
axet
9194f60ac0
Inhibit suspend instead of screen idle
...
PR #19316 .
Closes #19312 .
2023-07-18 15:40:17 +03:00
Vladimir Golovnev
4a217dc42f
Don't initialize Properties widget size until window is shown
...
PR #19328 .
Closes #19322 .
2023-07-18 15:06:27 +03:00
Vladimir Golovnev
9171b73edb
WebUI: use new format of RSS rules
...
PR #19326 .
Fixes regression of #18824 .
Closes #19323 .
2023-07-18 15:05:17 +03:00
sledgehammer999
0f0de5e4f8
Bump to v5.0.0alpha1
2023-07-17 09:25:50 +03:00
sledgehammer999
c1d64cc3ea
Sync translations from Transifex and run lupdate
2023-07-17 09:14:36 +03:00
Vladimir Golovnev
57085ca126
Use previous approach of deducing favicon URL
...
PR #19325 .
Fixes regression of #19062 .
Closes #19307 .
2023-07-17 08:11:07 +03:00
Vladimir Golovnev
7b4b7c2b81
Always honor the configured behavior for merging trackers
...
PR #19305 .
* Always honor the configured behavior for merging trackers
* Clarify merging trackers related options
2023-07-16 20:59:18 +03:00
Vladimir Golovnev
6a3a5fac83
Correctly add new column to existing database
...
PR #19321 .
2023-07-15 20:49:51 +03:00
Christopher
35e18498d9
Add option to stop seeding when torrent has been inactive
...
PR #19294 .
Closes #533 .
Closes #8073 .
Closes #15939 .
2023-07-15 13:14:42 +03:00
Vladimir Golovnev
f99a98306d
Log when duplicate torrents are being added
...
PR #19306 .
Closes #18458 .
2023-07-14 15:33:06 +03:00
Chocobo1
b0cfe53329
Merge pull request #19302 from Chocobo1/connection
...
Move signal/slot connections out of .ui files
2023-07-13 13:27:14 +08:00
Chocobo1
060466e326
GHA CI: fix environment variable not being used
...
Related issue: https://github.com/Wandalen/wretry.action/issues/106
A workaround was suggested in https://github.com/Wandalen/wretry.action/issues/106#issuecomment-1631860467
PR #19303 .
2023-07-13 13:26:47 +08:00
Chocobo1
392949b313
Rename variable to avoid name clash
2023-07-13 00:34:33 +08:00
Chocobo1
b17307f283
Move signal/slot connections out of .ui files
...
This unify the place (.cpp file) where we handle signal/slot connections.
2023-07-13 00:34:33 +08:00
sledgehammer999
e739d38061
Sync translations from Transifex and run lupdate
2023-07-12 01:50:01 +03:00
Chocobo1
20f4d0c4e3
Merge pull request #19292 from Chocobo1/head
...
Fix response for HTTP HEAD method
2023-07-11 11:24:28 +08:00
Chocobo1
4f6038c350
Merge pull request #19291 from Chocobo1/limits
...
Expose 'bdecode limits' settings
2023-07-11 11:24:09 +08:00
Fabricio Silva
f08556be30
WebUI: Preserve the network interfaces when down
...
PR #19286 .
2023-07-11 11:23:37 +08:00
Chocobo1
543745b3f2
Avoid stuffing the log via junk requests
2023-07-09 21:23:09 +08:00
Chocobo1
cb0c09769f
Response proper error status for invalid request methods
2023-07-09 21:23:09 +08:00
Chocobo1
e8f5a3b44e
Fix response for HTTP HEAD method
...
Closes #19288 .
2023-07-09 21:23:08 +08:00
Chocobo1
5a660fc8a9
Expose 'bdecode limits' settings
...
This includes:
* Bdecode depth limit
* Bdecode token limit
2023-07-09 15:36:13 +08:00
stalkerok
488464731d
Change some default settings
...
* Reduce default file pool size to 100
* Reduce default stop tracker timeout to 2 seconds
PR #19171 .
2023-07-06 14:25:53 +03:00
xavier2k6
fb68604ee7
Display correct Minimum Python requirement
...
PR #19281 .
2023-07-06 10:43:35 +03:00
Vladimir Golovnev
4ef9a6444a
Add options to adjust behavior of merging trackers to existing torrent
...
PR #19278 .
Closes #19251 .
2023-07-06 07:55:59 +03:00
Chocobo1
66dfe8545d
Expose 'max torrent file size' setting
2023-07-06 12:45:09 +08:00
Chocobo1
fff7b1dcbd
Merge pull request #19277 from Chocobo1/ctor
...
Don't update settings when it hasn't changed
2023-07-06 12:41:45 +08:00
Burak Yavuz
b5b1f51cee
NSIS: Update Turkish translation
...
Corrected and updated some strings
PR #19242 .
2023-07-05 09:49:00 +03:00
Chocobo1
33875aa70a
Mark singleton class as final
2023-07-05 03:32:54 +08:00
Chocobo1
9d7dad4a61
Don't unnecessarily restart Web server
...
When related settings hasn't changed.
2023-07-05 03:32:53 +08:00
Chocobo1
213b6e316c
Don't emit superfluous signal
...
`Preferences::apply()` might emit superfluous changed signal even when the settings hasn't
changed (e.g. not dirty), this commit fixes it.
2023-07-05 03:32:53 +08:00
Chocobo1
ffc3d8d345
Don't update settings when it hasn't changed
...
So when a setting is the same as the default, it won't write an entry to config file on disk.
2023-07-05 03:32:53 +08:00
Vladimir Golovnev
7ec80263e1
Allow to globally disable the use of proxy
...
PR #19273 .
Closes #19141 .
2023-07-04 09:27:46 +03:00
Chocobo1
66e533f505
Avoid redundant buffer copying
...
PR #19272 .
2023-07-04 14:04:41 +08:00
Chocobo1
045b4f0a06
GHA CI: retry flaky steps automatically
...
PR #19270 .
2023-07-03 21:19:01 +08:00
Vladimir Golovnev
80c637bf99
Always use the same limits when parse bencoded data
...
PR #19263 .
2023-07-02 11:37:37 +03:00
gdim47
48d5e3326b
Improve performance when scrolling large torrents
...
PR #19255 .
2023-07-02 11:36:42 +03:00
Chocobo1
80791e328d
Fix wrong behavior when reading text
...
Also add another 'file read error' status.
Closes #19254 .
PR #19262 .
2023-07-02 13:23:20 +08:00
Chocobo1
08a771468d
Merge pull request #19260 from Chocobo1/func
...
Fix code defects
2023-07-02 12:57:15 +08:00
Chocobo1
c3fc96dfe6
Visually validate input path in torrent creator dialog
...
PR #19245 .
2023-07-02 12:56:41 +08:00
Chocobo1
715a4f3eb6
Use move construct for large data
2023-07-01 16:28:15 +08:00
Chocobo1
8655e48336
Use move construct for shared pointers
2023-07-01 16:28:13 +08:00
Chocobo1
3c139ca333
Fix potential use-after-move
...
The evaluation order for function parameters is unspecified in C++.
https://stackoverflow.com/questions/2934904/order-of-evaluation-in-c-function-parameters
Fix up 1b2ff0f6f8
.
2023-07-01 14:38:50 +08:00
Ignat Loskutov
f4deb1050f
Disable symlink resolving in Torrent creator
...
PR #19199 .
2023-06-28 14:27:24 +03:00
Chocobo1
889ed5bce9
Merge pull request #19238 from Chocobo1/spelling
...
GHA CI: add spelling check
2023-06-27 12:26:10 +08:00
Chocobo1
6680fdda18
Fix typos
2023-06-26 16:45:44 +08:00
Chocobo1
88bd4f270f
GHA CI: add spelling check (typos)
2023-06-26 16:45:41 +08:00
Chocobo1
86a5ad3241
GHA CI: add spelling check (codespell)
2023-06-26 13:44:01 +08:00
Vladimir Golovnev
1c654d8f47
Immediately update torrent status on moving files
...
PR #19220 .
2023-06-25 12:45:58 +03:00
Vladimir Golovnev
c90863f217
Don't miss to enable Apply button
...
PR #19221 .
Closes #19082 .
2023-06-25 12:44:33 +03:00
luzpaz
deec2ae1b1
Fix various typos
...
PR #19213 .
2023-06-24 16:04:04 +03:00
sledgehammer999
f37fff31ae
NSIS: Fix missing slash in Qt translations script
...
PR #19196 .
2023-06-24 13:10:00 +08:00
Chocobo1
dffb93a6aa
Merge pull request #19208 from Chocobo1/buffer
...
Avoid unnecessary memory allocation/relocation
2023-06-24 13:03:00 +08:00
Vladimir Golovnev
3b948b0130
Drop I2P support with libtorrent 1.2
...
PR #19207 .
Closes #19152 .
2023-06-23 16:24:34 +03:00
Chocobo1
b3d2ba7d07
Initialize regex only once
...
This code path is commonly used so let it initialize only once.
2023-06-23 14:49:22 +08:00
Chocobo1
03d3552ee0
Avoid unnecessary memory allocation/relocation
2023-06-23 14:49:22 +08:00
Luka Čelebić
379b0dbe40
Add alternative shortcut CTRL+E for CTRL+F
...
PR #19190 .
2023-06-20 11:52:09 +03:00
thalieht
f213f81727
Fix transfer list tab hotkey
...
PR #19200 .
2023-06-20 07:45:17 +03:00
Chocobo1
1f2a6455b6
Merge pull request #19188 from Chocobo1/literalOperator
...
Rename literal operator
2023-06-19 12:45:20 +08:00
sledgehammer999
fc8c74989b
Bump to 4.6.0beta2
2023-06-18 21:27:12 +03:00
Chocobo1
b01a48879a
Add missing header
2023-06-18 13:51:19 +08:00
Chocobo1
e780b3a9b7
Add unit test for string literal helper
2023-06-18 13:51:19 +08:00
sledgehammer999
2bbfd317ce
Sync translations from Transifex and run lupdate
2023-06-18 01:37:12 +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
f6b58f36e2
WebUI: set Cross Origin Opener Policy to same-origin
...
This separates browsing context for different origin sites and prevents
leaking data from it.
This header is only present when using built-in WebUI. Alternative WebUI
is not affected.
https://web.dev/why-coop-coep/#coop
PR #19157 .
2023-06-14 13:38:48 +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
Chocobo1
81bc910d68
Provide context to translation strings
...
PR #19120 .
2023-06-12 14:03:12 +08:00
Vort
ff5d02bcf2
Make I2P session options configurable
...
PR #19079 .
Closes #18980 .
2023-06-06 08:35:40 +03:00
tearfur
2e87e6e0df
Use hostname instead of domain name in tracker filter list
...
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
PR #19062 .
Closes #19035 .
2023-06-05 14:57:37 +03:00
Vladimir Golovnev
a5e8af5070
Allow to assign priority to RSS download rule
...
PR #19000 .
2023-06-05 14:55:41 +03:00
Vladimir Golovnev
cf415dd7fe
Allow to disable confirmation of Pause/Resume All
...
PR #19067 .
Closes #18155 .
2023-06-04 08:57:14 +03:00
Chocobo1
83e6afcb71
Merge pull request #19069 from Chocobo1/sort
...
WebUI: use natural sort on tracker list
2023-06-04 12:52:29 +08:00
Chocobo1
62d96c068a
Remove SGML parser
...
This library is unmaintained, outdated and plugin authors are encouraged to use html.parser
from Python Standard Library instead.
https://docs.python.org/3/library/html.parser.html
PR #19068 .
2023-06-04 12:52:06 +08:00
xavier2k6
040c3c7ef8
Sync "expected lite" with upstream
...
PR #19049 .
2023-06-03 17:42:57 +03:00
Raymond Ha
3ef8726083
WebUI: Set Connection status and Speed limits tooltips
...
PR #19052 .
Fixes #18958 .
2023-06-03 17:39:58 +03:00
Chocobo1
dad9157d84
Don't overwrite original variable
2023-06-02 18:12:01 +08:00
Chocobo1
5cea69472f
Use natural sort
2023-06-02 17:44:17 +08:00
ttys3
b1492bcd7d
WebUI: Show only hosts in tracker filter list
...
PR #18190 .
2023-06-02 17:36:33 +08:00
sledgehammer999
d571ab2be1
Update AppVeyor config
...
The config needs some updating to accommodate the new structure.
PR #19030 .
2023-06-02 17:02:31 +08:00
Vladimir Golovnev
4550469bb9
Fix incorrect height of Filter line edit
...
PR #19058 .
2023-06-02 11:47:53 +03:00
Vladimir Golovnev
160af4feef
Show I2P peer addresses
...
PR #18845 .
2023-06-01 17:16:03 +03:00
Priit Uring
b27e839405
Sync flag icons with upstream
...
PR #19027 .
2023-06-01 06:49:09 +03:00
sledgehammer999
ecc08dee09
Bump to 4.6.0beta1
2023-05-29 16:03:44 +03:00
Chocobo1
11ac4e7620
GHA CI: upload macOS bundles
...
Hopefully those bundles will be runnable on users machine.
PR #19023 .
2023-05-29 12:24:12 +08:00
Chocobo1
fbe93f0c47
Improve "apply memory working set" routine
...
Now it will try to raise the hard limit.
And also the log shows a more specific message when the new limit is not
applicable.
PR #19022 .
2023-05-28 13:41:44 +08:00
sledgehammer999
11945eef3f
Sync translations from Transifex and run lupdate
2023-05-28 01:40:37 +03:00
Raymond Ha
a35dbc6df7
WebUI: Fix category save path
...
PR #19008 .
2023-05-26 11:52:37 +03:00
Chocobo1
3fb4e4d293
GHA CI: build libtorrent as a static library
...
Since appimage is bundling the libraries it make sense to embed libtorrent statically into qbt binary.
Another side effect is now qbt binary includes debug symbols from libtorrent too (which I consider a good thing for debugging). Previously appimage seems to (unnecessarily) strip the libtorrent debug symbols.
PR #19014 .
2023-05-25 13:08:53 +08:00
Vladimir Golovnev
f5a4065101
Raise minimum libtorrent versions
...
PR #19011 .
2023-05-25 06:31:28 +03:00
xavier2k6
ba93d55a6d
GHA CI: Bump libtorrent version(s)
...
PR #19006 .
2023-05-24 05:10:57 +03:00
Vladimir Golovnev
a59301712e
Avoid race condition when waking worker thread
...
PR #19005 .
2023-05-23 02:22:16 +03:00
Chocobo1
b406d669b3
Bump python version minimum requirement
...
PR #18996 .
2023-05-22 12:37:02 +08:00
Chocobo1
4ef8f39f23
Use python isolate mode
...
This (more or less) avoids user's environment variables tampering the
search process.
And also remove usages of `eval()` and `exec()`.
PR #18995 .
2023-05-21 14:04:44 +08:00
Vladimir Golovnev
34802362ad
Fix inconsistent background of filters widget
...
PR #18956 .
Fixes regression of #18918 .
2023-05-11 09:11:11 +03:00
Vladimir Golovnev
c10f1f0ad2
Consider explicitly specified parameters when resolving optional ones
...
PR #18955 .
Closes #18951 .
2023-05-11 09:09:57 +03:00
Vladimir Golovnev
58ae98026b
Try to detect system wake-up event
...
PR #18934 .
Closes #17898 .
2023-05-10 15:02:15 +03:00
Chocobo1
32a55551fe
Merge pull request #18936 from Chocobo1/tidy
...
Code clean up
2023-05-08 13:11:11 +08:00
Vladimir Golovnev
7880fe8440
Merge pull request #18824 from glassez/atp-edit
...
Unify/improve "add torrent parameters" template editing UI
2023-05-07 19:38:35 +03:00
Vladimir Golovnev (Glassez)
bb959bda8c
Add helpers for suggesting torrent paths
2023-05-07 16:34:56 +03:00
Vladimir Golovnev (Glassez)
d629c77184
Improve FlowLayout to support vertical alignment
2023-05-07 16:34:56 +03:00
Vladimir Golovnev (Glassez)
b953d223e4
Use check box to represent "Skip checking"
2023-05-07 16:34:56 +03:00
Vladimir Golovnev (Glassez)
6fa53b5ed8
Override add torrent params in a more comprehensible way
2023-05-07 16:34:56 +03:00
Vladimir Golovnev (Glassez)
c777ed3299
Correctly use fallback value for "Add to top of queue" option
2023-05-07 16:34:56 +03:00
Vladimir Golovnev (Glassez)
341b2f345a
Use FlowLayout in AddTorrentParamsWidget
2023-05-07 16:34:55 +03:00
Vladimir Golovnev (Glassez)
905f141657
Revamp "Automated RSS downloader" dialog
2023-05-07 16:34:52 +03:00
Vladimir Golovnev (Glassez)
0a87bb368f
Extract "add torrent params" serialization code
2023-05-07 16:33:32 +03:00
Vladimir Golovnev (Glassez)
93a1e58554
Revamp "Watched folder options" dialog
2023-05-07 16:33:32 +03:00
Vladimir Golovnev (Glassez)
0cc29f1851
Implement "Add torrent params" editing widget
2023-05-07 16:33:20 +03:00
Chocobo1
81daad92ec
Combine identical branches
2023-05-07 19:41:55 +08:00
Chocobo1
41be7e9bbe
Make function const
2023-05-07 19:41:55 +08:00
Chocobo1
179a61d75e
Add curly braces
2023-05-07 19:41:55 +08:00
Chocobo1
73134d5f4d
Initialize member variables
2023-05-07 16:30:56 +08:00
Chocobo1
29c05ed3e8
Use std::make_unique
2023-05-07 14:38:03 +08:00
Chocobo1
e375f3ee0b
Use reference
2023-05-07 14:38:02 +08:00
Chocobo1
b185153254
Merge pull request #18931 from Chocobo1/tidy
...
Clean up code
2023-05-07 14:20:47 +08:00
Chocobo1
e7e5c38384
Remove superfluous header include
2023-05-06 16:48:49 +08:00
Chocobo1
9a00839a75
Simplify code
2023-05-06 16:35:13 +08:00
Chocobo1
79e85d01fa
Mark move functions as noexcept
2023-05-06 16:35:13 +08:00
Chocobo1
e408973ee6
Add pointer qualifications to auto
-typed variables
2023-05-06 16:35:13 +08:00
Chocobo1
8c9b6e2f2d
Use reference whenever possible
2023-05-06 16:35:13 +08:00
Chocobo1
5b43782f58
Remove redundant virtual
specifier
2023-05-06 16:35:12 +08:00
Chocobo1
2059825597
Don't use instance for accessing static functions
2023-05-06 16:35:12 +08:00
Chocobo1
e1be46820b
Remove redundant initialization
2023-05-06 16:35:12 +08:00
Chocobo1
8219b1f695
Use default constructor, destructor
2023-05-06 16:35:12 +08:00
Chocobo1
3fbe380582
Remove redundant function declaration
2023-05-05 14:51:02 +08:00
Chocobo1
5f00d42a49
Drop superfluous const
2023-05-05 14:51:02 +08:00
Chocobo1
15de7aed9a
Use perfect forwarding
2023-05-05 14:51:02 +08:00
Chocobo1
5c38cc00d9
Add support for clang-tidy
2023-05-05 14:51:02 +08:00
Vladimir Golovnev
5a1dcbae9c
Don't make assertion about 3rd party logic
...
PR #18913 .
2023-05-03 07:24:52 +03:00
Vladimir Golovnev
7c6a852f85
Revamp TransferListFiltersWidget implementation
...
Avoid using style sheets to better support color mode switching.
PR #18918 .
2023-05-03 07:24:03 +03:00
Vladimir Golovnev
147b22ddd3
Revamp LineEdit implementation
...
PR #18917 .
2023-05-03 07:23:19 +03:00
Vladimir Golovnev
d83b2a6131
Make sure ResumeSessionContext is destroyed before start processing
...
PR #18912 .
2023-05-02 09:48:49 +03:00
Vladimir Golovnev
821e946bbe
Remove outdated code
...
PR #18908 .
2023-05-01 08:29:35 +03:00
Deltadroid
634eb4a183
Replace status_t with disk_status
...
libtorrent 2.1 has made the following change:
"make status_t a proper flag type, to clean up oversized_file indication
from disk subsystem"
PR #18879 .
2023-04-30 10:12:15 +03:00
Vladimir Golovnev
758ea7edca
Improve logging of running external program
...
PR #18901 .
2023-04-30 10:10:03 +03:00
Vladimir Golovnev
1bd499565e
Completely initialize native status on torrent creation
...
PR #18900 .
2023-04-30 10:09:09 +03:00
Chocobo1
be9ec5a329
Merge pull request #18877 from Chocobo1/ci
...
Clean up CI scripts
2023-04-29 13:36:41 +08:00
Chocobo1
df895cb2a7
Improve script compatibility
...
Now the script is conforms to POSIX shell script which is universal on
all linux.
Also make it executable.
2023-04-24 13:31:19 +08:00
Chocobo1
3b72859980
Bump various action versions
2023-04-24 13:18:17 +08:00
Chocobo1
69df85f564
Move script into its own subfolder
2023-04-24 13:18:10 +08:00
Chocobo1
1f1da32371
Rename CI script
...
See: https://stackoverflow.com/questions/22268952/what-is-the-difference-between-yaml-and-yml-extension
2023-04-24 13:18:08 +08:00
xavier2k6
cddf8c199c
GHA CI: Update some dependencies
...
PR #18870 .
2023-04-24 13:15:46 +08:00
Chocobo1
bbd5ed1142
Switch URLs to https
...
PR #18876 .
2023-04-23 15:09:58 +08:00
sledgehammer999
0f033ec9c8
Regenerate translation files
2023-04-20 03:34:29 +03:00
Chocobo1
7397c80837
WebUI: improve 'exporting torrent' behavior
...
Don't stop the whole operation when a torrent doesn't exists and try to export the remaining
existing ones.
PR #18858 .
2023-04-18 13:59:55 +08:00
Vladimir Golovnev
51132c817b
Improve move storage handling
...
PR #18857 .
Closes #18795 .
2023-04-18 08:06:18 +03:00
Chocobo1
1fe006d16f
Merge pull request #18853 from Chocobo1/exportTorrent
...
Work around Chrome download limit
2023-04-17 00:12:30 +08:00
Sentox6
bd31eddb94
Inhibit system sleep while torrents are moving
...
PR #18783 .
2023-04-16 18:09:34 +03:00
DivineHawk
0defb7d79d
WebUI: Use workaround for IOS file picker
...
PR #18837 .
Fixes #18683 .
2023-04-16 14:30:30 +03:00
七海千秋
1e400df324
Set "SameSite=None" if CSRF Protection is disabled
...
PR #18843 .
2023-04-16 14:27:49 +03:00
Chocobo1
9ea48539b4
Inline variable declared in header
2023-04-15 14:53:13 +08:00
Chocobo1
d63e0ad78f
Work around Chrome download limit
...
Closes #18775 .
2023-04-15 14:51:27 +08:00
Vladimir Golovnev
eaee38a19e
Disable UPnP for web UI by default
...
PR #18832 .
2023-04-13 06:22:18 +03:00
Vladimir Golovnev
b3e9c46eff
Don't miss saving "download path" in SQLite storage
...
PR #18844 .
Closes #18842 .
2023-04-13 06:18:09 +03:00
Chocobo1
5dcc14153f
Move feature macro declaration to build scripts
...
PR #18825 .
2023-04-10 13:38:00 +08:00
Chocobo1
4a66d705b8
Merge pull request #18812 from Chocobo1/buf
...
Use KiB unit for socket buffer sizes
2023-04-09 22:17:39 +08:00
Chocobo1
9d7fcea5d6
Describe special values in label
...
https://github.com/qbittorrent/qBittorrent/pull/18806#discussion_r1158346210
https://github.com/qbittorrent/qBittorrent/pull/18812#issuecomment-1500303976
2023-04-08 15:46:02 +08:00
Vladimir Golovnev
b8cd614775
Allow to edit RSS feed URL
...
PR #18807 .
Closes #5489 .
2023-04-07 14:22:50 +03:00
Chocobo1
a9ab2d9b9e
Use KiB unit for socket buffer sizes
...
https://github.com/qbittorrent/qBittorrent/pull/18806#issuecomment-1499894871
2023-04-07 18:33:24 +08:00
Chocobo1
cecf2d28e6
Merge pull request #18806 from Chocobo1/buf
...
Expose 'socket send/receive buffer size' options
2023-04-07 18:19:46 +08:00
Chocobo1
a01f1014b9
Inline variable defined in header
2023-04-05 18:32:18 +08:00
Chocobo1
77411760a0
Expose 'socket send/receive buffer size' options
...
Closes #18794 .
2023-04-05 18:11:13 +08:00
Vladimir Golovnev
0dcb65bb7c
Add option to auto hide zero status filters
...
* Extract transfer list filter classes into separate files
* Add option to auto hide zero status filters
PR #18801 .
Closes #13996 .
2023-04-03 10:38:08 +03:00
Vladimir Golovnev
d40be79c69
Implement torrent tags editing dialog
...
PR #18797 .
2023-04-03 10:36:28 +03:00
Bartu Özen
b55d4b1733
WebUI: Implement subcategories
...
PR #18740 .
2023-04-02 11:02:22 +03:00
Chocobo1
40e28930a4
GHA CI: add missing dll
...
Closes #18383 .
PR #18792 .
2023-04-02 13:30:26 +08:00
Chocobo1
5a3579a3f9
Merge pull request #18779 from Chocobo1/webui
...
WebUI: Add checker for html
2023-03-30 13:24:21 +08:00
Chocobo1
9de8abadb6
Fix wrong end tag
2023-03-28 22:26:11 +08:00
Chocobo1
05c5cdab96
Add alternative text for images
2023-03-28 22:20:37 +08:00
Chocobo1
1e1c1725ab
Always use quotes for attributes
...
This is to unify coding style.
2023-03-28 22:20:37 +08:00
Chocobo1
b5c57af869
Escape special characters properly
2023-03-28 22:20:37 +08:00
Chocobo1
eb875ac8c1
Add attributes explicitly
2023-03-28 22:20:37 +08:00
Chocobo1
a36358d7d0
Remove deprecated rules
2023-03-28 22:20:37 +08:00
Chocobo1
679e592a5c
Add checker for html
2023-03-28 22:20:33 +08:00
Vladimir Golovnev
b922441a7c
Correctly handle redirections
...
PR #18771 .
Fixes regression introduced by #18528 .
Closes #18764 .
2023-03-28 06:26:40 +03:00
Vladimir Golovnev
941c587c68
Don't forget to clear I2P peer items
...
PR #18753 .
2023-03-24 14:06:46 +03:00
Vladimir Golovnev
77bd09bb8b
Use tray icon from system theme only if option is set
...
PR #18733 .
2023-03-22 13:51:39 +03:00
Vladimir Golovnev
8bcac1bed2
Reduce default file pool size
...
PR #18734 .
2023-03-21 08:39:06 +03:00
Vladimir Golovnev
cdded6cef7
Add (experimental) I2P support
...
PR #18717 .
Closes #16257 .
2023-03-21 08:33:46 +03:00
thalieht
8cbe4a571c
Initialize a few groupboxes' check state after their children
...
PR #18727 .
2023-03-20 10:49:25 +03:00
Vladimir Golovnev
ee9d2173e0
Combine all the column filter related widgets
...
PR #18726 .
2023-03-20 08:23:41 +03:00
Chocobo1
a450a7c6e1
Delegate string hashing to standard library
...
Since standard library could have platform dependent specialized hashing functions.
Also the main idea is to let `qHash` handle whatever integer type `std::hash` returns and mix it with `seed` accordingly.
PR #18715 .
2023-03-18 14:09:35 +08:00
thalieht
d41a77841d
Save UI Theme Dialog size
...
PR #18709 .
2023-03-17 22:15:56 +03:00
thalieht
ae06daba6a
Correctly initialize group box children as disabled
...
PR #18710 .
2023-03-17 22:13:19 +03:00
Vladimir Golovnev
77aa85fbd3
Provide UI Theme editor
...
PR #18655 .
2023-03-16 10:03:05 +03:00
Vladimir Golovnev
989b1e6c2c
Improve finished torrent handling
...
PR #18704 .
Closes #18694 .
2023-03-16 09:45:49 +03:00
Vladimir Golovnev
9ef23d524d
Prevent incorrect log message about torrent content deletion
...
PR #18692 .
Closes #18689 .
2023-03-16 09:40:21 +03:00
Chocobo1
f16e903623
Merge pull request #18687 from Chocobo1/codeql
...
GHA CI: add CodeQL scanning
2023-03-15 15:21:27 +08:00
Tom
0bb0829a9a
Allow to filter torrent list by save path
...
PR #18600 .
2023-03-15 09:46:22 +03:00
Chocobo1
fa30b70453
Fix code defects
2023-03-14 15:04:54 +08:00
Christian Danížek
e4f90730b2
NSIS: Add Slovak translation
...
PR #18676 .
2023-03-13 12:04:47 +03:00
Chocobo1
6fd522472c
GHA CI: drop needless syntax
...
https://docs.github.com/en/actions/learn-github-actions/expressions#about-expressions
>When you use expressions in an if conditional, you may omit the
>expression syntax (${{ }}) because GitHub automatically evaluates the if conditional as an expression.
2023-03-12 14:27:10 +08:00
Chocobo1
0f32de9d8c
GHA CI: add CodeQL scanning
...
This enable codebase scanning for C++ and JavaScript languages.
https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql
https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/customizing-code-scanning
2023-03-12 14:27:10 +08:00
thalieht
f630d84858
WebUI: Add "Add to top of queue" option
...
PR #18660 .
2023-03-08 18:58:42 +03:00
Vladimir Golovnev
ee6f699b48
Apply adjacent changes within single transaction
...
PR #18635 .
2023-03-04 08:46:19 +03:00
Vladimir Golovnev
ce9bdaef5c
Correctly check for database needs to be updated
...
* Correctly check for database needs to be updated
* Create index only if not exists
* Double check whether database needs to be updated
PR #18638 .
2023-03-02 20:31:38 +03:00
Vladimir Golovnev
37c04fdeed
Prevent possible problem of using incomplete type
...
PR #18639 .
2023-03-02 06:18:51 +03:00
Vladimir Golovnev
c51aa2d573
Index torrents table by queue position
...
PR #18623 .
2023-02-28 08:57:51 +03:00
sledgehammer999
b922e1ae73
Sync translations from Transifex and run lupdate
2023-02-28 00:20:58 +02:00
sledgehammer999
dd48f62d66
Migrate transifex tool config to new version
2023-02-28 00:10:16 +02:00
Vladimir Golovnev
f5b5312cf0
Merge pull request #18528 from glassez/proxy
...
Allow to use proxy per subsystem
2023-02-27 20:34:51 +03:00
Vladimir Golovnev
58a654a70f
Reject requests that contain backslash in path
...
PR #18626 .
Closes #18618 .
2023-02-27 16:50:50 +03:00
Vladimir Golovnev
ff0f3b4975
WebAPI: Allow to set read-only directory as torrent location
...
PR #18613 .
Closes #18480 .
2023-02-27 09:09:33 +03:00
Vladimir Golovnev
8df68ac878
Prevent RSS folder from being moved into itself
...
PR #18619 .
Closes #18446 .
2023-02-27 09:08:18 +03:00
Vladimir Golovnev
2f9b313287
Perform own tracking of files progress
...
PR #18597 .
2023-02-26 14:44:58 +03:00
Vladimir Golovnev (Glassez)
cbf591a8b5
Improve SOCKS5 error messages
2023-02-26 14:27:59 +03:00
Vladimir Golovnev (Glassez)
96da685e5d
Expand the scope of "Proxy hostname lookup" option
2023-02-26 14:27:59 +03:00
Vladimir Golovnev (Glassez)
6ac14d0c57
Allow to use proxy per subsystem
2023-02-26 14:27:41 +03:00
Vladimir Golovnev (Glassez)
4745a40f0b
Allow to specify proxy option per request
2023-02-25 17:30:26 +03:00
Vladimir Golovnev (Glassez)
8993d87b32
Let Search Engine handle its proxy usage
2023-02-25 17:25:41 +03:00
brvphoenix
8df80b67f9
GHA CI: Add missing dependencies
...
PR #18596 .
2023-02-19 17:02:59 +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
Chocobo1
7ae83df5a5
GHA CI: compress debug symbols
...
The result binary is smaller.
2023-02-17 13:00:10 +08:00
Chocobo1
19f55512c1
GHA CI: don't overwrite system default compile flags
...
System might have some default compile flags which are crucial for security hardening so we
should append our flags instead of overwriting them.
2023-02-17 13:00:10 +08:00
Chocobo1
6e25db444e
GHA CI: revert "[CI Ubuntu] Strip installed components"
...
For tester convenience, the binaries should ship with debug symbols.
This reverts commit b8aa9e5609
.
2023-02-17 13:00:10 +08:00
Chocobo1
d2c4b69f47
GHA CI: use least permission level
...
`actions: write` is required by Chocobo1/setup-ccache-action.
`pull-requests: write` is required by actions/stale.
https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions
2023-02-17 13:00:10 +08:00
Chocobo1
4170b4e21b
GHA CI: speed up package installation on macOS
...
Setup time is shortened by cutting down unnecessary operations.
https://docs.brew.sh/Manpage#environment
2023-02-17 13:00:10 +08: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
shitcod3r
1b0f5b8567
NSIS: Add Uzbek translation
...
PR #18568 .
2023-02-15 11:58:06 +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
Burak Yavuz
3fea9f5a33
NSIS: Update Turkish translation
...
PR #18552 .
2023-02-14 08:30:46 +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
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
5e952a561b
NSIS: Set shortcut's workind dir to install path
2023-01-25 20:35:21 +02: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
Deividas
cba9680ef9
NSIS: Update Lithuanian translation
...
PR #18434 .
2023-01-23 14:34:36 +03: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
xavier2k6
3f39bd9f35
GHA CI: Bump Boost version to 1.81.0 on Windows/macOS
...
PR #18279 .
2022-12-24 20:03:12 +03:00
Jonatan
f8236eb397
NSIS: Update Swedish translation
...
PR #18240 .
2022-12-22 15:01:23 +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
sledgehammer999
3cf0004665
Merge pull request #18200 from sledgehammer999/ci_appimage
...
CI: Build AppImage
2022-12-14 10:17:43 +02: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
sledgehammer999
ad2be39c33
[CI Ubuntu] Build AppImage
...
Upload an AppImage artifact on CI builds. This AppImage is a
simplified version of the official one. It is meant to help
with debugging PRs that fix issues.
2022-12-14 03:28:05 +02:00
BallsOfSpaghetti
c3936cd4b6
Add "Rename rule" button to RSS Downloader
...
PR #18141 .
2022-12-11 11:18:40 +03:00
Chocobo1
d2e595aac3
Remove docker information
...
It has been moved to its own repo: https://github.com/qbittorrent/docker-qbittorrent-nox
PR #18199 .
2022-12-11 11:24:13 +08:00
sledgehammer999
b8aa9e5609
[CI Ubuntu] Strip installed components
2022-12-10 16:53:42 +02: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
50c08e55cd
Merge pull request #18086 from sledgehammer999/translation_fix
...
Remove trailing newline from translation file
2022-11-28 21:05:09 +02: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
c91eefe469
Update Changelog
2022-11-21 01:13:29 +02:00
sledgehammer999
327affa340
Merge pull request #18002 from sledgehammer999/v450_changelog
...
Update Changelog
2022-11-20 22:11:01 +02:00
sledgehammer999
4e7c2589e4
Update Changelog
2022-11-20 21:01:54 +02: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
f54b66eb75
Merge pull request #17996 from glassez/non-blocking
...
Perform some unavoidable blocking calls asynchronously
2022-11-14 20:55:12 +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
Faisal A. F. Rahman
0f2cc92ba2
NSIS: Update Indonesian translation
...
PR #17890 .
2022-10-28 11:55:05 +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
xavier2k6
9fb8f765e8
GHA CI: Bump libtorrent version(s)
...
* https://github.com/arvidn/libtorrent/releases/tag/v2.0.8
* https://github.com/arvidn/libtorrent/releases/tag/v1.2.18
PR #17924 .
2022-10-25 12:44:57 +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
schnurlos
17a5bd03c5
NSIS: update German translation
...
Adding Windows 10 requirement.
PR #17860 .
2022-10-12 13:49:19 +08:00
Ícaro
ada594faf3
NSIS: update Portuguese BR translation
...
PR #17857 .
2022-10-12 13:48:27 +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
7eb97348de
GHA CI: add missing Qt module
2022-10-09 15:24:30 +08: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
sledgehammer999
3463442631
Merge pull request #17835 from RockyTDR/patch-1
...
NSIS: Update Dutch translation
2022-10-08 20:06:02 +03:00
sledgehammer999
c35ca52b00
Merge pull request #17834 from maboroshin/master
...
NSIS: Update Japanese translation
2022-10-08 20:05:25 +03:00
sledgehammer999
6d501c2e6e
Merge pull request #17828 from PriitUring/NSIS-Estonian
...
NSIS: Update Estonian translation
2022-10-08 20:04:27 +03: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
Andrei Stepanov
544f9675c6
NSIS: Update Russian translation
...
PR #17827 .
2022-10-06 06:36:55 +03:00
Thomas De Rocker
0c76321a6a
Update dutch.nsi
...
Translate new strings and polish existing strings
2022-10-05 19:40:40 +02:00
maboroshin
10349b84d6
Update japanese.nsi
2022-10-06 01:45:07 +09: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
Chocobo1
d9af207a11
GHA CI: add missing cmake flag for Qt6
2022-10-05 13:17:54 +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
Priit Uring
874b015b20
NSIS: Update Estonian translation
2022-10-05 00:16:26 +03: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
3b0ac0962e
Merge pull request #17817 from Chocobo1/modules
...
GHA CI: only install required Qt components
2022-10-04 13:08:03 +08:00
sledgehammer999
617dedc464
Merge pull request #17812 from sledgehammer999/nsis_refactor
...
NSIS refactoring
2022-10-03 14:39:44 +03:00
Chocobo1
8b4a0da235
GHA CI: bump Qt version to 6.4.0
2022-10-03 13:04:28 +08:00
Chocobo1
dcc5206e3d
GHA CI: only install required Qt components
...
So it won't waste time download/install unused Qt components.
2022-10-03 13:04:24 +08:00
Chocobo1
9a81cbf4c0
Improve column updates granularity
...
PR #17806 .
2022-10-03 11:56:48 +08:00
xavier2k6
d96ed5f4a4
GHA CI: Bump Windows/macOS Qt6
version to 6.4.0
...
Suppressed gnu-zero-variadic-macro-arguments warning on macOS (Qt6 only).
PR #17801 .
2022-10-03 11:56:08 +08:00
sledgehammer999
102b6c32eb
NSIS: Refactor configuration to ease installer creation via scripting
2022-10-02 12:59:40 +03:00
sledgehammer999
2af1e1874e
NSIS: Require Windows 10 1809 for Qt6 builds
...
Also refactor the config.nsi with more defines that control the build.
Closes #17783
2022-10-02 12:54:36 +03:00
sledgehammer999
680455a21b
NSIS: Drop hardcoded qt's translation filenames
2022-10-02 12:54:35 +03: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
caa30e41d8
Merge pull request #17765 from Chocobo1/filterbar
...
Fix 'Filter Sidebar' size restored incorrectly
2022-09-25 12:37:50 +08: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
1dcfd7bb59
Improve docker documentation
...
Clarify that some paths should be full paths.
Related #17729 .
PR #17736 .
2022-09-18 13:10:24 +08: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
sledgehammer999
021222b407
Merge pull request #17654 from hugok79/patch-1
...
Update org.qbittorrent.qBittorrent.desktop
2022-09-12 16:39:46 +03: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
sledgehammer999
537b1c1ea9
Update AUTHORS file
2022-09-12 02:26:34 +03:00
Chocobo1
257914b0d5
Merge pull request #17684 from Chocobo1/subnet
...
Allow to use subnet notation in reverse proxy list
2022-09-10 13:05:06 +08: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
48d52d9ab7
Merge pull request #17670 from Chocobo1/i18n
...
Make strings translatable
2022-09-04 12:00:36 +08:00
Hugo Carvalho
16a99e687f
Update org.qbittorrent.qBittorrent.desktop
2022-09-03 14:47:22 +01: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
Chocobo1
3061f6cf5b
GHA CI: treat compile warnings as errors
...
PR #17651 .
2022-09-02 13:09:43 +08:00
Hugo Carvalho
cc8c1a5748
Update org.qbittorrent.qBittorrent.desktop
...
Sort language codes alphabetically
2022-09-01 13:31:48 +01: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
ce8b51e7ef
Merge pull request #17568 from Chocobo1/ci
...
GHA CI: bump "Install Qt" action version
2022-08-19 14:42:29 +08:00
Chocobo1
df5ea9b675
GHA CI: bump setup-python to v4
2022-08-19 12:59:13 +08:00
Chocobo1
ff7fe7c107
GHA CI: bump "Install Qt" action version
2022-08-18 12:26:26 +08:00
Coool
ac6af55335
NSIS: update Latvian
...
PR 17529.
2022-08-18 11:39:53 +08:00
Chocobo1
001c3906b5
Merge pull request #17563 from Chocobo1/webapi
...
Restrict more WebAPI endpoints to POST method only
2022-08-18 11:37:59 +08:00
Minseo Lee
0d5d6db0ee
NSIS: update Korean
...
PR #17547 .
2022-08-17 12:48:22 +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
f5836c9fc9
Add unit testing for Path class
2022-08-14 13:31:22 +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
17d40855d2
Merge pull request #17535 from Chocobo1/ci
...
GHA CI: switch to Ubuntu latest stable version
2022-08-12 12:27:57 +08:00
Chocobo1
c924fe7950
GHA CI: update boost to 1.80
2022-08-11 15:20:25 +08:00
Chocobo1
908f345e22
GHA CI: switch to Ubuntu latest stable version
2022-08-11 12:11:20 +08:00
bovirus
858eea1e9e
NSIS: Update Italian language
...
PR #17098 .
2022-08-11 12:03:05 +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
5c96f16e3d
Merge pull request #17498 from glassez/fix-windows-race
2022-08-07 13:23:03 +03:00
xavier2k6
8e33d99901
Update ax_boost_base.m4
to latest version
...
Upstream: https://github.com/autoconf-archive/autoconf-archive/blob/master/m4/ax_boost_base.m4
PR #17196 .
2022-08-07 14:38:55 +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
清靈語
ef297dd8e6
Revise Docker document
...
Currently Docker Inc. recommends installing Docker Desktop instead of the CLI.
docker-compose has been deprecated, replaced by docker compose.
PR #17448 .
2022-08-01 13:10:47 +08:00
Chocobo1
958929aa77
Improve command for running test
...
It enables `make check` command to build tests and run it
altogether.
2022-07-31 15:20:34 +08: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
3567ae3529
Merge pull request #17407 from Chocobo1/addtorrent
...
Fix "Add torrent dialog" spill-over on smaller screens
2022-07-23 12:20:55 +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
xavier2k6
71e53a4628
Raise minimum libtorrent version to 2.0.7
...
PR #17396 .
2022-07-21 12:21:48 +08: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
summer
0e3ce019e4
Update libtorrent to 2.0.7 & 1.2.17 in GHA CI
...
PR #17385 .
2022-07-19 11:13:47 +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
ce0e92e12a
Merge pull request #17363 from Chocobo1/pause
...
Add workaround for payload upload/download rate
2022-07-16 11:52:28 +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
Chocobo1
864d806ee8
Merge pull request #17359 from Chocobo1/testnaturalcmp
...
Add testing for various classes
2022-07-15 12:07:36 +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
Chocobo1
60e62dc5ab
Add testing for various classes
2022-07-13 18:05:14 +08:00
Chocobo1
4f1684c714
Bump libtorrent requirements to 2.0.6
2022-07-13 17:16:18 +08:00
Vladimir Golovnev
d3e7e8a630
Refactor SettingsStorage implementation
...
Remove redundant fragmentation of logic.
PR #17354 .
2022-07-13 07:09:15 +03:00
Pino Toscano
437ddd3f76
Stop installing app icon in pixmaps location
...
Since the application icons are already installed in
the global XDG hicolor theme, simply stop installing the 128px one
in the pixmaps location.
PR #17342 .
2022-07-12 13:14:55 +08:00
Chocobo1
0d715d879d
Specify test files manually
...
So that cmake will detect file changes automatically and therefore we
don't need to re-invoke cmake manually.
2022-07-11 13:58:55 +08: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
Vladimir Golovnev
890630944d
Extract desktop integration stuff into separate class
...
PR #17313 .
2022-07-09 08:06:22 +03:00
Chocobo1
8d73ab65b2
Don't needlessly hide Options dialog
...
The dialog should only close after all operations are done, not before.
2022-07-09 11:34:47 +08:00
Chocobo1
e54124fdb8
Add tooltip message when system tray icon isn't available
...
Also don't hide the sub-options as they are already in disabled state.
2022-07-09 11:34:47 +08:00
Chocobo1
e4fafb911a
Revise behavior of initializing checkboxes
...
The checkboxes initial value should not depend on parent state and
should be restored anyway.
2022-07-09 11:34:43 +08:00
Chocobo1
2ef059807a
Merge pull request #17333 from Chocobo1/logger
...
Revise classes startup sequence
2022-07-08 12:50:02 +08:00
Chocobo1
dba711d099
Use helper function for logging messages
2022-07-07 12:17:52 +08:00
Chocobo1
ec13bba4da
Revise classes startup sequence
...
1. Initialize Logger class earlier so that it can record messages from other classes (for
debugging purpose).
2. Deprioritize WebUI port adjustment. It is not a high priority in here.
3. Slightly deprioritize file logger initialization.
2022-07-07 12:16:48 +08:00
luzpaz
8736c9ec4c
Fix various typos
...
Found via `codespell -q 3 -S *.ts,*.desktop,./src/base/3rdparty,./dist/windows/installer-translations -L ba,doas,ist,ro,ths`
PR #17317 .
2022-07-06 13:11:11 +08:00
Chocobo1
286df8f560
Merge pull request #17311 from Chocobo1/memPrio
...
Work around application stuttering on Windows
2022-07-05 14:18:02 +08:00
Nowshed H. Imran
92afbd45e8
Remove option of using icons from system theme
...
PR #17292 .
Closes #17150 .
2022-07-05 12:32:35 +08:00
Chocobo1
d293c22a52
Try to recover missing tags
...
Tags can go missing from config/resume data. Try to recover them to avoid inconsistent behavior.
PR #17290 .
2022-07-05 12:29:01 +08:00
summer
c660c9df8e
Try to recover missing tags
...
Tags can go missing from config/resume data. Try to recover them to avoid inconsistent behavior.
2022-07-04 18:18:56 +06:00
Chocobo1
ed2eadaf56
Work around application stuttering on Windows
...
This is observed by unusual high page faults when the stuttering occurs.
With this workaround, the high page faults still occurs but the GUI remains responsive.
2022-07-04 18:38:23 +08:00
Chocobo1
fa26333a5b
Move "memory priority" settings to Application class
2022-07-04 18:38:20 +08: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
ec1d2cba40
Merge pull request #17305 from Kolcha/fix/open-dest-dir
...
Fix "Open destination folder" on macOS
2022-07-04 08:38:10 +08:00
Nick Korotysh
a93cd20e4d
Open destination folders on macOS in separate thread
...
In some unknown way, the one line in Objective-C affects Qt's main
loop causing the crash in QApplication::exec() on processing next
event after that call.
Even crash doesn't happen exactly after this call, it will happen
on application exit. Call stack and disassembly are the same in
all cases.
But running that code in another thread solves the issue.
2022-07-02 09:16:22 +02:00
Chocobo1
25b3f2d1a6
Raise priority of the main "event loop" thread
...
The goal is to improve responsiveness of qbt when CPU resources are scarce.
Instead of lowering libtorrent threads priority, it is chosen to raise main event loop thread
priority to avoid getting messy with libtorrent internals.
Also on Windows, threads doesn't inherit thread priority from the parent thread and it always
use the default (normal) priority.
PR #17278 .
2022-07-02 14:57:47 +08:00
Chocobo1
b44bdd21cb
Merge pull request #17281 from Chocobo1/creator
...
Fix filename not populated correctly
2022-07-02 14:41:50 +08:00
Nick Korotysh
53ea1843ab
Pass Torrent::contentPath() to MacUtils::openFiles()
...
it already provides absolute path, no additional manipulations
are required.
2022-07-01 23:23:26 +02:00
Chocobo1
34091176d5
Fix wrong root path generated on Windows
...
Fix cannot create torrent when the source file is at the root of a
drive.
Fix created torrent cannot be seeded when the source file is at the root
of a drive.
Fix up dd1bd8ad10
.
Closes #17279 .
2022-07-01 13:34:14 +08:00
Vladimir Golovnev
ac8a6887b6
Improve D-Bus notifications handling
...
Make notifications clickable on Linux by assigning "default" action.
Don't react to unrelated notifications clicked by keeping track of qBittorrent notifications IDs and filter out unrelated ones.
Make D-Bus Notifications interface proxy class to be maintained manually and fix coding style in it.
Closes #9084 .
PR #17282 .
2022-06-30 08:01:17 +03:00
summer
cc0a0b56ed
Make working set limit available only on libtorrent 2.0.x builds
...
You can already control the cache size in libtorrent 1.2.x so it doesn't make sense to implement this limit for all use cases. Also there are some downsides to using working set size to limit memory usage such as unresponsive GUI when limit gets hit.
PR #17275 .
2022-06-30 11:23:48 +08:00
sledgehammer999
0e989185ce
Merge pull request #15769 from now-im/flow
...
Implement new icon/color theme
2022-06-28 23:23:25 +03:00
Chocobo1
aadf961184
Fix filename not populated correctly
...
Fix up dd1bd8ad10
.
Related #17279 .
2022-06-26 19:30:17 +08:00
summer
1abeac8811
Remove unnecessary force reannounce on interface alerts
...
This isn't necessary since it can cause issues by doing unnecessary reannounce during startup and network address refresh. This impact of this can be great if it happens on a regular basis and if someone has a lot of torrents.
PR #17261 .
2022-06-26 07:26:21 +03:00
Vladimir Golovnev
f8a304abdc
Implement base classes for application components
...
PR #17219 .
2022-06-25 15:46:55 +03:00
Chocobo1
41a38428fc
Merge pull request #17259 from Chocobo1/cleanup
...
Make use of chrono literals from std library
2022-06-25 13:23:27 +08:00
Mike Lei
d3850cf98f
Improve WebUI progress bar rendering
...
PR #17258 .
2022-06-24 13:18:33 +08:00
Chocobo1
02d906d3ae
Initialize pointer to a default value
2022-06-23 21:31:16 +08:00
Chocobo1
6de72ecc77
Make use of chrono literals from std library
2022-06-23 21:31:16 +08:00
Chocobo1
2a5dbe840c
Clean up coding style
2022-06-23 13:40:42 +08:00
Li Z
86b6bcc1d9
Fix incorrect "max outgoing port" setting
...
PR #17252 .
2022-06-23 11:49:45 +08:00
Blackspirits
3023cff2b5
NSIS: Update Portuguese translations
...
PR #17222 .
2022-06-20 13:09:17 +08:00
Chocobo1
f3a4764a1d
Merge pull request #17233 from Chocobo1/log
...
Add shutdown logging
2022-06-20 13:08:46 +08:00
Chocobo1
0d46a108b8
Revise Statistics class
2022-06-19 15:51:19 +08:00
Chocobo1
8114c11d58
Add shutdown logging
2022-06-18 17:14:54 +08:00
Chocobo1
e3425cfa9e
Defer closing logger instance
...
So that logger can still be used in shutdown stage.
2022-06-18 17:14:54 +08:00
Chocobo1
af78344e5d
Use coarse timestamp format
...
Since format in milliseconds doesn't add additional value and is
slower than just seconds.
2022-06-18 17:14:42 +08:00
Vladimir Golovnev
a2121f2483
Improve RSS subsystem initialization
...
PR #17227 .
2022-06-18 09:56:49 +03:00
Vladimir Golovnev
7d97905716
WebAPI: Add endpoint to set speed limit mode
2022-06-18 06:12:43 +03:00
Chocobo1
61adfea196
Fix garbage text appeared in log file
...
Fix up fed969ed64
.
2022-06-18 04:18:27 +08:00
Chocobo1
3dd616f6ff
Use proper method for manipulating text
...
`innerText` is too powerful for the job here, use a more
restricted/secure way to manipulate text.
Related: #17211 .
PR #17212 .
2022-06-17 13:00:32 +08:00
Prince Gupta
d5e6d161f2
Cache last traverse result while parsing file tree
...
PR #16376 .
2022-06-15 20:14:53 +03:00
thalieht
d1515456bc
Add checkbox for "Excluded file names"
...
PR #17206 .
2022-06-15 13:16:01 +08:00
brvphoenix
7faa8b7a02
Don't use QCollator when it works on posix mode
...
PR #17204 .
2022-06-14 13:22:30 +08:00
Chocobo1
5b0cbf9eb1
Merge pull request #17187 from Chocobo1/names
...
Fix wrong file names displayed in tooltip
2022-06-11 12:27:41 +08:00
xavier2k6
74db0576af
Sync nonstd/expected
with upstream
...
* Used `commit: b78dd92cc92b0cfe4eedad823cfd411c13afeb66` (Release v0.6.0)
* Source https://github.com/martinmoene/expected-lite/releases/tag/v0.6.0
PR #17192 .
2022-06-11 12:27:13 +08:00
xavier2k6
d0b13f0eb0
GHA CI: "file health" update pre-commit
action to v3.0.0
...
* Update `pre-commit` action to `v3.0.0`
https://github.com/pre-commit/action/releases
* Bump pre-commit-hooks to `v4.3.0`
https://github.com/pre-commit/pre-commit-hooks.git
PR #17195 .
2022-06-11 12:25:12 +08:00
Emil M George
29a964d5b7
Add support for custom SMTP ports
...
The port can be optionally specified by appending `:<port>` to the existing SMTP Server field in settings. If no port is specified, then the default port (25 for insecure or 465 for SSL) is used.
Closes #12212 .
PR #17157 .
2022-06-10 14:02:51 +08:00
mxtsdev
5e6174c087
Add file name filter/blacklist
...
Blacklist filtered file names from being downloaded from torrent(s).
Files matching any of the filters in this list will have their priority automatically set to "Do not download".
See Options > Downloads >Do not download.
Closes #3369 .
PR #17106 .
2022-06-10 13:37:46 +08:00
Nowshed H. Imran
199d770e15
Implement new icon/color theme
...
Co-authored-by: xavier2k6 <42386382+xavier2k6@users.noreply.github.com >
2022-06-09 18:18:14 +06:00
Prince Gupta
c47e29c7c8
Do RSS serializing on worker thread
...
PR #16357 .
2022-06-09 15:16:37 +03:00
Chocobo1
fed969ed64
Avoid string encoding conversion
...
Use UTF-16 string literals to match QTextStream internal buffer
encoding.
2022-06-09 12:24:31 +08:00
Chocobo1
9cb686a6b7
Fix wrong file names displayed in tooltip
...
Also rename variable.
Closes #17179 .
2022-06-09 12:24:31 +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
Vladimir Golovnev
ca07540675
Fix rate calculation when interval is too low
...
PR #17155 .
2022-06-08 08:51:48 +03:00
Chocobo1
fb5f563537
Merge pull request #17148 from Chocobo1/gui
...
Fix wrong dialog sizes on first start up
2022-06-05 13:36:41 +08:00
thalieht
2f9c5cdb22
Add "Filter files" field in new torrent dialog
...
PR #16344 .
2022-06-04 12:57:50 +08:00
Chocobo1
fcf50820e8
Don't resize dialog with invalid sizes
...
This fixes wrong dialog sizes on first startup.
2022-06-03 16:07:36 +08:00
Chocobo1
3fd0241abb
Set dialog properties at the caller site
...
Redundant `setModal(true)` are removed since the dialog is already opened via `open()`.
2022-06-02 23:53:30 +08:00
Vladimir Golovnev
ab0c82965c
Avoid redundant checks of category names
...
PR #17130 .
2022-05-31 10:42:40 +03:00
Kacper Michajłow
5173a56ebd
Fix DHT/PeX/LSD status when it is globally disabled
...
Global status takes precedence over specific torrent private status.
PR #17126 .
2022-05-31 12:45:28 +08:00
Chocobo1
9cd993d1da
Merge pull request #17116 from Chocobo1/cleanup
...
Clean up usage of `static` keyword
2022-05-31 12:39:30 +08:00
Chocobo1
73faf67084
Clean up usage of static
keyword
...
They are either misused or redundant, so remove it.
2022-05-30 13:25:34 +08:00
brvphoenix
fd51362545
Don't decompress the reply data for Qt 6.3
...
PR #17120 .
2022-05-30 13:10:29 +08:00
sledgehammer999
56b99f4e19
Merge pull request #17125 from sledgehammer999/cmake_lupdate
...
Use CMake to update translation files
2022-05-29 20:46:15 +03:00
sledgehammer999
63cdfa2d85
Update CIs to correctly regenerate translations files
2022-05-29 02:49:57 +03:00
sledgehammer999
242874e705
Use CMake to update translation files
...
It uses lupdate directly.
Qt's `qt_add_lupdate()` cmake function doesn't help much.
First of all it is Qt6 only.
Secondly, our project is split into multiple targets but we need all
strings into a single .ts file per language.
Thirdly, it looks like it will skip source files that are added conditionally into the build
via cmake condition checking (eg DBUS source files). We need to gather all strings present
in the source files regardless of the build configuration.
On another note, this is a step towards reducing dependency on qmake/autoconf.
2022-05-29 02:49:57 +03:00
Vladimir Golovnev
a5caa807f5
Initialize torrent status using libtorrent extension
...
PR #17096 .
2022-05-28 09:30:50 +03:00
Chocobo1
c2c17fd053
Revise icon cache look up
...
Find in `m_iconCache` first because it is cheaper than calling
`QIcon::fromTheme()`.
2022-05-27 16:23:19 +08:00
Chocobo1
f54cc5796e
Move function into anonymous namespace
2022-05-27 16:23:19 +08:00
Chocobo1
a9f99aed48
Revise code
2022-05-27 16:23:18 +08:00
Chocobo1
7eaaa8f92a
Turn static variable into class member
2022-05-27 04:01:37 +08:00
Chocobo1
ca9f5a18d4
Suppress type narrowing warnings
2022-05-27 04:01:34 +08:00
Vladimir Golovnev
4f62900cd3
Update torrent status filter counters consistently
...
PR #17097 .
Closes #15981 .
Closes #16490 .
2022-05-26 19:55:00 +03:00
sledgehammer999
2c9e1d942b
Merge pull request #17091 from sledgehammer999/ts_newlines_fix
...
Sync translations from Transifex and run lupdate
2022-05-25 20:44:11 +03:00
Vladimir Golovnev
4032393c0e
Pause torrent in all "fastresume rejected" cases
...
PR #17087 .
Addition to #17064 .
2022-05-25 08:24:53 +03:00
xavier2k6
8e854062e8
Sync flag icons with upstream
...
Upstream commit 1f861ac27d8a3b46e78eaa8ac30d7de35279ab01
Upstream release v6.4.2
PR #17077 .
2022-05-25 12:41:16 +08:00
sledgehammer999
cbf9c8ec1a
Sync translations from Transifex and run lupdate
2022-05-25 00:16:57 +03:00
Priit Uring
494593c745
Update clipboard.js to v2.0.11
...
https://github.com/zenorocha/clipboard.js/releases
PR #17073 .
2022-05-24 12:55:30 +08:00
sledgehammer999
3af832ec18
Sync translations from Transifex and run lupdate
2022-05-22 19:14:00 +03:00
Vladimir Golovnev
7e0cd223fd
Revamp tracker entries handling
...
PR #17017 .
2022-05-22 09:09:11 +03:00
Vladimir Golovnev
8c0cd09823
Handle all "fastresume rejected" cases consistently
...
PR #17064 .
2022-05-22 07:23:52 +03:00
Chocobo1
f931fc5a85
Merge pull request #17057 from Chocobo1/build
...
Disable copy, move constructors when inheriting from QObject
2022-05-21 13:12:30 +08:00
Chocobo1
c8b4611d8d
Disable copy, move constructors when inheriting from QObject
2022-05-19 19:07:23 +08:00
Chocobo1
7764169aa3
Disallow narrowing conversions in signal connection
2022-05-19 12:55:07 +08:00
Chocobo1
567dd3fabb
Disable compiler specific extensions
...
The property is set to ON by default, now turn it off.
2022-05-19 12:55:05 +08:00
Chocobo1
8d3c19c599
Merge pull request #17031 from Chocobo1/net
...
Fix wrong GUI behavior in "Optional IP address to bind to" setting
2022-05-19 12:52:35 +08:00
vlakoff
b84333f8a1
Consider brackets within wildcard as regular characters
...
In glob patterns, square brackets have a special meaning, that may be unexpected by the users.
Thus we escape these brackets, so that the only remaining special characters are the * and ? wildcards.
PR #16965 .
2022-05-18 08:33:14 +03:00
thalieht
acdd08e9a2
Consistently emit signal when file "ignored" state is changed
...
PR #17042 .
Closes #17037 .
2022-05-18 07:47:48 +03:00
Chocobo1
dbfd6a2368
WebUI: enforce coding style
...
Actually, not all of them but some that can be enforced by eslint.
The changes are made by eslint with minor manual tweaking.
PR #17046 .
2022-05-18 11:37:05 +08:00
Chocobo1
5af96943e3
Merge pull request #17045 from Chocobo1/cleanup
...
Fix compilation with qmake
2022-05-17 13:14:29 +08:00
Hampton Ford
05325b135d
Fix and improve the docs
...
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
PR #17034 .
2022-05-16 08:40:06 +03:00
Chocobo1
9d858d5cd7
Fix compilation with qmake
...
Fix up 7c35904062
.
2022-05-16 01:15:19 +08:00
Chocobo1
e82c50ed73
Clean up code
2022-05-16 01:15:08 +08:00
Chocobo1
4ce98d57dd
Fix wrong GUI behavior in "Optional IP address to bind to" setting
...
Previously the address field got erroneously reset to "All addresses"
when the network interface is down.
2022-05-14 18:42:13 +08:00
Chocobo1
114c6d36d1
Clean up code
...
Add const.
Move template implementation to .cpp file.
2022-05-14 18:30:10 +08:00
Chocobo1
538c88ced4
Improve logic when interfacing settings with combobox
...
PR #17023 .
2022-05-13 12:13:04 +08:00
Chocobo1
7c35904062
Use stacktrace dialog when GUI is enabled
...
PR #17022 .
2022-05-13 12:12:36 +08:00
Chocobo1
5c3c6b63ba
Migrate to Boost.Stacktrace
...
PR #17014 .
2022-05-12 11:06:05 +08:00
Coda
e698c09298
Allow to use POSIX-compliant disk IO type
...
This patch allows user to switch disk IO type between memory mapped files based type (default in libtorrent 2, and seems causing memory issues) and POSIX-compliant type which is more conservative on memory usage.
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
Co-authored-by: Vladimir Golovnev (Glassez) <glassez@yandex.ru >
PR #16895 .
2022-05-11 21:28:06 +03:00
Vladimir Golovnev
a048ea668f
Use uniform way to export .torrent files
...
PR #17013 .
2022-05-10 15:36:05 +03:00
Vladimir Golovnev
5af78ad2cd
Preserve "skip hash check" when there is no metadata
...
When torrent is added without metadata libtorrent doesn't honor "seed mode" and doesn't save it in resume data so when metadata is available torrent will still check file hashes. This patch will add a logic that preserves originally enabled "seed mode" until the metadata is received.
PR #17009 .
2022-05-10 15:34:38 +03:00
Vladimir Golovnev
338e89176d
Mark all files as complete if torrent is in "seed mode"
...
Fixes regression of bcfa486
.
Closes #16999 .
PR #17008 .
2022-05-10 15:29:46 +03:00
itlezy
a266599118
Add keyboard navigation keys
...
* Added keyboard navigation keys for context menu with `&`
* Added `CTRL+M` for force resume.
PR #16988 .
Co-authored-by: itLezy <itLezy@users.noreply.github.com >
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2022-05-10 11:34:43 +08:00
Chocobo1
80f624e4cc
Merge pull request #17004 from Chocobo1/fixes
...
Improve compatiability with various platforms
2022-05-09 12:14:09 +08:00
Chocobo1
002d56d8b3
Fix type mismatch
...
msys2 was reporting the following error:
```
D:/a/qbittorent_msys2/qbittorent_msys2/src/qBittorrent/src/app/application.cpp: In member function 'void Application::applyMemoryWorkingSetLimit()':
D:/a/qbittorent_msys2/qbittorent_msys2/src/qBittorrent/src/app/application.cpp:777:36: error: no matching function for call to 'min(unsigned int, long unsigned int)'
777 | const SIZE_T minSize = std::min((64 * MiB), (maxSize / 2));
| ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~
```
2022-05-08 16:48:29 +08:00
Chocobo1
be4a1e7fd7
Suppress wrong print specifier
...
By removing unimportant debug message.
2022-05-08 16:46:36 +08:00
Chocobo1
a0a45333f1
Don't use old style casts
2022-05-08 14:53:27 +08:00
Chocobo1
dba998fea0
Don't use hardcoded path for temp folder
2022-05-08 14:00:59 +08:00
Chocobo1
fe2b49cf81
Merge pull request #16992 from Chocobo1/compose
...
Add script for docker-compose
2022-05-07 11:26:03 +08:00
Chocobo1
c90f1511dc
Merge pull request #16987 from Chocobo1/hardening
...
Improve docker script
2022-05-06 11:23:15 +08:00
Chocobo1
763d17281f
Bump boost requirement to 1.71
...
This is a prerequisite for using boost stacktrace.
Note that this is not the first version that introduces boost stacktrace but the version that
should be stable enough.
PR #16986 .
2022-05-06 11:20:34 +08:00
Chocobo1
1ae5339c33
Add script for docker-compose
2022-05-05 22:01:49 +08:00
Chocobo1
7562e0e870
Add support for search engine
...
Also mount /tmp as writable, this is required by qbt and not just for
the search engine functionality.
2022-05-05 19:52:10 +08:00
Chocobo1
0e456f33c1
Run qbt-nox as non-root
...
This is mainly to avoid downloaded files being owned by root which
requires another one or two commands to change the file ownership.
2022-05-05 13:39:52 +08:00
Chocobo1
6778d36454
Make the container filesystem read-only
...
It is not expected to modify the filesystem of the container.
Mounted volumes (-v) are not affected.
2022-05-05 13:39:27 +08:00
Chocobo1
bc54860ad6
Avoid using valid path for illustrative purpose
...
Otherwise docker will really create this example path on host machine
which is bad.
2022-05-05 11:51:21 +08:00
Chocobo1
4894578b72
Improve Docker build
...
* Improves code readability.
* Improve documentation.
* Fix "docker stop" doesn't terminate qbt gracefully which could lead to
data corruption.
* Provide correct/working bittorrent listening port by default.
* Make use of qbt profile option instead of hacking environment
variables.
* Simplify build steps.
PR #16976 .
2022-05-05 11:02:57 +08:00
Tom Piccirello
fb7f7d0c75
Add support for exporting .torrent from WebUI
...
PR #16968 .
2022-05-04 12:13:24 +08:00
Tom Piccirello
48fa4e116c
Fix Docker legal notice when using existing config
...
If the user is using a pre-existing config, don't update the legal notice.
PR #16974 .
2022-05-04 12:12:15 +08:00
Chocobo1
e9d3928fe0
Store WebUI port setting in human readable number
...
Previously it was wrapped in QVariant type.
PR #16977 .
2022-05-04 12:11:17 +08:00
Chocobo1
2a6f02fa29
Fix empty selection in WebUI language combobox
...
This mostly happens with a clean install.
PR #16978 .
2022-05-04 12:10:06 +08:00
summer
ce0e5be7ce
Increase limit of maximum number of articles per feed
...
Closes #16690 .
PR #16698 .
Co-authored-by: An0n <79678786+an0n666@users.noreply.github.com >
2022-05-03 10:59:47 +08:00
Tom Piccirello
a8b6a40f13
Separate docker image data and config dirs
...
PR #16972 .
2022-05-03 10:58:37 +08:00
Chocobo1
88a91e0769
Merge pull request #16971 from Chocobo1/dialog
...
Move stacktrace dialog to gui folder
2022-05-03 10:56:41 +08:00
Chocobo1
21f4676b16
Rename method
2022-05-02 12:35:53 +08:00
Chocobo1
bb2a874fd5
Reset widget property to default
...
This property wasn't been customized.
2022-05-02 12:35:38 +08:00
summer
56667e717b
Prevent the new update box from blocking input on other dialogues
...
PR #16678 .
2022-05-01 16:18:22 +03:00
Chocobo1
caaaa05710
Move conditionals to the bottom
2022-05-01 14:24:56 +08:00
Chocobo1
d69e6bb7aa
Move stacktrace dialog to gui folder
2022-05-01 14:24:39 +08:00
Chocobo1
a1903e5d67
Delete unreachable code
2022-05-01 13:55:26 +08:00
Chocobo1
64d8db0c93
Move system signal related functions to its own file
...
And revise "signal safe print" function.
PR #16953 .
2022-05-01 12:32:51 +08:00
summer
7b608fd0c9
Reduce the number of hashing threads by default
...
This seems to be the culprit responsible for slower hash rate in RC2_0 releases.
https://github.com/qbittorrent/qBittorrent/issues/16043#issuecomment-1113774868
PR #16951 .
2022-05-01 12:30:25 +08:00
Chocobo1
19cbffb5e2
Remove artificial max limits from "Torrent Queueing" related options
...
Closes #16936 .
PR #16942 .
2022-04-30 12:26:18 +08:00
Chocobo1
c5ea6b0502
Merge pull request #16941 from Chocobo1/msvc
...
Fix nogui compilation for Windows
2022-04-30 12:25:24 +08:00
Chocobo1
639ed40314
Disable Linux-specific function when compiling for Windows
2022-04-29 13:49:31 +08:00
Chocobo1
c5cbda0bbe
Avoid splitting code over ifdef
boundary
...
By removing unimportant debug message.
2022-04-29 13:49:31 +08:00
Chocobo1
59e37210f3
Use correct type for comparisons
...
`_write()` actually returns `int` type.
And fix wrong function parameters.
Closes #16938 .
Closes #16944 .
2022-04-29 13:49:31 +08:00
Chocobo1
9351f66c26
Add support for exporting .torrent data to buffer
...
Related: https://github.com/qbittorrent/qBittorrent/pull/16886#discussion_r855882018
PR #16931 .
2022-04-27 12:29:00 +08:00
Vladimir Golovnev
7432c4dbfe
Merge pull request #16922 from glassez/avoid-blocking
...
Avoid some blocking calls to libtorrent
2022-04-27 07:06:23 +03:00
Vladimir Golovnev (Glassez)
1069bea273
Cache native torrent info to avoid extra blocking calls
2022-04-25 09:25:45 +03:00
Vladimir Golovnev (Glassez)
c740d105c9
Don't force update torrent status
2022-04-25 08:32:49 +03:00
Vladimir Golovnev (Glassez)
66a5a9863f
Fill torrent status with initial values when reload
2022-04-25 08:32:44 +03:00
Vladimir Golovnev (Glassez)
7ca47b8916
Delay event processing until status updated
2022-04-25 08:31:50 +03:00
Vladimir Golovnev (Glassez)
bcfa4866fe
Cache indexes of completed files
...
This avoids extra blocking calls to libtorrent.
2022-04-25 08:31:39 +03:00
Amanuense-del-diavolo
de8377ab53
added Dockefile and entrypoint.sh
...
It uses the latest available version for libtorrent and builds both libtorrent and qBittorrent with Cmake + ninja
The legal notice must be accepted trought an environment variable called LEGAL and passed to docker when the container is run, to set it true one must set "LEGAL=accept"
PR #16828 .
2022-04-25 11:39:25 +08:00
xavier2k6
b85b1e8834
Update grunt dependency
...
Use `*` so we don't need to care about its version anymore.
PR #16917 .
2022-04-25 11:38:12 +08:00
Chocobo1
eba5a48abd
Merge pull request #16886 from Chocobo1/export
...
Add "Export .torrent" action
2022-04-24 12:43:13 +08:00
Chocobo1
a90ade0446
Add "Export .torrent" action
2022-04-23 15:11:09 +08:00
xavier2k6
0b86eb9b4c
Update clipboard.js to v2.0.10
...
PR #16918 .
2022-04-23 12:39:06 +08:00
Vladimir Golovnev
359c4fef9d
Avoid dereferencing null pointers
...
PR #16896 .
Closes #16884 and similar issues.
2022-04-19 13:52:56 +03:00
Chocobo1
71b1cb3b9c
Remove unused header
2022-04-19 11:35:51 +08:00
xavier2k6
b740cc23d3
GHA CI: Update dependencies
...
Update `libtorrent` version(s) to `2.0.6` & `1.2.16` in `GHA CI`
- https://github.com/arvidn/libtorrent/releases/tag/v2.0.6
- https://github.com/arvidn/libtorrent/releases/tag/v1.2.16
Update `Boost` version to `1.79.0`
- https://www.boost.org/users/history/version_1_79_0.html
Bump `pre-commit-hooks` version to `4.2.0`
- https://github.com/pre-commit/pre-commit-hooks/releases/tag/v4.2.0
Update `Qt6` version to `6.3.0`
- https://www.qt.io/blog/qt-6.3-released
- https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/6.3.0/release-note.md
Note: used `aqtinstall 2.1.0` with `jurplel/install-qt-action` for support of `Qt 6.2.1+`
(this requirement can be removed on official release of `jurplel/install-qt-action v3`)
PR #16888 .
2022-04-19 10:32:56 +08:00
Vladimir Golovnev
613e9866aa
Merge pull request #16876 from glassez/blocking
...
Avoid some blocking calls to libtorrent
Under some conditions (when libtorrent is doing heavy work), blocking calls can wait quite a long time, thereby suspending the main application thread. In some cases, we can avoid this, since we have enough data to make the job without call to libtorrent. Although in some cases it may require a little more work to be done in the main thread, but overall responsiveness still benefits greatly in the end, especially when the libtorrent working thread is heavily loaded.
2022-04-16 19:27:41 +03:00
Chocobo1
bc937d38a2
Allow to set "working set limit" on non-Windows OS
...
PR #16874 .
2022-04-16 11:36:58 +08:00
Vladimir Golovnev (Glassez)
35fcf39fc8
Add additional trackers without extra blocking call
2022-04-15 11:45:10 +03:00
Vladimir Golovnev (Glassez)
bd45dc5d0f
Avoid some blocking calls to libtorrent
2022-04-14 15:22:32 +03:00
Vladimir Golovnev
7377974731
Improve path extension handling
...
PR #16867 .
2022-04-14 09:43:07 +03:00
Requi
669b67e666
WebAPI: return correct status
...
Fix web API returning Not Found instead of Forbidden.
When not having a session the API would return "Not Found" instead of "Forbidden" when trying to access a non-public endpoint.
PR #16866 .
2022-04-14 08:26:19 +03:00
Chocobo1
a2b85ba1fd
Provide interface for Application class
...
PR #16864 .
2022-04-14 12:04:58 +08:00
Chocobo1
dc22109fa7
Merge pull request #16863 from Chocobo1/run
...
Remove redundant function
2022-04-13 12:05:58 +08:00
Vladimir Golovnev
4471a6377e
Have separate API controller instances per session
...
PR #16848 .
2022-04-12 13:39:35 +03:00
Chocobo1
3f762a416d
Use proper method for deferred calls
2022-04-12 16:23:39 +08:00
Chocobo1
a59a6ce8e4
Remove redundant function
...
This helper function is useless after using `Path` class.
2022-04-11 13:07:53 +08:00
Chocobo1
189514c6de
Fix wrong v2 hash string displayed in WebUI
...
Previously `0000...` was erroneously displayed when v2 hash is absent,
now it correctly shows the `N/A`.
PR #16846 .
2022-04-10 12:46:24 +08:00
Vladimir Golovnev
dded874350
Correctly apply content layout when "Skip hash check" is enabled
...
PR #16825 .
2022-04-06 14:01:41 +03:00
Chocobo1
e42fa0e027
Merge pull request #16820 from Chocobo1/comparisons
...
Move comparison operator out of class
2022-04-06 13:35:34 +08:00
Vladimir Golovnev
33ffe95294
Correctly populate trackers filter list
...
PR #16814 .
2022-04-05 07:28:00 +03:00
Vladimir Golovnev
0657238ad1
Don't forget to create 'download_path' field
...
PR #16468 .
2022-04-05 07:27:11 +03:00
Vladimir Golovnev
4efece4ab8
Use an appropriate method to show modal dialog
...
PR #16809 .
2022-04-05 07:26:17 +03:00
Chocobo1
b9b2ed64f9
Assign temporary data to a variable
...
This is mainly to avoid dangerous code pattern: getting an iterator on a
temporary object. Previously `data()` returns a const reference so the
code wasn't doing any harm.
2022-04-05 11:49:32 +08:00
Chocobo1
16bc0531f4
Simplify code
2022-04-05 10:39:23 +08:00
Chocobo1
39c34078d6
Move comparison operator out of class
2022-04-04 16:32:14 +08:00
Chocobo1
9318f05e2b
Merge pull request #16801 from Chocobo1/int
...
Migrate away from unsigned integer types
2022-04-04 13:13:36 +08:00
sledgehammer999
95f3073e6f
Merge pull request #16745 from sledgehammer999/drop_qt_translations_folder
...
Drop qt translations folder
2022-04-04 01:56:56 +03:00
Chocobo1
6f4a9390ba
Fix wrong conversion to QVariant
...
It was converted to bool-like type which is wrong.
2022-04-03 13:34:29 +08:00
Chocobo1
0eb6967bb2
Migrate away from unsigned integer types
...
Signed integers should be preferred in these cases.
2022-04-03 13:34:29 +08:00
Chocobo1
2854630b1c
Use signed integer type for counters
2022-04-03 13:33:55 +08:00
Chocobo1
bbd781c420
Omit redundant cast
2022-04-03 13:01:44 +08:00
Chocobo1
f7cfdfcf63
Merge pull request #16784 from Chocobo1/webui
...
WebUI: show correct location path
2022-04-03 12:54:38 +08:00
Chocobo1
af7c32d3aa
WebUI: remove temporary element
2022-04-02 17:26:26 +08:00
Chocobo1
0d334369f0
WebUI: show correct location path
...
The `path` might contains '&' (delimit character) so it must be
encoded.
Closes #15976 .
2022-04-02 17:26:26 +08:00
Chocobo1
08f3630f01
WebUI: make various dialog resizable
...
And enlarge dialog default width.
2022-04-02 17:26:24 +08:00
Yurii Kolesnykov
2b17838820
Remove outdated info about nightly builds
...
Closes #16790 .
PR #16791 .
2022-04-02 13:59:35 +08:00
Chocobo1
0b0338a9cb
Merge pull request #16794 from Chocobo1/qmake
...
Use qmake built-in variable to specify C++ version
2022-04-02 12:33:29 +08:00
Chocobo1
a24f2ae884
GHA CI: bump "setup vcpkg" action version
2022-04-01 15:49:21 +08:00
Chocobo1
ec5b0b5403
Use qmake built-in variable to specify C++ version
2022-04-01 15:35:22 +08:00
Vladimir Golovnev
df2d449f9b
Revamp content layout handling
...
Apply content layout only if desired file names aren't provided.
Remove helpers with confusing signatures.
Don't remove root folder twice.
PR #16724 .
Closes #16259 .
2022-04-01 09:35:45 +03:00
Chocobo1
eecd221d40
Merge pull request #16767 from Chocobo1/ci
...
GHA CI: work around error when installing Qt
2022-03-30 12:21:34 +08:00
Chocobo1
3951b891c1
GHA CI: work around error when installing Qt
...
This is to (temporarily) work around CI errors at jurplel/install-qt-action.
Upstream issue: https://github.com/jurplel/install-qt-action/issues/130
2022-03-29 11:26:57 +08:00
Chocobo1
eab455422f
Add missing header
...
Fix up 75c93d72be
.
2022-03-29 11:19:37 +08:00
Chocobo1
75c93d72be
Revise string literal usage
...
This commit covers src/gui folder.
PR #16757 .
2022-03-29 10:41:17 +08:00
sledgehammer999
6842e8263d
qmake: Bump MACOSX deployment target to 10.15
2022-03-29 01:52:26 +03:00
sledgehammer999
f35d94d98e
Update instructions about NSIS packaging
...
Include a helper a script to gather valid Qt translations for packaging.
2022-03-29 01:52:25 +03:00
sledgehammer999
01206a0e2e
Delete Qt translations files
2022-03-29 01:52:24 +03:00
sledgehammer999
cf9e3193bc
qmake: Use installed Qt's translations for packaging
2022-03-29 01:52:24 +03:00
sledgehammer999
f5239ffb0b
CMake: Use installed Qt's translations for packaging
2022-03-29 01:52:23 +03:00
Chocobo1
746fe7ba09
Merge pull request #16738 from Chocobo1/qstring
...
Improve function interface
2022-03-28 12:28:28 +08:00
Chocobo1
7c1a986e61
Implement stringable interface for Version
type
2022-03-26 13:58:25 +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
An0n
11cfe38d1c
Fix WebUI crash due to missing tags from config
...
Tags can be missing from config but set inside .fastresume. May happen due to corrupted/deleted config.
Closes #11906 .
PR #16711 .
2022-03-26 11:56:18 +08:00
Chocobo1
4ca6de2b54
Revise string literal usage
...
PR #16703 .
2022-03-26 11:53:50 +08:00
Chocobo1
e1abcc684a
Merge pull request #16705 from Chocobo1/path
...
Use proper type to represent a path
2022-03-25 13:00:11 +08:00
Chocobo1
bbd936fdfa
Don't use explicit memory management
...
And avoid dangling pointers.
2022-03-24 14:44:38 +08:00
Chocobo1
f58eed13d0
GHA CI: use Qt6 for Windows builds
...
PR #16696 .
2022-03-24 12:19:07 +08:00
Chocobo1
8a708fd97e
Use proper type to represent a path
2022-03-23 22:04:05 +08:00
An0n
bf8d993743
Change Downloaded to Times Downloaded in trackers tab
...
PR #16677 .
2022-03-23 12:57:45 +08:00
Vladimir Golovnev
c029122a8e
Avoid integer overflow when calculating working set size
2022-03-23 07:56:59 +03:00
Sam James
54327d579b
CMake: fix systemd directory help text
...
The option is case sensitive.
PR #16695 .
Signed-off-by: Sam James <sam@gentoo.org >
2022-03-23 12:56:14 +08:00
Chocobo1
6c10aa33e1
Provide interface for serialization to string type
...
PR #16685 .
2022-03-23 12:55:41 +08:00
sledgehammer999
b7c098c5e6
Sync translations from Transifex and run lupdate
2022-03-22 15:47:05 +02:00
Vladimir Golovnev
c18c42e866
Merge pull request #16686 from glassez/set-location
...
Fix "Set location" to be really applied
2022-03-22 13:12:43 +03:00
Vladimir Golovnev (Glassez)
386f99cb1d
Fix "Set location" to be really applied
2022-03-21 11:58:37 +03:00
Vladimir Golovnev (Glassez)
a4b606c6e9
Fix compilation issues due to inappropriate QString usage
2022-03-21 11:50:32 +03:00
AbeniMatteo
baa8d2c326
Add option to toggle filters sidebar
...
PR #15409 .
2022-03-21 12:41:06 +08:00
Chocobo1
e1ca0f3ff9
Merge pull request #16669 from Chocobo1/literal
...
Use QString literals
2022-03-21 12:09:43 +08:00
Vladimir Golovnev
ca2be2f499
Prevent Digest32 shared data from being detached
...
Delayed hash string generation should not cause detaching of shared data.
PR #16664 .
2022-03-20 12:26:13 +03:00
Vladimir Golovnev
5960e7dda6
Prevent crash when open torrent destination folder
...
Uses the same workaround as Qt does to call ShellExecute() when you use QDesktopServices::openUrl().
PR #16670 .
Closes #16423 .
2022-03-20 11:08:27 +03:00
Chocobo1
efc04645b7
Use QString literals
...
It covers src/webui and enables `QT_NO_CAST_FROM_ASCII`.
2022-03-20 13:33:40 +08:00
Chocobo1
f888fb4ac7
Remove unused code
2022-03-19 15:57:37 +08:00
Chocobo1
e71e97cb68
Merge pull request #16652 from Chocobo1/literal
...
Use QString literals
2022-03-18 14:09:29 +08:00
Chocobo1
1b4c5fd34d
Remove unused variable
2022-03-18 12:48:37 +08:00
Chocobo1
802ec5a14e
Use QString literals
...
This patch covers src/gui and some leftovers from previous commit.
2022-03-18 12:46:01 +08:00
Chocobo1
5341478036
Merge pull request #16647 from NotTsunami/hscroll
...
Add horizontal scrolling for tracker list and torrent content
2022-03-18 12:43:32 +08:00
Chocobo1
7694b21dff
Enlarge "speed limits" icons
...
And make use of QStyle pixelMetric().
PR #16630 .
2022-03-18 12:27:45 +08:00
Tyler Dunn
cf061b7d30
Allow buttons to be focusable
...
This improves accessibility.
PR #16648 .
2022-03-17 12:51:47 +08:00
Chocobo1
7fffb6526c
Remove redundant properties
...
And revise tooltip messages.
PR #16651 .
2022-03-17 12:50:08 +08:00
NotTsunami
dd5b16831c
Unify coding style
2022-03-16 21:45:24 -04:00
Vladimir Golovnev
b3ca2ea179
Merge pull request #16573 from glassez/resume-data
...
Prevent loading resume data with inconsistent ID
2022-03-16 20:30:04 +03:00
NotTsunami
b5d67f90e4
Add horizontal scrolling for tracker list and torrent content
2022-03-15 15:05:47 -04:00
Vladimir Golovnev (Glassez)
ce42f7c9f1
Properly handle metadata download for an existing torrent
2022-03-15 18:17:24 +03:00
Chocobo1
02869d7428
Avoid unnecessary lookups
...
Fix up 30319e51e5
.
PR #16629 .
2022-03-15 12:33:12 +08:00
Aleksandr Cupacenko
67b35b76ac
Fix C++ word breaking
...
Fixes #13805 .
PR #16636 .
2022-03-14 12:27:44 +08:00
Chocobo1
baebabbfd8
Merge pull request #16639 from Chocobo1/hash
...
Avoid redundant hashing
2022-03-14 12:26:55 +08:00
Chocobo1
154ee1a73e
Use hashing helpers provided by Qt6
2022-03-13 17:37:54 +08:00
Chocobo1
b3fb6bd990
Avoid redundant hashing
...
The return type of `std::hash()` is larger (or equal) than what
`qHash()` requires so we can omit hashing it again.
2022-03-13 17:37:54 +08:00
Chocobo1
926d51839f
Update function signature for Qt6 qHash()
...
Since the `qhash()` signature has changed in Qt6.
2022-03-13 16:05:11 +08:00
Chocobo1
8de966ea88
Merge pull request #16585 from Chocobo1/qstring
...
Use QString literals
2022-03-12 12:49:08 +08:00
Chocobo1
85b0a40a0e
Merge pull request #16587 from jagannatharjun/tracker-filter
...
Optimize torrent filters in GUI
2022-03-12 12:48:49 +08:00
Chocobo1
88fe94bd6a
Remove obsoleted functions from Utils::Gui namespace
...
`widget` parameter is kept for now to avoid major disruption for other PR.
Also add comments for loading svg images.
PR #16613 .
2022-03-11 13:40:58 +08:00
Aleksandr Cupacenko
1b53c590f2
Allow blank lines in multipart form-data input
...
Fixes #11298 .
PR #16579 .
2022-03-11 13:40:22 +08:00
Chocobo1
2ee5b35f48
Use proper image loading path for SVG icons
2022-03-11 00:11:30 +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
Chocobo1
f08c0afbea
Update NSIS French translation
...
PR #16562 .
Co-authored-by: RqndomHax <paul.codepro@gmail.com >
2022-03-10 12:32:53 +08:00
Chocobo1
5a417c6a29
Merge pull request #16584 from Chocobo1/pr_16548
...
Allow setting the number of maximum active checking torrents
2022-03-09 10:10:15 +08:00
Chocobo1
9f32e6e50d
Fix wrong parentheses
...
Fix up 294ea17222
.
2022-03-08 13:58:02 +08:00
An0n
801cfdbc24
Allow setting the number of maximum active checking torrents
...
This is to allow re-checking of multiple torrents simultaneously. This will benefit users who
have multiple disks or SSD.
Closes #15296 .
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2022-03-08 13:24:12 +08:00
xavier2k6
889d994dbc
Remove unnecessary UI properties from "IP Filter Refresh" button
...
PR #16575 .
2022-03-08 13:22:23 +08:00
Chocobo1
97c28e1e51
Merge pull request #16594 from Chocobo1/alert
...
Add option for enable/disable performance warnings from libtorrent
2022-03-08 13:19:54 +08:00
Prince Gupta
ad6e2b4b94
Create hash string of Digest on demand
...
most of the time hash string is not needed and InfoHash is often used as
temporaries for torrent searching in handling of torrent alerts. This
improves the creation time of Infohash
2022-03-08 01:14:36 +05:30
Prince Gupta
da12daffee
Cache tracker item in TrackerFilterList
2022-03-08 01:12:06 +05:30
Prince Gupta
30319e51e5
Improve Status Filter
...
replaces quadratic update operation with linear
2022-03-08 01:12:06 +05:30
Chocobo1
294ea17222
Provide upstream documentation link for performance warning
2022-03-07 13:26:37 +08:00
Chocobo1
fad954df18
Add option for enable/disable performance warnings from libtorrent
2022-03-06 21:05:17 +08:00
Prince Gupta
25be00931a
Optimize tracker insertion in TrackerFiltersList
2022-03-06 12:04:01 +05:30
Prince Gupta
cd9ed1706d
Improve torrent event handling in TrackerFiltersList
2022-03-06 12:04:01 +05:30
Chocobo1
b034b86be8
Merge pull request #16574 from xavier2k6/update_actions
...
GHA CI: Update multiple workflow `actions`
2022-03-06 13:00:09 +08:00
An0n
aa189a7fc6
Disable force reannounce when it is not possible
...
Closes #12080 .
PR #16551 .
2022-03-06 12:59:31 +08:00
xavier2k6
074cbdad28
GHA CI: Update upload-artifact
action to v3
2022-03-04 23:13:36 +00:00
Vladimir Golovnev (Glassez)
cbc0ef860b
Prevent loading resume data with inconsistent ID
2022-03-04 09:22:56 +03:00
Chocobo1
ab64ee872b
Use QString literals
...
The plan is to define `QT_NO_CAST_FROM_ASCII` eventually.
PR #16561 .
2022-03-04 13:25:22 +08:00
xavier2k6
a63515b8f4
GHA CI: Update stale
action to v5
2022-03-02 19:44:46 +00:00
xavier2k6
4dcd6df136
GHA CI: Update setup-python
action to v3
2022-03-02 19:41:43 +00:00
xavier2k6
cea1bbde23
GHA CI: Update checkout
action to v3
2022-03-02 19:39:35 +00:00
Aleksandr Cupacenko
2c8447853b
Focus save path when Manual mode is selected initially
...
Closes #15972 .
PR #16536 .
2022-03-02 13:27:22 +08:00
Chocobo1
116664285d
GHA CI: Don't cancel CI builds on non-pull-request branches
...
Fix up 2652c73a4f
.
PR #16558 .
2022-03-02 13:26:13 +08:00
Vladimir Golovnev
213b18e33b
Merge pull request #16531 from glassez/save-path
...
Correctly handle changing of global save path
2022-03-01 19:59:35 +03:00
Vladimir Golovnev
299f981441
Allow to limit max memory working set size
...
PR #16485 .
2022-03-01 16:42:25 +03:00
An0n
7ea827f8d3
Add right click menu for status filters
...
This will allow users to perform action on all torrents with a single click instead of having to select all with ctrl+A or other cumbersome ways. Basically it copies the function found in tracker/category filters.
Closes #13398 .
PR #16547 .
2022-03-01 13:18:48 +08:00
An0n
c2af5c6a3f
Allow setting priority for partially downloaded multi-file torrent
...
Currently you can't directly change the priority of a partially completed multi file torrent. You'll have to start downloading those files and then change their priority.
Closes #10994 .
Closes #8673 .
PR #16546 .
2022-03-01 12:53:39 +08:00
thalieht
63812ca951
Don't use hack to make the first column movable
...
PR #16545 .
2022-03-01 12:50:10 +08:00
Aleksandr Cupacenko
98bdfcef65
Fix scrolling to the lowermost visible torrent
...
Fixes #3221 .
PR #16543 .
2022-03-01 12:49:40 +08:00
Chocobo1
ac97ed685f
Add tuning options related to performance warnings
...
Related: #16462 .
PR #16538 .
2022-03-01 12:44:48 +08:00
Vladimir Golovnev (Glassez)
c5ff9b353c
Allow to disable Automatic mode when "temp" path changed
2022-02-28 09:41:44 +03:00
Vladimir Golovnev (Glassez)
04c1988665
Correctly handle changing of global save path
2022-02-28 09:04:37 +03:00
Chocobo1
36c14ca587
Merge pull request #16539 from Chocobo1/ci
...
GHA CI: install boost library manually
2022-02-28 12:43:58 +08:00
Chocobo1
0c118bed61
GHA CI: disable uploading built artifacts for macOS
...
The binary aren't usable universally because users are required to
install related libraries.
2022-02-27 15:45:27 +08:00
Chocobo1
6c6474291e
GHA CI: install boost library manually
...
libtorrent 2.0.5 has build issues with boost >= 1.78.
2022-02-27 15:45:26 +08:00
xavier2k6
7fa89c9ba4
GHA CI: Update "WebUI" setup-node
action to v3
...
PR #16532 .
2022-02-27 12:49:38 +08:00
Aleksandr Cupacenko
d2aad3a3ca
Rename content tab "Size" column to "Total Size"
...
Closes #7348 .
PR #16526 .
2022-02-27 12:48:11 +08:00
Aleksandr Cupacenko
ca09b0491e
Enable shortcut folders for the Open and Save directory dialogs
...
PR #16527 .
2022-02-26 22:24:50 +03:00
Aleksandr Cupacenko
2e08ae82b1
Enable Combobox editor for the "Mixed" file download priority
...
Fixes #1544 .
PR #16522 .
2022-02-26 12:53:41 +08:00
Chocobo1
2652c73a4f
GHA CI: cancel outdated in-progress workflow runs
...
This will only cancel outdated workflow runs on PR branches and won't affect other normal repo
branches.
PR #16511 .
2022-02-25 13:34:28 +08:00
Chocobo1
a21bff1dbd
Merge pull request #16483 from Chocobo1/preference1
...
Convert to QString literals
2022-02-22 14:15:49 +08:00
Chocobo1
14fc3dc9b3
Suppress conversion warning
2022-02-21 13:58:51 +08:00
Chocobo1
5cb295341c
Convert to QString literals
2022-02-21 13:58:51 +08:00
Chocobo1
b854c3b00e
Unify log messages format
...
This improves readability and may allow users to match log message with
better accuracy.
Now log message is consisted of 2 parts:
The first part is a short sentence describing the event. It should avoid
writing out the specifics of the event as it will be described in the
next part of the message. The sentence should use correct tense of the
event.
The second part consist of `Name: Value` pairs which will provide
sufficient info for the event.
Note that none of the message parts is mandatory, one of them can be
omitted when the resulting log message is clear enough.
PR #16437 .
2022-02-21 13:07:04 +08:00
Vladimir Golovnev
2d3ff6a97c
Use std::optional to represent "any value" filters
...
PR #16460 .
2022-02-20 13:17:34 +03:00
Chocobo1
c627ed4b6f
GHA CI: exclude checking for GUI i18n files
...
And bump hooks version along the way.
PR #16484 .
2022-02-20 13:43:57 +08:00
Vladimir Golovnev
70ec183fca
Merge pull request #16444 from glassez/path-has-ext
...
Improve performance of checking path extension
2022-02-19 07:08:54 +03:00
Vladimir Golovnev (Glassez)
1e45b7f50b
Add fast way of removing suggested extension
2022-02-18 11:37:51 +03:00
Vladimir Golovnev (Glassez)
293479a1f2
Improve performance of checking path extension
2022-02-18 11:37:51 +03:00
Juanjo Jiménez
7b8962a796
Update NSIS translations for "Spanish" and "Spanish International"
...
PR #16455 .
2022-02-18 11:28:43 +08:00
Chocobo1
852a14992c
Add literal operator to efficiently construct QString
in Qt5
...
PR #16448 .
2022-02-18 11:28:04 +08:00
Kevin Cox
37e6a9ebc2
Fix UI crash when torrent is in non-existent category.
...
This checks that `category_list[categoryHash].torrents` is truthy before dereferencing it. In some cases the API response will have a torrent in a category that doesn't exist resulting in the check to return `undefined` which is not `null`. This broadens the check so that it will create the category even if null.
PR #16432 .
2022-02-17 12:20:54 +08:00
Vladimir Golovnev
b3f5bf1583
Try to recover missing categories
...
PR #16430 .
2022-02-16 10:27:36 +03:00
sledgehammer999
a3a8c19dc2
Sync translations from Transifex and run lupdate
2022-02-14 19:28:07 +02:00
Chocobo1
bc94de5626
Merge pull request #16428 from Chocobo1/path
...
Improve Path constructor
2022-02-14 14:02:50 +08:00
Vladimir Golovnev
c3a64b3d6c
Cache file priorities
...
Speedup access to file priorities by avoiding extra blocking call to libtorrent thread.
Improve the Torrent interface by hiding the asynchrony of file priority changes behind the scenes.
PR #16425 .
2022-02-13 08:07:30 +03:00
Chocobo1
70eed10a34
Fix wrong size
...
Fix up cf96e6c642
.
2022-02-12 16:54:38 +08:00
Chocobo1
56c3983885
Improve Path
constructor performance
2022-02-12 16:54:38 +08:00
Vladimir Golovnev
78eaa49cd6
Correctly register PathList alias
...
PR #16411 .
2022-02-10 08:12:33 +03:00
Chocobo1
2668a42f0c
Merge pull request #16408 from Chocobo1/vararray
...
Use QVarLengthArray whenever applicable
2022-02-10 12:44:41 +08:00
Vladimir Golovnev
4a7f1116ac
Improve tracker status handling
...
PR #16383 .
2022-02-09 18:23:41 +03:00
Chocobo1
f12ce78b5c
Remove hack for outdated IE 6 browser
...
The `mask()` isn't valid in CSS.
2022-02-09 19:00:28 +08:00
Chocobo1
610009fb7f
Make Path::operator== a free function
2022-02-09 19:00:27 +08:00
Chocobo1
4cb075b168
Use "table look-up" method for reversing byte
...
This method takes constant time and is less prone to (CPU) pipeline stalling due to less
computation. Also it is slightly faster than the previous method.
2022-02-09 19:00:27 +08:00
Chocobo1
cf96e6c642
Use QVarLengthArray whenever applicable
2022-02-09 19:00:24 +08:00
Vladimir Golovnev
dd1bd8ad10
Implement class for handling filesystem paths
...
PR #15915 .
2022-02-08 06:03:48 +03:00
Vladimir Golovnev
facfa26eed
Allow to use Category paths in "Manual" mode
...
If the option is enabled any relative save path will be resolved against an appropriate Category path instead of Global default one.
PR #16330 .
2022-02-02 09:24:09 +03:00
Prince Gupta
0012a3ede7
Optimize completed files handling
...
PR #16329 .
Co-authored-by: Vladimir Golovnev (Glassez) <glassez@yandex.ru >
2022-02-01 08:29:54 +03:00
Vladimir Golovnev
b61a818a3f
Merge pull request #16333 from thalieht/newdlg
...
Add Select All/None buttons in new torrent dialog
2022-01-31 15:38:33 +03:00
Chocobo1
a2c44dedce
Fix crash when shutting down and clicked on system tray icon
...
Disconnect all signals of system tray icon when shutting down.
Closes #16324 .
PR #16328 .
2022-01-31 11:54:44 +08:00
thalieht
a8ad4f784a
Fix "Free space on disk" in new torrent dialog
...
Always initialize it.
2022-01-30 18:52:18 +02:00
thalieht
78d69bcbf0
Add Select All/None buttons in new torrent dialog
2022-01-30 18:52:18 +02:00
Prince Gupta
414361a3db
Improve tracker error handling
...
* Improve tracker error handling
* Fix typo in function name
PR #16298 .
2022-01-30 08:56:31 +03:00
Prince Gupta
1d4071d6d8
Don't rename file because of difference in path separator
...
PR #16317 .
2022-01-30 08:54:37 +03:00
Vladimir Golovnev
47daf1b358
Allow to open incomplete files from content view
...
Fixes regression from f44341a8e2
.
PR #16318 .
2022-01-30 08:52:16 +03:00
Chocobo1
7a910a8cc1
Merge pull request #16256 from Chocobo1/bitarray
...
Speed up bitfields conversion
2022-01-28 11:59:57 +08:00
Vladimir Golovnev
9818c7b6a4
Open correct directory when clicked on Browse button
...
PR #16252 .
2022-01-27 07:41:30 +03:00
Vladimir Golovnev
ca9e5e8531
Change torrent moving state when it is cancelled
...
PR #16267 .
2022-01-27 07:40:17 +03:00
Chocobo1
aafee60033
Allocate memory on stack whenever feasible
...
The fast path gives another 20% speed up than the slower path.
2022-01-27 03:36:06 +08:00
Vladimir Golovnev
adf7c4ffb6
Merge pull request #16268 from glassez/fix-15955
...
Store hybrid torrents using "torrent ID" as basename
2022-01-26 15:17:31 +03:00
Prince Gupta
96965ae347
CMake: Call UIC on the .ui files manually
...
Fixes unnecessary recompilation when editing GUI files.
PR #16151 .
2022-01-26 14:44:44 +03:00
Vladimir Golovnev
bc2ef5d726
Add confirmation for enabling Auto TMM from context menu
...
* Add confirmation for enabling Auto TMM from context
* Add tooltip to Automatic Torrent Management context menu action
PR #16241 .
2022-01-26 06:56:46 +03:00
Vladimir Golovnev (Glassez)
7a539d9890
Store hybrid torrents using "torrent ID" as basename
2022-01-25 11:39:32 +03:00
Vladimir Golovnev (Glassez)
c40408b337
Make Digest32 implicitly shared class
2022-01-25 10:18:23 +03:00
Chocobo1
4e2daf117b
Speed up bitfields conversion
...
The old code took 3~5 times longer than the newer version.
2022-01-25 12:19:50 +08:00
Chocobo1
9553afc3c2
Merge pull request #16247 from Chocobo1/count_bits
...
Speed up piece relevance calculation
2022-01-25 12:11:36 +08:00
Vladimir Golovnev
26352c9eb4
Cache pieces info
...
PR #16238 .
2022-01-25 06:05:16 +03:00
thalieht
62c167fc77
Add tooltip to Automatic Torrent Management context menu action
2022-01-24 18:32:43 +02:00
thalieht
03c774eae7
Add confirmation for enabling Auto TMM from context menu
...
Closes #16046
2022-01-24 18:32:43 +02:00
Chocobo1
53992bf0d5
Initialize class variable in initializer list
2022-01-24 13:47:34 +08:00
Chocobo1
ff99e5ac9a
Speed up piece relevance calculation
...
For ~800 pieces, this roughly cuts the run time (of this function) in
half.
2022-01-24 12:04:26 +08:00
Prince Gupta
0cc318664d
Improve Torrent content tree structure creation
...
Use QHash to cache folder items.
PR #16183 .
2022-01-24 10:55:06 +08:00
Chocobo1
43c427b253
Merge pull request #16167 from Chocobo1/auto-resize
...
Add "Auto resize columns" functionality
2022-01-24 10:54:26 +08:00
Chocobo1
44c8d60a70
Remove unused parameter
2022-01-23 15:03:26 +08:00
Chocobo1
54252184ab
Make use of std algorithms
...
Since the result code is shorter.
2022-01-23 15:03:26 +08:00
Chocobo1
7ae68b20e7
Add "Auto resize columns" functionality
2022-01-23 15:03:05 +08:00
Chocobo1
208234b934
Clean up code related to show/hide columns
2022-01-21 22:59:21 +08:00
thalieht
1729b9f29c
Fix wrong closing brace position
...
Regression from 0086bf8958
.
PR #16172 .
2022-01-20 12:30:46 +08:00
Vladimir Golovnev
5d69334287
Don't start separate event loop for QFileDialog
...
It conflicts with QMenu on Qt6 that causes the crash.
PR #16158 .
2022-01-20 07:22:16 +03:00
Vladimir Golovnev
4d54fb675f
Correctly handle received metadata
...
It did not work correctly, since it assumed that 'lt::torrent_plugin' is created at an earlier stage and is able to track all changes in the torrent state, but in reality it turned out that it was created after the torrent moved to the `downloading_metadata` state, so we had to additionally handle it in the constructor.
PR #16121 .
2022-01-16 16:06:15 +03:00
Chocobo1
e93de54eb5
Merge pull request #16099 from Chocobo1/errormsg
...
Revise error message
2022-01-15 12:01:55 +08:00
Vladimir Golovnev
43441d8291
Handle missing torrent alerts
...
PR #16085 .
2022-01-14 15:18:18 +03:00
Chocobo1
d6dce1efe9
Add comment for new libtorrent build flag
...
Upstream change:
66def89089
2022-01-14 14:48:47 +08:00
Chocobo1
dca69f053a
Remove outdated build configuration
2022-01-14 14:48:47 +08:00
Chocobo1
5ebbed8160
Revise error message
...
Remove the period mark at the end of error message since
`errc.message()` already contains one.
2022-01-14 14:48:41 +08:00
thalieht
3fdb330bd9
Restore all settings to the torrent list's context menu
...
Set location
Category
Sequential download
Download first/Last pieces first
Automatic Torrent Management
PR #16016 .
2022-01-14 14:45:03 +08:00
Chocobo1
c05dbc451a
GHA CI: build libtorrent with /guard:cf
flag
...
qbt cmake script enables that flag already, so it make sense to build
dependencies with it too.
PR #16083 .
2022-01-14 14:43:22 +08:00
Vladimir Golovnev
5f623e32c4
Correctly handle XML parsing errors
...
PR #16071 .
2022-01-13 09:36:08 +03:00
thalieht
7c37c5c06f
Update the torrent's download path field when changing category
...
In torrent options dialog while in Automatic Management Mode.
PR #16026 .
2022-01-13 12:44:50 +08:00
Chocobo1
4d541ca969
Add Qt6 version to INSTALL file
...
PR #16054 .
2022-01-13 12:39:15 +08:00
Chocobo1
e4a67183bd
Update default value of "Type of service for peers"
...
Upstream change:
3d701c7380
PR #16036 .
2022-01-12 11:53:07 +08:00
sledgehammer999
d25be686ee
Merge pull request #16030 from sledgehammer999/migrate_proxy_enum
...
Migrate proxy settings
2022-01-12 02:51:57 +02:00
Vladimir Golovnev
a3be239a60
Keep "torrent info" alive while generating .torrent file
...
PR #16018 .
2022-01-11 07:29:42 +03:00
Vladimir Golovnev
709a053c7c
Merge pull request #16009 from glassez/dont-move-into-itself
...
Don't try to move storage into its current location
2022-01-11 07:26:22 +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
84a8158aa2
Correctly track the root folder name change
...
PR #16004 .
2022-01-11 07:24:24 +03:00
sledgehammer999
a7c5826e05
Migrate proxy settings
...
Q_ENUM_NS(ProxyType) was introduced in 4.4.0.
Before that wrapping QMetaEnum used the int value itself for loading/storing.
Closes #15994
2022-01-11 02:50:03 +02:00
Nicolas Fella
2da39e2fbb
Mark as single window app in .desktop file
...
qBittorrent is a single-window application.
By marking it as such desktop environments know to not offer to open
a new window for it.
This is a new standard key intruduced in
3ea3bc26e2
PR #15996 .
2022-01-10 13:31:53 +08:00
Chocobo1
d6e0164766
WebAPI: fix wrong key used for categories
...
Regression from 1c0f8b4289
.
Closes #15969 .
PR #15988 .
2022-01-10 13:31:15 +08:00
Vladimir Golovnev (Glassez)
fbc85bed64
Move torrent immediately when "save path" is changed
2022-01-10 08:18:34 +03:00
Vladimir Golovnev (Glassez)
52b54fe154
Don't try to move storage into its current location
2022-01-09 21:14:49 +03:00
Vladimir Golovnev
f44341a8e2
Handle .!qB extension behind the scenes
...
PR #15920 .
2022-01-08 08:45:50 +03:00
Chocobo1
9f6130cbaa
Move new line character out of translation string
...
PR #15948 .
2022-01-08 12:24:49 +08:00
Chocobo1
24d73f5822
Merge pull request #15947 from Chocobo1/remove
...
Remove TODO and NEWS files
2022-01-08 12:24:10 +08:00
thalieht
d3bdeaab3f
Replace "seeding_duration" with "finished_duration" everywhere
...
Closes #10223 .
PR #13601 .
2022-01-07 15:22:51 +08:00
Chocobo1
b66f4b9322
Remove TODO and NEWS files
...
The contents are outdated and the files are not in use.
`configure.ac` is adjusted to suppress automake errors.
https://www.gnu.org/software/automake/manual/html_node/Strictness.html#index-Strictness_002c-foreign
2022-01-07 12:19:01 +08:00
Chocobo1
9dfe5f5f07
Sort entires
2022-01-07 12:18:03 +08:00
sledgehammer999
d6fc020ba7
Bump to 4.5.0alpha1
2022-01-06 20:47:06 +02:00
sledgehammer999
8397b118b7
Update Changelog
2022-01-06 20:37:49 +02:00
sledgehammer999
74dc000ac1
Sync translations from Transifex and run lupdate
2022-01-06 20:35:45 +02:00
sledgehammer999
9b61991523
Merge pull request #15926 from sledgehammer999/fix_migration
...
Correct the order of the migrated settings' mappings
2022-01-06 14:46:48 +02:00
sledgehammer999
702c79a92f
Don't delete old config keys yet
...
It will allow users to go back to previous versions without
losing their settings.
2022-01-05 01:01:10 +02:00
sledgehammer999
a27822b557
Correct the order of the migrated settings' mappings
2022-01-04 16:48:17 +02:00
sledgehammer999
bdcb00a3b2
Merge pull request #15923 from sledgehammer999/misc_fixes
...
Misc fixes before v4.4.0
2022-01-04 16:40:37 +02:00
sledgehammer999
ac5a485651
Disambiguate the data type
2022-01-04 01:39:01 +02:00
sledgehammer999
e8c65388eb
Bump copyright year
2022-01-04 01:39:00 +02:00
sledgehammer999
f2cbb61d49
Sync translations from Transifex and run lupdate
2022-01-04 00:39:43 +02:00
sledgehammer999
0a1c61d9d3
Merge pull request #15922 from glassez/fix-paths
...
Correctly concatenate path components
2022-01-04 00:17:54 +02:00
Chocobo1
01a0fff4c2
Add missing field initial value
...
Suppresses the following warning:
qBittorrent/src/base/bittorrent/categoryoptions.cpp: In static member function ‘static BitTorrent::CategoryOptions BitTorrent::CategoryOptions::fromJSON(const QJsonObject&)’:
qBittorrent/src/base/bittorrent/categoryoptions.cpp:44:59: warning: missing initializer for member ‘BitTorrent::CategoryOptions::DownloadPathOption::path’ [-Wmissing-field-initializers]
44 | options.downloadPath = {downloadPathValue.toBool()};
2022-01-03 23:42:48 +02:00
Chocobo1
bf9516d164
Simplify code
...
This version saves an `if` conditional.
2022-01-03 23:42:48 +02:00
Vladimir Golovnev (Glassez)
fdbf8cb0ee
Correctly concatenate path components
2022-01-03 19:44:47 +03:00
Prince Gupta
7e8a176751
Support folder based UI Themes
...
Support folder based Themes in UIThemeManager.
Add option to select config.json as them file.
PR #15888 .
2022-01-03 09:11:12 +03:00
Vladimir Golovnev
61504ae3b1
Merge pull request #15793 from glassez/save-path
...
Redesign "Incomplete folder" feature
2022-01-02 22:25:00 +03:00
Chocobo1
dd76525372
Merge pull request #15911 from Chocobo1/pair
...
Replace Qt functions with std counterparts
2022-01-02 13:34:31 +08: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
Chocobo1
63043b4927
Replace min, max, clamp functions with std counterparts
2022-01-01 15:22:07 +08:00
Chocobo1
3ea4c66d41
Replace QPair with std::pair
2022-01-01 15:22:07 +08:00
Chocobo1
781d7fbf1a
Merge pull request #15884 from Chocobo1/migrate
...
Migrate "setting key mappings" to upgrade code
2021-12-25 14:05:52 +08:00
Chocobo1
e7ebbffbfd
Set appropriate migration version number for new installations
2021-12-24 14:50:06 +08:00
Chocobo1
39f054eef6
Migrate "setting key mappings" to upgrade code
2021-12-24 14:50:06 +08:00
Chocobo1
7a620c794d
Fix garbage message when reporting error
...
PR #15883 .
2021-12-24 12:28:22 +08:00
Chocobo1
cc13f3e10d
GHA CI: Don't upload built artifacts for dynamic linking builds
...
As those won't work on testers system unless they install *all* and
same version of the dependent libraries too.
PR #15870 .
2021-12-21 12:26:50 +08:00
Vladimir Golovnev (Glassez)
b0e41abf5a
Allow to set placeholder for FileSystemPathEdit
2021-12-20 08:56:33 +03:00
Vladimir Golovnev
5347897b7d
Merge pull request #15852 from glassez/torrent-info
...
Improve torrent content handling
2021-12-20 08:54:46 +03:00
Vladimir Golovnev (Glassez)
6f8fae9a7b
Apply selected layout to displayed torrent content
2021-12-19 16:16:16 +03:00
Vladimir Golovnev (Glassez)
62b50d1475
Make TorrentInfo immutable
2021-12-19 16:16:16 +03:00
Vladimir Golovnev
2fb0c86f1e
Add "Show torrent options" double-click action
...
PR #15853 .
Closes #15837 .
2021-12-19 09:01:20 +03:00
Chocobo1
aedd997604
Don't expire connection when there are data in buffer
...
For writing, this ensures expire handler won't be executed in a small
time window, that is after `m_socket->write()` and before
`QIODevice::bytesWritten()` signal.
For reading, this let the socket to have the chance to process the
received data instead of dropping it.
PR #15849 .
2021-12-18 12:28:30 +08:00
Chocobo1
aa3da942cb
Use correct URL scheme when https is enabled
...
Closes #15844 .
PR #15847 .
2021-12-17 11:49:11 +08:00
Chocobo1
87e1a14a4b
Merge pull request #15831 from Chocobo1/server
...
Improvements for WebAPI server
2021-12-16 13:38:05 +08:00
Chocobo1
00f6bb7c82
Merge pull request #15829 from Chocobo1/trayIcon
...
Simplify tray icon related code
2021-12-15 12:51:37 +08:00
Chocobo1
cca93c2be2
Show GUI lock icon after system tray icon is initialized
2021-12-14 14:41:17 +08:00
Chocobo1
ad9d0608d4
Avoid needless string-bytes conversion
...
This saves a few microseconds.
2021-12-14 13:52:34 +08:00
Chocobo1
3c5688c6f6
Reserve enough buffer space according to response content size
2021-12-14 13:52:34 +08:00
Chocobo1
ece92a886a
Restart idle timer on sending network response
2021-12-14 13:52:33 +08:00
Chocobo1
85777ea491
Simplify tray icon related code
2021-12-13 15:56:20 +08:00
Chocobo1
b8a84dbd83
Disable system tray icon menu when app is exiting
2021-12-13 15:56:16 +08:00
Chocobo1
35c31906b7
GHA CI: don't let lupdate scan boost library
...
As it produces superflous warnings.
2021-12-13 15:08:36 +08:00
Chocobo1
1fa940876f
Remove redundant UI cleanups
...
Just exiting the application will handle all of them automatically.
2021-12-13 15:08:25 +08:00
Chocobo1
c652123145
Merge pull request #15811 from Chocobo1/configVersioning
...
Introduce versioning on main configuration file
2021-12-12 12:53:28 +08:00
Chocobo1
1c52fff1cc
Unify value loading paths
...
The idea is to try load every intermediate value from the base case and
then convert them to their respective type.
2021-12-11 01:45:49 +08:00
Chocobo1
261f08b90e
Sort WebUI language selection values
2021-12-11 01:45:49 +08:00
Chocobo1
2d48581570
Move main window setting to its own section
2021-12-11 01:45:49 +08:00
Chocobo1
b8a7ecfe69
Introduce versioning on main configuration file
2021-12-11 01:45:49 +08:00
Chocobo1
cbc2de6b85
Use proper method for checking value existence
2021-12-09 15:57:01 +08:00
xavier2k6
9d2bb67834
GHA CI: Update libtorrent version(s)
...
PR #15819 .
2021-12-09 12:32:52 +08:00
Vladimir Golovnev
3d7ff9765a
Make meaning of "torrent root path" consistent
...
PR #15816 .
2021-12-09 06:12:47 +03:00
Chocobo1
28f2def21f
Remove redundant layer of QVariant
in Preferences
class
...
PR #15812 .
2021-12-07 12:17:37 +08:00
Chocobo1
0ee303789a
GHA CI: include translation file generation in test
...
PR #15814 .
2021-12-07 12:17:15 +08:00
Chocobo1
6ccc92020c
Disable "add peers" menu items instead of hiding it
...
Menu item in disabled state can show tool tip to help user understand
why it is unavailable.
Related issue: #15785 .
PR #15787 .
2021-12-06 13:54:38 +08:00
Chocobo1
e3fe66d3ec
Store enum type in settings directly
...
Affected settings will be migrated to new keys so nothing should break.
PR #15800 .
2021-12-06 13:53:52 +08:00
OctopusET
ab5605d54b
Use proper string for Korean language
...
PR #15799 .
2021-12-01 12:06:05 +08:00
Chocobo1
a7a90613c2
Merge pull request #15796 from Chocobo1/clazy
...
Fix defects found by clazy
2021-11-30 12:02:33 +08:00
Chocobo1
19d95ebd10
Add comment for qHash implementation requirements
...
As clazy report false-positive on this.
2021-11-29 01:28:49 +08:00
Chocobo1
0e1849346b
Avoid iterating over a temporary variable
2021-11-29 00:31:03 +08:00
Chocobo1
0f34e3bed9
Don't use deprecated Q_ENUMS
...
See: https://doc.qt.io/qt-5/qobject-obsolete.html#Q_ENUMS
2021-11-29 00:31:03 +08:00
Chocobo1
c8b66b25e8
Avoid potential container detachment
...
Suppress clazy warning:
warning: Don't call QList::operator[]() on temporary [-Wclazy-detaching-temporary]
2021-11-29 00:31:03 +08:00
Chocobo1
e6f07a6fe4
Use implicit copy-constructor generated by compiler
...
This also suppresses the following clang warning:
warning: definition of implicit copy assignment operator for 'Version<unsigned short, 2>' is deprecated because it has a user-declared copy constructor [-Wdeprecated-copy]
2021-11-29 00:30:17 +08:00
Chocobo1
51469f8fa2
Store Qt6 table header states under a different key
...
Follow up 22abbc1d41
.
PR #15774 .
2021-11-23 11:02:07 +08:00
Chocobo1
d78b2a569f
Fix handling when Content-Length field is absent
...
Closes #15754 .
PR #15757 .
2021-11-21 11:48:49 +08:00
Chocobo1
ec6c970775
Merge pull request #15762 from Chocobo1/artifact
...
GHA CI: Use prebuilt Qt library
2021-11-21 11:47:50 +08:00
Chocobo1
67c45efff7
GHA CI: Use prebuilt Qt library
2021-11-20 14:33:12 +08:00
Chocobo1
a54772bf35
Appveyor CI: Upload built artifacts
2021-11-20 14:33:12 +08:00
Chocobo1
166be2a94d
Merge pull request #15749 from Chocobo1/ci
...
GHA CI: Simplify commands
2021-11-19 12:31:16 +08:00
Chocobo1
7150d05399
GHA CI: Simplify commands
2021-11-18 00:20:58 +08:00
Chocobo1
36a6e22f27
Appveyor CI: Setup build environment directly
...
vcvars64.bat is just a link to vcvarsall.bat with parameter `x64`.
2021-11-18 00:20:26 +08:00
Chocobo1
dc13eaed1f
Revert "Use percentage notation for alpha-values in CSS"
...
This reverts commit 864dca1b67
.
Upstream change: https://github.com/stylelint/stylelint-config-standard/pull/212
PR #15745 .
2021-11-18 00:19:27 +08:00
xavier2k6
001bd60d36
CI: Update AppVeyor image to Visual Studio 2022
...
PR #15727 .
2021-11-16 19:02:07 +03:00
Chocobo1
b063042988
Apply download priority immediately in torrent content view
...
Apply the new priority after picking it via drop-down menu.
Fixes #14667 , #15238 .
PR #15739 .
Co-authored-by: a-sum-duma <68896601+a-sum-duma@users.noreply.github.com >
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2021-11-16 13:50:53 +08:00
a-sum-duma
fa1d49add5
Properly check if file priority changes
...
Current item priority is compared against new checkbox state. I believe the intention was to check if the priority changes before performing further actions. This PR fixes the issue - compare priority against new value that is about to be set rather then the checkbox state.
PR #15740 .
2021-11-16 13:50:11 +08:00
Chocobo1
b45248bf99
Merge pull request #15452 from thalieht/autoTMM
...
Move some options from transfer list's context menu into "Torrent options" dialog
2021-11-10 12:39:59 +08:00
Chocobo1
dfe862dcd5
Merge pull request #15717 from Chocobo1/irc
...
WebUI: Remove IRC in about page
2021-11-10 12:28:53 +08:00
sledgehammer999
d4ddeaa917
Sync Changelog entries between branches
2021-11-09 19:07:23 +02:00
Chocobo1
13a49866a7
WebUI: Revise about page
...
Follow GUI more closely.
2021-11-09 13:17:55 +08:00
Chocobo1
7e2aea92b0
WebUI: Remove IRC in about page
...
This follows the GUI change in 65a30bab3f
.
2021-11-09 13:17:41 +08:00
Chocobo1
7db51b2f8d
Add IRC link
...
https://en.wikipedia.org/wiki/Internet_Relay_Chat#URI_scheme
And also show the angle brackets in rendered markdown.
2021-11-09 12:12:49 +08:00
Chocobo1
ae1b963e0f
Merge pull request #15682 from Chocobo1/qt6
...
Store Qt6 table header states under a different key
2021-11-09 11:23:04 +08:00
a-sum-duma
b29b7e0185
Add more download options to torrent search result right-click menu
...
PR #15654 .
2021-11-09 06:11:47 +03:00
Chocobo1
71270260bf
Reformat code
2021-11-08 13:34:21 +08:00
Chocobo1
22abbc1d41
Store Qt6 table header states under a different key
2021-11-08 13:34:21 +08:00
Chocobo1
32698fe0be
Migrate away from low-level SettingsStorage
class
...
Also add `QFlags<T>` support to `SettingsStorage`.
PR #15693 .
2021-11-08 13:23:33 +08:00
thalieht
16f8d6a936
Allow deselecting radio buttons in "Torrent options" for mixed torrents
2021-11-06 12:47:53 +02:00
thalieht
046d6f3bc1
Move a few torrent context menu actions into "Torrent options" dialog
...
Automatic torrent management
Save path
Category
Download in sequential order
Download first and last pieces first
closes #15447 , closes #14064
2021-11-06 12:47:53 +02:00
Chocobo1
e33c4086b9
GHA CI: Revise artifact folder layout
...
Now qbittorrent binaries will be placed in its own folder and cmake
related artifacts will be in another.
PR #15683 .
2021-11-06 11:11:47 +08:00
Andrei Stepanov
51d754a53e
Optimize PNG images losslessly with FileOptimizer
...
PR #15662 .
2021-11-05 12:59:25 +08:00
Chocobo1
49976bcd83
Merge pull request #15648 from Chocobo1/lockfile
...
Create lock file in config folder instead of temp folder
2021-11-03 12:15:22 +08:00
Losiki
f991d2bdb4
Update Update Simplified Chinese translation
...
PR #15653 .
2021-11-02 17:54:18 +03:00
xavier2k6
e6ff23885e
Sync flag icons with upstream
...
Upstream commit e0577caf317aa721b62c5a4788b13572cc163252 (Release v4.1.4)
PR #15657 .
2021-11-02 11:10:50 +08:00
Chocobo1
7aa859a442
Don't use deprecated statfs64() on macOS ( #15661 )
...
Co-authored-by: Nick Korotysh <kolchaprogrammer@list.ru >
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2021-11-02 10:41:09 +08:00
Chocobo1
180deb867a
Use char array directly
...
This eliminates the possibility of reassigning the pointer to another
address.
2021-11-01 14:08:49 +08:00
Chocobo1
a5c531f0a4
Create lock file in config folder instead of temp folder
...
Some linux distros seem to alter TMPDIR environment variable and
therefore hamper qbt ability to find the lock files. So use config
folder instead of TMPDIR folder to create/locate the lock files.
Note that this change will also make qbt become one instance per-user
instead of one instance per-system.
Closes #15646 .
2021-11-01 14:08:49 +08:00
a-sum-duma
5dd70b88d3
Fix torrent content sorting
...
Fix improper sorting of the list of files contained by a torrent.
Always load all torrent content data so that the files list can be sorted properly.
Load torrent content only when needed. Don't load the list of files contained by a torrent if the list widget is not visible.
PR #15604 .
2021-11-01 11:45:48 +08:00
sledgehammer999
40f2718265
Sync translations from Transifex and run lupdate
2021-10-31 12:29:34 +02:00
sledgehammer999
ddd106655d
Merge pull request #15622 from sledgehammer999/revert_nsis_bengali
...
Revert "NSIS: Add Bengali translation"
2021-10-31 12:07:49 +02:00
Vladimir Golovnev
cc61ad01b6
Explicitly set "added time" when adding new torrent
...
Don't overwrite "added time" with possibly incorrect value.
Explicitly set "added time" when adding new torrent.
PR #15644 .
2021-10-31 12:08:19 +03:00
sledgehammer999
8a44c1f6d5
Bump to 4.4.0rc1
2021-10-31 02:56:25 +03:00
sledgehammer999
e370cbb06b
Sync translations from Transifex and run lupdate
2021-10-31 02:52:52 +03:00
Likol Tung
cb0c2e3b9c
Fix WebUI reverse proxy section doesn't work
...
As title. because load with incorrect key.
Also moving proxy list label to left, screenshot: https://imgur.com/Rz038uW
PR #15634 .
2021-10-29 11:50:09 +08:00
sledgehammer999
80360cc79a
Revert "NSIS: Add Bengali translation"
...
This reverts commit 8085db6ba9
.
2021-10-25 00:46:34 +03:00
Chocobo1
559a979536
GHA CI: Add Qt6 builds
...
PR #15610 .
2021-10-24 00:57:50 +08:00
Chocobo1
5e88537809
Merge pull request #15611 from Chocobo1/webui
...
Suppress WebUI CSS warnings
2021-10-24 00:57:20 +08:00
Chocobo1
8b60baea99
Remove unused CSS properties
2021-10-22 14:45:37 +08:00
Chocobo1
ac61c33d1c
Use modern color notation in CSS
2021-10-22 14:43:13 +08:00
Chocobo1
3088f04e6f
Use standard CSS properties instead of vendor specifics
2021-10-22 14:43:13 +08:00
Chocobo1
864dca1b67
Use percentage notation for alpha-values in CSS
2021-10-22 14:43:12 +08:00
Chocobo1
15320018f0
Use shorthand for CSS properties
2021-10-22 14:43:05 +08:00
Chocobo1
6226dd5b80
Add quotes to URL in CSS files
...
Better add quotes: https://stackoverflow.com/a/34383157
2021-10-22 14:43:05 +08:00
Chocobo1
aafc1064d9
Disable CSS selector naming rule
2021-10-22 14:42:12 +08:00
xavier2k6
fb2fbc875d
GHA CI: Use macOS-latest VM image
...
PR #15589 .
2021-10-22 12:16:11 +08:00
Nowshed H. Imran
8085db6ba9
NSIS: Add Bengali translation
...
PR #15602 .
2021-10-22 05:52:11 +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
SiderealArt
090199f9de
NSIS: Update Traditional Chinese translation
...
PR #15595 .
2021-10-20 07:15:09 +03:00
Chocobo1
cd3635985e
Merge pull request #15567 from Chocobo1/qt6
...
Fix Qt6 compiling issues
2021-10-15 11:55:13 +08:00
Chocobo1
8a7179195f
Suppress remove null widget warning
...
And improve text format for translation work.
2021-10-14 00:25:30 +08:00
Chocobo1
e45e29b431
Avoid type specifier mismatch
...
Qt5 uses `int` and Qt6 uses `qsizetype`, so use the stream version of
`qDebug()` to avoid specifying types.
2021-10-14 00:24:41 +08:00
Chocobo1
ca28fc27dc
Disable deprecated Qt functions
...
Also Qt6 by default set these attributes to our preferred value.
2021-10-13 12:00:21 +08:00
Chocobo1
08b2cde8e8
Let infohash v2 text be mouse selectable
...
And drop unused property.
2021-10-13 11:59:44 +08:00
Chocobo1
489d88e02a
Suppress conversion warning
...
This fixes MSVC warning C4305: 'argument': truncation from 'double' to 'float'.
`QColor::setAlphaF()` parameter has been changed to `float` in Qt6.
2021-10-12 15:37:45 +08:00
Chocobo1
dff39ffd20
Fix typo
...
https://doc.qt.io/qt-6/qmake-variable-reference.html#qt-major-version
2021-10-12 14:16:53 +08:00
Chocobo1
3c948ef063
Merge pull request #15562 from Chocobo1/precommit
...
GHA CI: Switch to pre-commit framework for checking file health
2021-10-12 11:33:16 +08:00
Chocobo1
7087565d92
Fix typo
2021-10-11 22:17:17 +08:00
Chocobo1
3467358663
GHA CI: Switch to pre-commit framework for checking file health
...
Now users are able to run the same checks on their local development
environment.
https://pre-commit.com/
2021-10-11 22:17:10 +08:00
Chocobo1
45a1c25a29
Merge pull request #15467 from xavier2k6/Python_URL
...
Update python installer URL for Windows
2021-10-11 12:47:00 +08:00
Chocobo1
70a11a12b3
Merge pull request #15549 from Chocobo1/api
...
WebAPI: Use specific number to represent non-existing values
2021-10-11 12:38:38 +08:00
Vladimir Golovnev
5d5b0d572e
Merge pull request #15536 from glassez/expected
...
Don't use output parameters for error handling
2021-10-10 15:04:55 +03:00
Chocobo1
7c8eadfddf
Revert "WebUI: group trackers by hostname"
...
This functionality wasn't ever correctly implemented and couldn't be
done without considerable effort, so revert it for now.
This reverts commit 4ac25a50ed
.
PR #15542 .
2021-10-10 11:00:21 +08:00
Chocobo1
89ca0c537d
Fix filename extension
2021-10-10 02:55:59 +08:00
xavier2k6
a92a6404cb
Make Python minimum version requirement an argument
2021-10-09 10:45:26 +01:00
Vladimir Golovnev (Glassez)
78459fcb31
Don't throw exception in TorrentInfo::saveToFile()
2021-10-09 08:54:20 +03:00
Vladimir Golovnev (Glassez)
41fc0fd084
Don't use output parameters for error handling
2021-10-09 08:54:03 +03:00
Chocobo1
5c9655abc3
WebAPI: Use specific number to represent non-existing values
...
Closes #15545 .
2021-10-09 12:31:15 +08:00
Chocobo1
3301797491
Merge pull request #15530 from Chocobo1/errmsg
...
Log error message in DownloadHandlerImpl class
2021-10-09 12:09:56 +08:00
Daniel Aleksandersen
eb5e1d34df
WebUI: Add meta application name
...
Used for installable/pinned app installs.
PR #15539 .
2021-10-09 12:06:44 +08:00
Daniel Aleksandersen
9e92e5995f
WebUI: Set icon sizes attribute
...
Gives browsers more information to pick the best icon.
PR #15540 .
2021-10-09 11:59:37 +08:00
Chocobo1
e96f2d7be0
Simplify comparison
...
From https://doc.qt.io/qt-5/qdatetime.html#operator-eq-eq :
>Since 5.14, all invalid datetimes are equal to one another and differ from all other datetimes.
2021-10-09 02:20:22 +08:00
Chocobo1
03cb51844b
Remove redundant define
...
NOMINMAX is already defined in build scripts.
2021-10-08 11:11:02 +08:00
Chocobo1
6b06cc9216
Log error message in DownloadHandlerImpl class
2021-10-08 11:07:35 +08:00
Chocobo1
6b49323f05
Improve error message reporting
2021-10-08 11:01:48 +08:00
Chocobo1
4a11fab2b1
Add constexpr to Sample class functions
2021-10-08 01:04:58 +08:00
Vladimir Golovnev
c382191e75
Correctly iterate through the files of torrent
...
PR #15535 .
2021-10-07 10:48:00 +03:00
luzpaz
4d480b8761
Fix various typos
...
Found via `codespell -q 3 -S *.ts`.
PR #15520 .
2021-10-05 12:58:25 +08:00
Chocobo1
cd25562fd2
Merge pull request #15516 from Chocobo1/win_ci
...
GHA CI: build dependencies manually
2021-10-05 12:41:09 +08:00
Chocobo1
9a3d560d9e
GHA CI: use larger cache for compiling
...
Previous default was 500MB and it couldn't fit all compile results in
it, enlarge it to 2GB. Note that 2GB isn't the actual size stored on the
server, it will be compressed again by zstd and will be a lot smaller.
2021-10-03 16:38:34 +08:00
Chocobo1
4924fb95f8
GHA CI: build dependencies manually
...
Now it builds boost, libtorrent manually and we have control over its
version.
Enable build matrix for libtorrent versions.
Reorganized the folder/file layout in built artifact.
2021-10-03 16:07:03 +08:00
Chocobo1
6de67fe81f
Merge pull request #15511 from Chocobo1/pr
...
Put PR template into action
2021-10-03 12:53:19 +08:00
Vladimir Golovnev
bc71827c01
Improve torrent content handling
...
Hide .pad files.
PR #15468 .
2021-10-02 21:42:58 +03:00
Vladimir Golovnev
a8ade3a04b
Merge pull request #14465 from glassez/qt6
...
Allow to build with Qt6
2021-10-02 21:29:10 +03:00
Chocobo1
eca04e2e92
Revise "Opening PR" section in contributing guide
2021-10-02 23:38:38 +08:00
Chocobo1
763b9fc1da
Put PR template into action
2021-10-02 15:04:23 +08:00
Vladimir Golovnev (glassez)
add75fbc77
Make complete type declarations available where needed
2021-10-02 09:23:50 +03:00
Vladimir Golovnev (Glassez)
86b1ac5d7c
CMake: Allow to build with Qt6
2021-10-02 09:23:49 +03:00
Vladimir Golovnev (glassez)
b51197936b
QMake: Don't use WinExtras module with Qt6
2021-10-02 09:23:15 +03:00
Jose M. Abuin
64609ce5cf
Add missing double-click action
...
Closes #15422 .
PR #15509 .
2021-10-01 12:16:58 +08:00
Chocobo1
b81cbf9062
Merge pull request #15505 from Chocobo1/freebsd
...
Add detection for various OS
2021-10-01 11:52:48 +08:00
Chocobo1
e7e881e5d7
Merge pull request #15500 from Chocobo1/networkfs
...
Add remote filesystem magic numbers
2021-09-30 10:27:57 +08:00
Chocobo1
e236a76d5a
Use case statement for host OS detection
2021-09-29 16:32:29 +08:00
Chocobo1
ad8a827c1f
Add detection for Haiku in configure script
...
Patch taken from downstream:
https://github.com/haikuports/haikuports/blob/master/net-p2p/qbittorrent/patches/qbittorrent-4.3.1.patchset
2021-09-29 16:22:20 +08:00
Chocobo1
08ac33bc5c
Add detection for OpenBSD in configure script
...
Patch taken from downstream:
http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/net/qbittorrent/qbittorrent/patches/patch-configure_ac
2021-09-29 16:22:15 +08:00
Chocobo1
5cf39a2970
Reuse code path
...
`buf.f_type` should be compatible across platforms.
https://developer.apple.com/library/archive/documentation/System/Conceptual/ManPages_iPhoneOS/man2/statfs.2.html
2021-09-27 22:40:25 +08:00
Chocobo1
1c9321d5a1
Add remote filesystem magic numbers
2021-09-27 22:22:36 +08:00
Chocobo1
97a8d865dc
WebUI: revise hash function
...
In benchmark, using `Math.imul()` is about ~20% faster than floating
point multiplication.
PR #15475 .
2021-09-27 13:54:28 +08:00
Chocobo1
982133d9b6
CI: Clean up scripts
...
* Remove redundant dependencies
* Replace ccache action provider
* Let coverity-scan script build with libtorrent v2.0.4.
PR #15483 .
2021-09-23 12:38:52 +08:00
Chocobo1
d23935a269
Merge pull request #15484 from Chocobo1/perference
...
Clean up Preferences class
2021-09-23 12:38:12 +08:00
Chocobo1
1c343a444b
Remove redundant const specifier
2021-09-21 17:19:38 +08:00
Chocobo1
1c9696b68e
Suppress function unused warning
2021-09-21 17:18:50 +08:00
Chocobo1
ecd23d0abd
Merge pull request #15459 from Chocobo1/i18n
...
Revise description wordings
2021-09-19 13:29:08 +08: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
46394a7c0f
Combine stream statements
2021-09-18 12:59:08 +08:00
Chocobo1
fc86034fab
WebUI: update authors page
2021-09-18 12:59:07 +08:00
Chocobo1
03012cc175
Revise description wordings
2021-09-18 12:59:07 +08:00
xavier2k6
8518333406
Replace GitHub markdown templates with GitHub forms
...
PR #15330 .
2021-09-17 12:51:33 +08:00
Vladimir Golovnev
b2e0e25f1c
Merge pull request #15451 from glassez/profile
...
Improve Profile handling
2021-09-15 19:11:22 +03:00
Chocobo1
9673be17cb
Improve handling when writing to temporary files
...
Let QTemporaryFile remove incomplete written file when error occurs.
"XXXXXX" template is not strictly required according to Qt doc.
2021-09-15 23:25:27 +08:00
Chocobo1
fa8786e230
Flush manually when saving a file
...
This is to work around https://bugreports.qt.io/browse/QTBUG-75077
2021-09-15 23:15:33 +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
xavier2k6
4b78af268f
Update python installer URL for Windows
2021-09-12 17:17:06 +01:00
jagannatharjun
a734199383
Fix startup with different profiles
2021-09-12 10:59:20 +03:00
Vladimir Golovnev (Glassez)
046b741700
Improve Profile handling
...
Add Profile::rootPath and Profile::configurationName properties.
2021-09-12 10:58:48 +03:00
Chocobo1
ce0b6f0d56
Merge pull request #15450 from Chocobo1/pr_15303
...
Fix code defects
2021-09-12 12:56:33 +08:00
Chocobo1
6de0622c1a
Merge pull request #15444 from Chocobo1/guard
...
Prevent self-assignment in assignment operator
2021-09-12 12:56:17 +08:00
Jesse Smick
6229b81730
WebUI: Add pieces progress bar to General tab
...
Closes #15292 .
PR #15418 .
2021-09-12 12:55:41 +08:00
Chocobo1
c701379a2e
Fix typo
2021-09-11 12:07:52 +08:00
Chocobo1
0783968121
Guard for null pointer
2021-09-11 11:54:01 +08:00
gxcreator
307f5e6e56
Initialize member fields
2021-09-11 11:53:41 +08:00
Chocobo1
cb29685a24
Use Qt macro to disable various constructors
2021-09-10 19:51:27 +08:00
Faisal Al-Munawar Fathur Rahman
dabba89682
Update Indonesian translation
...
PR #15436 .
2021-09-10 09:05:40 +08:00
Chocobo1
2efd4f2a77
Prevent self-assignment in assignment operator
2021-09-09 21:42:46 +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
smigii
8f02fe0cc6
Elide text from the right for all columns' header
...
Minimizing columns no longer truncates text from the left, now elides
text from the right for better readability. Done by setting header's
textElideMode to Qt::TextElideRight.
Fix issue #14419 .
PR #15366 .
2021-09-08 11:47:55 +08:00
Chocobo1
7a6edcdddb
Fix broken behavior of "priority by shown file order"
...
Closes #15421 .
PR #15423 .
2021-09-07 11:47:13 +08:00
Chocobo1
81139c0098
Improve error detection when saving files
2021-09-05 12:20:22 +08:00
Chocobo1
6a6268c068
Merge pull request #15396 from jagannatharjun/downloadrequest
...
Fix invalid RSS feed icons
2021-09-05 12:11:57 +08:00
jagannatharjun
68133ec8e3
Correctly use fallback icons for RSS feed in GUI
2021-09-04 12:11:44 +05:30
jagannatharjun
314f92f2d8
Use DownloadRequest::destFileName for downloading RSS feed icons
2021-09-04 12:02:38 +05:30
jagannatharjun
8b5db328ec
Add DownloadRequest::destFileName
2021-09-04 12:02:38 +05:30
Chocobo1
615b76f78c
Prolong wait time for shutdown
...
The default was 90s[1], prolong to 30 mins.
From the discussion in [2], ~2k torrents took 5 mins to completely
shutdown. Here we wait at most 30 mins which scales to about 12k
torrents which should cover most use case (also note that 4.3.x series
is mentioned to have even shorter shutdown time).
[1] https://www.freedesktop.org/software/systemd/man/systemd-system.conf.html#DefaultTimeoutStartSec=
[2] https://github.com/qbittorrent/qBittorrent/issues/15381#issuecomment-912080617
PR #15414 .
2021-09-04 13:20:35 +08:00
Prince Gupta
f2912c14ea
Stick Unread row to top in RSS feed list
...
PR #15397 .
2021-09-04 12:55:58 +08:00
Chocobo1
08f33d7e9e
Fix WebUI crash when tracker URL is invalid
...
Closes #15391 .
PR #15395 .
2021-08-31 11:53:42 +08:00
xavier2k6
c034cb5985
Remove Windows Vista support from manifest
...
PR #15394 .
2021-08-30 08:07:15 +03:00
Chocobo1
e3cd15dced
Remove unnecessary UI properties in "Add new torrent" dialog ( #15387 )
...
Closes #15383 .
2021-08-29 11:29:01 +08:00
JungHee Lee
8439d4e827
Update Korean NSIS translation ( #15380 )
2021-08-29 11:27:09 +08:00
sledgehammer999
2b501904cf
Bump to 4.4.0beta3
2021-08-29 01:53:02 +03:00
sledgehammer999
ea986a1f1b
Sync translations from Transifex and run lupdate
2021-08-29 01:51:47 +03:00
Chocobo1
b924357ea9
Specify Unicode for resource block ( #15370 )
...
The StringFileInfo block was using "1252 Multilingual", change it to
"1200 Unicode" for consistency.
https://docs.microsoft.com/en-us/windows/win32/menurc/stringfileinfo-block
Closes #15364 .
2021-08-26 11:30:53 +08:00
Vladimir Golovnev
b823d74ac3
Use "old file path" provided by libtorrent
...
Until libtorrent provided an "old_name" field in `file_renamed_alert` we relied
on a workaround with storing old file names to remove empty leftover folders.
PR #15356 .
2021-08-23 07:29:50 +03:00
Chocobo1
d1e2019cd7
Merge pull request #15357 from a1346054/master
...
Fix minor licensing issue
2021-08-23 11:23:02 +08:00
Chocobo1
70573eba2c
GHA CI: Use preinstalled vcpkg ( #15355 )
...
This will save maintenance work on the vcpkg version.
Also a few other improvements:
* Add quotes to path
* Sort command flags
* Avoid switching shell, always use powershell (the default shell)
2021-08-22 12:29:17 +08:00
a1346054
cf46653333
Fix typo
2021-08-21 16:02:05 +00:00
a1346054
8d3fcbd897
Use license file verbatim
...
The GPL part of COPYING file was distributed incomplete, it must be
distributed verbatim.
The file was obtained from:
https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt
2021-08-21 16:00:19 +00:00
Chocobo1
1900538315
Merge pull request #15342 from Chocobo1/macos
...
GHA CI: Split "main CI" to multiple workflows
2021-08-20 03:43:24 +08:00
Chocobo1
a9feae6110
GHA CI: Split "main CI" to multiple workflows
2021-08-19 11:54:58 +08:00
Chocobo1
8d822f2cb4
Improve "last activity" calculation in WebAPI ( #15339 )
...
Co-authored-by: 秦风 <mayli.he@gmail.com >
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
2021-08-19 11:16:34 +08:00
Chocobo1
c12e486f59
GHA CI: Use prebuilt library packages on macOS
2021-08-19 11:08:19 +08:00
Chocobo1
d0d0bed333
Merge pull request #15340 from Chocobo1/libt2
...
Support libtorrent v2.0.4 in CI
2021-08-19 10:54:01 +08:00
Chocobo1
8799321312
GHA CI: Use ccache
2021-08-18 23:06:02 +08:00
Chocobo1
00d2997971
GHA CI: Move global environment variables out
2021-08-18 23:06:02 +08:00
Chocobo1
69f7f233fd
GHA CI: Remove OS variable from build matrix
...
It is meaningless to build on multiple linux versions as we only depend
on library versions, not OS versions.
Also remove redundant "shell default" section.
2021-08-18 23:06:02 +08:00
Chocobo1
793e8643bf
GHA CI: Support libtorrent v2.0.4
2021-08-18 23:05:23 +08:00
Chocobo1
521ef8e28f
Merge pull request #15321 from Chocobo1/ci
...
Clean up workflow files coding style
2021-08-15 12:24:21 +08:00
Chocobo1
7433d85418
Revise workflow steps name/description
2021-08-14 15:08:31 +08:00
Chocobo1
ba1cf12817
Capitalize workflow step names
2021-08-14 14:58:16 +08:00
Chocobo1
7dc7b95bfd
Merge pull request #15306 from Chocobo1/icon
...
Minor UI revise
2021-08-14 12:12:49 +08:00
Chocobo1
59352e4ca7
Use nodejs lts version for CI
...
The exact nodejs version isn't critical here, just make sure it isn't
too outdated.
2021-08-13 12:23:16 +08:00
Chocobo1
011d026d76
Rename jobs
2021-08-13 12:23:16 +08:00
Chocobo1
89a8184ad2
Avoid using legacy backticks
...
https://github.com/koalaman/shellcheck/wiki/SC2006
2021-08-13 12:23:16 +08:00
Chocobo1
a23e10dff5
Split commands to multiple lines properly
2021-08-13 12:23:16 +08:00
Chocobo1
535603fac4
Use latest Ubuntu images
...
Jobs in those workflows has little to do with specific OS version, so
just use the latest.
2021-08-13 12:23:16 +08:00
Chocobo1
fb6282da57
Add proper indention to steps section
...
Following the style from the examples in https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idsteps
2021-08-13 12:23:15 +08:00
Chocobo1
23766cd01d
Clean up Github workflows' name
2021-08-13 12:23:04 +08:00
sledgehammer999
44b2afb218
Merge pull request #15310 from Chocobo1/stale
...
Stale bot: Handle more PR per run
2021-08-11 17:29:45 +03:00
sledgehammer999
9e82e59fc8
Merge pull request #15315 from sledgehammer999/readme_chat
...
Change IRC channel to Libera.Chat
2021-08-11 17:27:50 +03:00
Chocobo1
e006538514
Fix cmake script ( #15309 )
...
Fix up 138c911ef4
.
2021-08-11 13:26:15 +08:00
sledgehammer999
fad5dfa4f4
Change IRC channel to Libera.Chat
...
Unfortunately Freenode, after a takeover, decided to purge all their databases, thus
deleting all channel and user registrations, without a warning.
So if we're forced to re-register our stuff why not go where the cool kids are at?
2021-08-11 01:13:55 +03:00
a-raccoon
b737ee0240
Update README.md
...
Removed these two lines because they haven't been true in a very long time, and is no longer even possible.
```
You can also meet me (sledgehammer_999) on IRC:
`#qbittorrent on irc.freenode.net`
```
2021-08-11 00:37:03 +03:00
Chocobo1
9d9f774dad
Handle more PR per run
...
Previously only about ~27 PR are scanned per run, this commit attempt
to handle all open PR at once.
2021-08-10 13:14:25 +08:00
Chocobo1
526ee9c9db
Add tooltip to listening port spinbox
2021-08-10 12:24:50 +08:00
sledgehammer999
671eff324d
Merge pull request #15298 from sledgehammer999/coverity_workflow
...
Run Coverity once per month
2021-08-09 21:18:12 +03:00
Chocobo1
a93cf04aca
Use default values for inconsequential fields
...
Or when the default value is actually what we want.
2021-08-09 13:37:48 +08:00
Chocobo1
e93a67e644
Use default upper limits for ddns entries
...
The default is 32767 which is larger than the previous artificial limit.
2021-08-09 13:14:51 +08:00
Chocobo1
b29a52dfa8
Use the same icon for selecting folders/files
...
As stated in Qt doc, the `QStyle::SP_DialogOpenButton` is only for a
button within QDialogButtonBox which means it isn't suitable elsewhere.
2021-08-09 13:14:14 +08:00
Chocobo1
4ed99ba851
Introduce stale bot for PR ( #15211 )
...
Stale bot will mark stale PR with a tag and close them after a specified
interval of time.
* Draft PRs are not subject to this marking.
* PR with an assignee or milestone is not subject to this marking.
2021-08-09 11:26:04 +08:00
sledgehammer999
3e92e716b2
Merge pull request #15294 from sledgehammer999/accept_v2_infohash
...
Accept v2 infohashes for download
2021-08-08 12:29:04 +03:00
sledgehammer999
c6c8f6563d
Run Coverity once per month
2021-08-08 12:24:19 +03:00
Chocobo1
138c911ef4
Add compile definition to indicate using of libtorrent 2.0 ( #15297 )
...
The compile definition is temporary which will be removed when qbt
ditches libtorrent 1.x.
2021-08-08 13:27:22 +08:00
sledgehammer999
e5fe6401a0
Accept v2 infohashes for download
...
Partially fixes #15287
2021-08-07 17:25:13 +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
Mengyang Li
4ac25a50ed
WebUI: group trackers by hostname ( #15264 )
...
Closes #13608 .
2021-08-07 12:25:07 +08:00
Chocobo1
d9cf189ef6
Merge pull request #15281 from Chocobo1/lib
...
Update js libraries
2021-08-06 16:56:02 +08:00
Matthaiks
6e19878973
NSIS: Add Polish translation ( #15262 )
2021-08-06 12:16:46 +08:00
Chocobo1
9f9c4d6ed0
Ignore file heath for 3rd party libraries
2021-08-05 16:03:19 +08:00
Chocobo1
567848e94f
Work around missing function error
...
The fix comes from older version of MochaUI.
2021-08-05 16:03:18 +08:00
Chocobo1
221cbcc1ac
Update MochaUI to v0.9.7
...
Upstream: https://github.com/cdotyone/mochaui/blob/develop-0.9.8/Build/mocha.js
2021-08-05 16:03:07 +08:00
Chocobo1
dc2086dab4
Update clipboard.js to v2.0.8
2021-08-05 15:24:03 +08:00
Chocobo1
7be2a03c86
Update mootools to v1.6.0
2021-08-05 15:24:01 +08:00
Sylvain Finot
e87f8f5b93
Expose SSRF mitigation ( #15247 )
2021-08-04 11:28:36 +08:00
Chocobo1
11a063ea66
Merge pull request #15242 from Chocobo1/libt_version
...
Detect incompatible libtorrent v2 versions in build systems
2021-08-04 11:28:07 +08:00
sledgehammer999
1d26f4c5f7
Bump to 4.4.0beta2
2021-08-03 23:15:27 +03:00
sledgehammer999
8a09558ed8
Sync translations from Transifex and run lupdate
2021-08-03 23:14:08 +03:00
Daniel Aleksandersen
60b1e692b9
Disconnect comment links fom the WebUI ( #15251 )
2021-08-03 16:26:04 +08:00
Chocobo1
0a1865d0dd
Don't use old style cast
2021-08-01 13:48:46 +08:00
Chocobo1
3d94c70c48
Adopt a subset of semantic versioning notation
...
https://github.com/npm/node-semver#ranges
https://semver.npmjs.com/
2021-08-01 13:48:22 +08:00
Chocobo1
7d7f967d5e
Detect incompatible libtorrent v2 versions in build systems
...
Although the detection is working, the error message in autotools is not
perfect, i.e. it would only mention valid range for libtorrent v1 and it
shouldn't be a problem since v2 support isn't fully ready yet.
2021-07-31 16:59:37 +08:00
Chocobo1
ce554e6c77
Merge pull request #15229 from Chocobo1/port
...
Use spinbox special value to represent "Use any available port"
2021-07-30 15:19:08 +08:00
xavier2k6
5d151cca9d
GitHub Actions CI: update workflow ( #15245 )
...
- update vcpkg to latest commit (includes updated BOOST)
2021-07-30 15:18:38 +08:00
Chocobo1
e47d90b5a6
Update pkg.m4 to latest version
...
Upstream: https://gitlab.freedesktop.org/pkg-config/pkg-config/-/blob/master/pkg.m4.in
2021-07-29 14:15:51 +08:00
AbeniMatteo
e4730191db
Set default file priorities when not specified ( #15190 )
2021-07-29 12:20:03 +08:00
Chocobo1
49aab492e0
Use spinbox special value to represent "Use any available port"
...
WebAPI functionality is preserved (deprecated) for now and should be
removed in the future.
2021-07-29 11:50:52 +08:00
Chocobo1
2d4d246268
Remember last viewed page in Options dialog ( #15230 )
2021-07-28 11:11:00 +08:00
Chocobo1
09e558ae0b
Revise checkbox label for "Use any available ports" functionality
...
Also reorder the checkboxes a bit.
2021-07-27 13:35:18 +08:00
Chocobo1
a3fd6633c4
Use default property for widgets
2021-07-26 12:20:46 +08:00
Vladimir Golovnev
1eb246c98b
Merge pull request #15181 from glassez/qt5
...
Raise minimum Qt version to 5.15.2
2021-07-23 06:22:57 +03:00
Chocobo1
96e0c0df20
Improve handling for magnet URI ( #15209 )
...
This add support for magnets URI in v2 hash format.
2021-07-22 13:05:59 +08:00
thalieht
aa8f420681
Recognise v2 info-hashes in clipboard for "Add torrent link" dialog ( #15206 )
2021-07-20 14:30:37 +03:00
Tom Piccirello
7974b5a95c
Support sorting Web UI tables via touch ( #15205 )
2021-07-19 14:28:04 +08:00
Vladimir Golovnev
ed4570cb4d
Store minimal metadata for "restore torrent" purposes ( #15191 )
...
We can no longer save valid torrent files in the general case, because
for torrents of version 2, we need a full merkle tree to do it, but if
a torrent is added from magnet link, full merkle tree may not be available
even before the end of downloading all the data. Actually, we don't need
the full torrent file for the purposes of resuming the torrent, so we can
allow libtorrent to produce only a minimal part of the metadata as part
complete resume data, but we still want to store it in a separate file,
so we extract the resulting metadata from the complete resume data before
saving and merge it together before loading.
2021-07-19 07:59:06 +03:00
AbeniMatteo
01d851440b
Add "Forced metadata downloading" state ( #15185 )
2021-07-17 21:33:14 +03:00
AbeniMatteo
e5943b64c1
Add filter "Checking" to side panel ( #15166 )
2021-07-16 14:08:10 +03:00
scootergrisen
933e56494c
Update Danish translation ( #15192 )
2021-07-16 12:55:05 +08:00
Kristof Mattei
140e73be4e
Use the URI's setData to set query data ( #15187 )
...
This allows the system to properly encode the '|', instead of passing
the '|' on in the URL, which is not allowed and breaks proxies such as
Authelia.
Then, for the purpose of generalization, I pushed this pattern through
to all places where we join items with a '|'.
This comes with the caveat that when we have individual components which
contain a '|' or any other character that is not allowed per the
HTTP standard, we still like to encode the individual components,
for example in the case of 3 strings, separated by a '|'.
If we don't do this we run into the risk that upon decoding URI finds
'|' in our original strings, which is something we don't want.
For example:
Sender:
````javascript
const arr = ["foo|1", "bar|2"];
const uri = new URI("test.html").setData(arr.join("|"));
````
Then on the receiving window, when it receives the uri and splits it, it
looks like this:
````javascript
const arr = new URI().getData('hashes').split('|');
// arr is now ["foo", "1", "bar", "2"]
````
This is why when we want to send a literal "|" we need to do
`encodeURIComponent` and `decodeURIComponent` manually on each item,
and THEN we join.
For example:
Sender:
````javascript
const arr = ["foo|1", "bar|2"];
const uri = new URI("test.html").setData(arr.map(encodeURIComponent).join("|"));
````
Receiver:
````javascript
const arr = new URI().getData('hashes').split('|').map(decodeURIComponent);
// arr is now ["foo|1", "bar|2"]
````
We don't need to with hashes as they are HEX, so no risk of any weird
characters in there.
2021-07-16 12:53:47 +08:00
Vladimir Golovnev (glassez)
960b9b855f
CI: Use Qt-5.15.2 on AppVeyor
2021-07-15 10:56:50 +03:00
FranciscoPombal
1e1d55b26d
CI: Use Qt 5.15.2 from third-party PPA on Linux
2021-07-15 10:56:50 +03:00
Vladimir Golovnev (glassez)
925bf7715c
Disable functions deprecated in Qt 5.15.2 and earlier
2021-07-15 10:56:49 +03:00
Vladimir Golovnev (Glassez)
399d3ad85a
Replace QStringRef with QStringView
2021-07-15 10:56:49 +03:00
Chocobo1
d923c03d52
Merge pull request #15186 from Piccirello/webui-table-keyboard-nav
...
Support navigating Web UI tables with arrow keys
2021-07-13 11:26:50 +08:00
Vladimir Golovnev
699b91ab8d
Properly create "clean path" for watched folder ( #15179 )
2021-07-12 11:44:52 +03:00
AbeniMatteo
abd6eb2ff3
Add context menu to toggle content tab columns ( #15164 )
2021-07-12 13:57:17 +08:00
Thomas Piccirello
32f29e72c6
Support expanding/collapsing Web UI folders with arrow keys
2021-07-11 03:01:31 -07:00
Thomas Piccirello
e76bac4131
Support navigating Web UI tables with arrow keys
...
This allows navigating rows via up/down arrow keys.
2021-07-11 03:01:31 -07:00
Thomas Piccirello
8b94642ab1
Always set Web UI row id as a string
...
This helps ensure consistent behavior when performing rowId comparisons against strings.
2021-07-10 11:50:48 -07:00
Chocobo1
d3497148c5
Merge pull request #15176 from Chocobo1/tooltip
...
Add tooltip for more widgets
2021-07-09 16:48:58 +08:00
Vladimir Golovnev (glassez)
27baa55443
Raise minimum Qt version to 5.15.2
2021-07-09 07:41:13 +03:00
Chocobo1
fd3d4d479a
Suppress type narrowing warning on MSVC
...
Fix up 45e31a153c
.
2021-07-08 14:25:39 +08:00
Chocobo1
4b0a2d050a
Display tooltip for all columns in torrent content widget
...
It is primary useful for showing long file names.
2021-07-08 14:23:30 +08:00
Chocobo1
d85c14864b
Add tooltip for "client ID" column
...
Sometimes the client ID could be quite long and this patch helps showing
it.
2021-07-08 14:22:59 +08:00
Chocobo1
ee696e6f36
Merge pull request #15170 from Chocobo1/tooltip
...
Add tooltip for various columns
2021-07-08 13:01:59 +08:00
Chocobo1
6ccbd8472c
Merge pull request #15161 from Chocobo1/helper
...
Use `underlying_type` member directly
2021-07-08 13:01:46 +08:00
Chocobo1
8ec26e9ea9
Don't use old style casts
...
Ref: https://github.com/qbittorrent/qBittorrent/runs/2996702005?check_suite_focus=true#step:8:298
2021-07-07 14:44:39 +08:00
Chocobo1
45e31a153c
Reserve space for vector
2021-07-07 14:20:27 +08:00
Chocobo1
7c23d800e6
Use underlying_type
member directly
...
`LTUnderlyingType` served as a intermediate type for libtorrent 1.1 and
1.2 and is obsoleted now.
Also add helper to convert to underlying type.
2021-07-07 14:19:17 +08:00
Chocobo1
4dbf6af733
Simplify initialization statement
2021-07-07 13:20:13 +08:00
Chocobo1
bdc03b1c75
Add tooltip for various columns
...
Those strings sometimes are quite long and having a tooltip would
save the action of resizing the column width to see the full message.
The WebUI already has it done for all columns.
2021-07-07 13:19:29 +08:00
AbeniMatteo
9bfc74a1bc
Filter torrent info endpoint by tag ( #15152 )
2021-07-05 13:55:49 +08:00
Vladimir Golovnev
5d03917877
Use torrent info with hashes for creating .torrent file ( #15138 )
2021-07-04 09:29:34 +03:00
Vladimir Golovnev (Glassez)
d2f975a0f3
Don't forget to start "watch timer"
2021-07-02 08:34:31 +03:00
Chocobo1
eedd47860a
Merge pull request #15142 from Chocobo1/warning
...
Use proper signed number type
2021-07-01 11:35:04 +08:00
sledgehammer999
6e59248ea6
Merge pull request #15093 from FranciscoPombal/bump_libtorrent
...
Raise minimum libtorrent version to 1.2.14 (2.0.4)
2021-06-30 22:39:53 +03:00
Chocobo1
365554d064
Use proper signed number type
...
This also suppress the compiler warning:
src/base/bittorrent/torrentimpl.cpp:228:36: warning: comparison of integer expressions of different signedness: ‘int’ and ‘const size_t’ {aka ‘const long unsigned int’} [-Wsign-compare]
2021-06-29 18:04:33 +08:00
Chocobo1
70d1cb86fd
Disable move constructor where it is sensible
2021-06-29 14:49:45 +08:00
FranciscoPombal
ccb7c0d579
Raise minimum libtorrent version to 1.2.14 (2.0.4)
...
- Also update vcpkg to latest commit: includes libtorrent 1.2.14,
Qt 5.15.2, and Qt 6.1.1
2021-06-28 23:04:47 +01:00
sledgehammer999
fd9941e2d8
Merge pull request #15131 from FranciscoPombal/goodbye_travis
...
Remove TravisCI config
2021-06-28 21:48:30 +03:00
FranciscoPombal
2f89563fca
Remove TravisCI config
2021-06-28 10:41:16 +01:00
sledgehammer999
261f601bd5
Merge pull request #15129 from adem4ik/patch-5
...
Remove excess space in torrentfileswatcher.cpp
2021-06-27 15:32:50 +03:00
Andrei Stepanov
5157e4965a
Remove excess space
2021-06-27 13:01:03 +04:00
sledgehammer999
3ffd25f9e1
Bump to 4.4.0beta1
2021-06-26 21:05:44 +03:00
sledgehammer999
665ab34f25
Sync translations from Transifex and run lupdate
2021-06-26 21:03:43 +03:00
Vladimir Golovnev
37f227ae74
Provide v1 and v2 infohashes in UI ( #15097 )
2021-06-25 20:44:23 +03:00
Biswapriyo Nath
f6eb29d800
Add windows-clang support ( #15115 )
...
This allows to build with clang targeting x86_64-w64-windows-gnu.
2021-06-25 12:18:56 +08:00
HiFiPhile
f5315d9ba7
Add WebUI reverse proxy source IP resolution ( #15047 )
...
Co-authored-by: qix67
Co-authored-by: HiFiPhile <admin@hifiphile.com >
2021-06-23 09:01:36 +03:00
Vladimir Golovnev (Glassez)
124cc9621d
Delete LoadTorrentParams when load torrent failed
2021-06-22 21:36:42 +03:00
Vladimir Golovnev (Glassez)
3faa7226e7
Handle exception when torrent file cannot be exported
...
Both `lt::create_torrent` constructor and `lt::create_torrent::generate()`
can throw an exception so we need to handle it to prevent the app from crashing.
2021-06-22 21:36:42 +03:00
Vladimir Golovnev (Glassez)
6070b41c9b
Properly add torrent with new tags
...
First, an attempt is made to add new tags to the Session.
Closes #15105 .
2021-06-18 06:29:15 +03:00
Vladimir Golovnev (Glassez)
50ddfea617
Remove lockfile only when last app instance is destroyed
2021-06-18 06:27:33 +03:00
tgregerson
e74ad86f14
Don't close tags menu when toggling items ( #15098 )
...
The issue was resolved by using QAction::toggled signal instead of
QAction::triggered. In QT 5.15+ the latter signal causes a QMenu
to close, whereas the former does not. Closes #13492 .
2021-06-16 17:57:56 +03:00
Vladimir Golovnev (Glassez)
2bd2490539
Disable functions deprecated in Qt 5.14 and earlier
2021-06-16 17:56:40 +03:00
Vladimir Golovnev
5c0378a684
Merge pull request #15029 from glassez/qt-5.14
...
Raise minimum Qt version to 5.14
2021-06-14 16:48:15 +03:00
Dmitry Khlestkov
2bd5aca3a4
Keep sub-sorting order ( #15074 )
...
Fixes #15073
2021-06-14 11:57:50 +08:00
Kacper Michajłow
ccb59fbad3
Suppress C4267 conversion warnings ( #13307 )
...
- warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data
Caused by mismatch between size_type of std and Qt containers. It is safe to cast to int as all of those containers hold low number of objects.
2021-06-11 08:51:06 +03:00
Vladimir Golovnev (Glassez)
6c66d02aff
Declare AbstractFileStorage destructor virtual
2021-06-10 09:19:04 +03:00
Vladimir Golovnev
9f03598259
Merge pull request #12574 from FranciscoPombal/contrib-it
...
Revise GitHub templates
2021-06-08 20:48:18 +03:00
FranciscoPombal
8191246c19
CI: Use Qt 5.14.2 from third-party PPA on Linux
2021-06-07 14:17:32 +01:00
FranciscoPombal
437769ac0b
Revise GitHub templates
...
- Separate templates into bug report and feature request
- Add a checklist and guidance comments
- Add a PR template
- Add SUPPORT.md
2021-06-04 11:18:44 +01:00
sledgehammer999
f97a1103b1
TravisCI: Raise minimum Qt version to 5.14.2
2021-06-03 08:56:55 +03:00
Vladimir Golovnev (Glassez)
9b0c9be7dd
AppVeyor: Update CI configuration
...
Build as 64-bit.
Use Qt 5.14.2.
Use libtorrent 2.0.3.
2021-06-03 08:56:55 +03:00
Vladimir Golovnev (Glassez)
97c7f3bc67
Raise minimum Qt version to 5.14
2021-06-03 08:56:41 +03:00
Chocobo1
2503271a45
Fix main window turns blank after restoring from tray ( #15031 )
...
When restoring from tray icon, although the window manager shows qbt
window but qbt itself didn't handle the event correctly, i.e. the
`show()` was missing and thus qbt did nothing and the window is blank.
Note that at this point the `visible` property is `false`.
After invoking `show()` qbt will start showing the contents and also
fire another showEvent where `visible` property is `true` and here is where
qbt should handle preparations for the window.
Fix #9510 .
2021-05-31 12:19:22 +08:00
LoneDev
d335f263f3
Fix comment typo in algorithm.h ( #15030 )
2021-05-29 11:30:47 +08:00
Vladimir Golovnev
1c34635016
Merge pull request #14993 from glassez/file-error
...
Provide correct error description in "upload mode"
2021-05-28 08:55:53 +03:00
Vladimir Golovnev (Glassez)
b6a35e9477
Don't log any error when "queue" file doesn't exist
2021-05-27 18:27:41 +03:00
Vladimir Golovnev (Glassez)
6aa8251b98
Provide correct error description in "upload mode"
2021-05-27 18:27:40 +03:00
Chocobo1
3b4bf90a13
Merge pull request #15017 from Chocobo1/css_formatting
...
Format and lint CSS code
2021-05-27 14:36:57 +08:00
Francisco Pombal
0c71756009
CMake: fix MSVC __cplusplus ( #13934 )
2021-05-27 06:57:22 +03:00
FranciscoPombal
2f6abb8aa1
CMake: fix compiler identification checks
2021-05-26 09:46:08 +03:00
Chocobo1
42582e21f7
Merge pull request #15016 from Chocobo1/pr_13756
...
Update Mac icons for Big Sur
2021-05-26 11:46:06 +08:00
Chocobo1
af49a4dd5a
Sort CSS properties
2021-05-25 13:20:38 +08:00
Chocobo1
b2081faf87
Remove redundant empty line
2021-05-25 13:20:37 +08:00
Chocobo1
f960934eb9
Merge same selector
2021-05-25 13:20:37 +08:00
Chocobo1
5522725f5d
Remove duplicate property
2021-05-25 13:20:37 +08:00
Chocobo1
9f3d36bab0
Remove useless property
...
The `padding` will override the former `padding-top`.
2021-05-25 13:20:37 +08:00
Chocobo1
87e7085c22
Remove empty block
2021-05-25 13:20:37 +08:00
Chocobo1
d8eac56f5e
Use stylelint for CSS linting
2021-05-25 13:20:37 +08:00
Chocobo1
c20557f690
Use cleaned icons
...
By running svgcleaner over qbittorrent_mac.svg.
2021-05-25 12:09:24 +08:00
Chocobo1
65bdc4cf43
Format CSS code with prettier
2021-05-25 11:26:58 +08:00
Chocobo1
ee79c196df
Use prettier for formatting CSS code
2021-05-25 11:21:39 +08:00
17jiangz1
41682bfcbb
Update Mac icons for Big Sur
...
Add Mac icon vector source.
2021-05-25 10:42:42 +08:00
sledgehammer999
34be8c9213
Merge pull request #14934 from sledgehammer999/translations
...
Update Qt translations and add new qbt translations
2021-05-23 21:59:29 +03:00
brvphoenix
aebb9f89d1
Remove the lockfile on exit ( #14997 )
2021-05-23 14:29:41 +08:00
Chocobo1
40f6201509
Merge pull request #14976 from Chocobo1/options
...
Add `connection_speed` to advanced settings
2021-05-23 14:27:34 +08:00
zhuangzi926
2e8e2b04a1
Announce to all trackers if IP changed ( #15001 )
...
Closes #14545 .
2021-05-23 14:26:54 +08:00
Vladimir Golovnev
015780fc72
Merge pull request #14882 from glassez/fswatcher
...
Improve "Watched folders" feature
2021-05-22 18:54:09 +03:00
Chocobo1
c64e433a69
Remove unused parameter
2021-05-21 14:44:19 +08:00
Chocobo1
e21f46d824
Avoid data duplication
2021-05-21 14:38:06 +08:00
Chocobo1
ef79546508
Add connection_speed
to advanced settings
...
Now we follow libtorrent current default value 30.
Closes #6973 .
Also bump WebAPI version.
2021-05-21 14:37:57 +08: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
xavier2k6
365b1c6299
Update AppVeyor CI image to Visual Studio 2019 ( #14983 )
...
Update AppVeyor CI image to Visual Studio 2019
2021-05-19 14:42:42 +08:00
Vladimir Golovnev (Glassez)
9565b695ef
Unify custom exceptions
2021-05-18 08:40:05 +03:00
Vladimir Golovnev (Glassez)
89cedd411e
Allow add torrents with relative save path
...
The relative save path will be resoloved against the default one.
2021-05-18 07:43:53 +03:00
Anton
a51742b47c
Add context menu for tabs in search widget ( #14926 )
...
In searchwidget you can close all opened tabs or selected tab using menu. Closes #5628 .
2021-05-17 11:56:21 +08:00
An0n
ea3b897d5d
Bump file pool size ( #14966 )
2021-05-14 08:57:01 +08:00
PriitUring
e432d67b3b
Fix typo "Highlited" ( #14956 )
2021-05-12 05:00:19 +03:00
nonew-star
bd7dc8b5e7
NSIS: Update Swedish translation ( #14950 )
...
Remove redundant spaces.
2021-05-11 08:07:15 +03:00
nonew-star
a7ac700fe1
NSIS: Update Swedish translation ( #14933 )
...
Added a word.
2021-05-09 13:27:43 +03:00
Chocobo1
ff87958188
Merge pull request #14928 from Chocobo1/atomic
...
Fix potential data race
2021-05-09 11:48:18 +08:00
sledgehammer999
f308cd392b
Merge pull request #14936 from sledgehammer999/bump_grunt_dependency
...
Update grunt dependency
2021-05-08 14:16:46 +03:00
sledgehammer999
e4bea17fb8
Update grunt dependency
...
This fixes CVE-2020-7729
2021-05-07 23:34:57 +03:00
sledgehammer999
2c47cfbe25
Add new languages
...
* Mongolian
* Persian
* Thai
2021-05-07 22:53:13 +03:00
sledgehammer999
b0685541d9
Add Turkish Qt translation
2021-05-07 21:55:10 +03:00
sledgehammer999
f097c15c61
Update Qt translations
...
Based on Qt 5.15.2
2021-05-07 21:42:21 +03:00
Vladimir Golovnev
511fa37c84
Merge pull request #14927 from thalieht/webui_translate
...
Make some strings in WebUI translatable
2021-05-07 21:10:27 +03:00
Chocobo1
a82ca6adb2
Fix potential data race
...
This case could be considered benign however it could still be an
undefined behavior to the compiler, so remove it.
Ref:
https://hacks.mozilla.org/2021/04/eliminating-data-races-in-firefox-a-technical-report/
2021-05-07 15:50:33 +08:00
Chocobo1
05e3e46f5a
Throw the exact (same) exception
2021-05-07 15:49:19 +08:00
Chocobo1
6d399f0303
Fix typo
2021-05-07 15:49:19 +08:00
Chocobo1
ecebfc34fa
Move initial values to header
2021-05-07 14:51:39 +08:00
xkrstudio
59b53f3db4
NSIS: Update Hungarian translation ( #14906 )
...
Add hungarian translation.
2021-05-06 21:28:04 +03:00
thalieht
e86916a7f9
Make some strings in WebUI translatable
...
Closes #14920
2021-05-06 20:49:35 +03:00
Vladimir Golovnev
11ae073c12
Merge pull request #14909 from FranciscoPombal/update_vcpkg
...
GitHub Actions CI: update workflow
2021-05-06 18:04:33 +03:00
Chocobo1
aec53b2849
Merge pull request #14905 from BouRock/patch-4
...
NSIS: Update Turkish translation
2021-05-06 10:38:15 +08:00
Chocobo1
0f42ab230e
Merge pull request #14895 from maboroshin/patch-1
...
NSIS: Update Japanese translation
2021-05-06 10:37:32 +08:00
FranciscoPombal
211c92c387
GitHub Actions CI: update workflow
...
- update vcpkg to latest commit (includes updated libtorrent port)
- drop custom libtorrent port
- restore AppleClang workaround in the workflow file
- include install_manifest.txt in uploaded artifacts
- update actions to latest versions
- fix typos
2021-05-04 19:18:17 +01:00
Vladimir Golovnev
2f1ec09aef
Merge pull request #14714 from FozzeY/no-parent-priority-menu-on-add
...
Show priority menu at top level if there is no other
2021-05-03 18:11:24 +03:00
Burak Yavuz
4561d844e4
NSIS: Update Turkish translation
...
Uninstall string added
2021-05-03 18:08:21 +03:00
maboroshin
3caa57358f
NSIS: Update Japanese translation
2021-05-03 16:41:31 +09:00
sledgehammer999
94195d5339
Sync translations from Transifex and run lupdate
2021-05-02 18:32:42 +03:00
Chocobo1
c9a552c89c
Merge pull request #14861 from Chocobo1/warnings
...
Initialize struct members by default
2021-05-02 11:26:30 +08:00
Vladimir Golovnev
6b123921a4
Merge pull request #14726 from glassez/save-resume
...
Allow to store "resume data" in SQLite database file
2021-05-01 14:38:30 +03:00
Vladimir Golovnev (Glassez)
383eaf44ac
Implement DBResumeDataStorage class
2021-05-01 12:30:53 +03:00
Chocobo1
223d15802e
Merge pull request #14693 from Chocobo1/tags
...
Revise tag related implementations
2021-04-28 11:42:08 +08:00
Chocobo1
bdf2f6c3e1
Initialize struct members by default
...
This is to suppress the following compilation warnings:
base/bittorrent/magneturi.cpp: In constructor ‘BitTorrent::MagnetUri::MagnetUri(const QString&)’:
base/bittorrent/magneturi.cpp:87:60: warning: missing initializer for member ‘BitTorrent::TrackerEntry::message’ [-Wmissing-field-initializers]
87 | m_trackers.append({QString::fromStdString(tracker)});
2021-04-27 11:48:13 +08:00
Chocobo1
fdc186c92f
Revise tag related implementations
...
Fix #12690 .
2021-04-27 11:47:52 +08:00
Chocobo1
ab6141edb7
Merge pull request #14813 from Kolcha/cmake_mac
...
Set correct minimum macOS version with CMake
2021-04-26 10:02:56 +08:00
Chocobo1
d0dcf53575
Merge pull request #14840 from jagannatharjun/pfix
...
Correctly draw progress background with stylesheet
2021-04-26 10:02:25 +08:00
jagannatharjun
ab906f17de
Correctly draw progress background with stylesheet
...
fixes #14731
2021-04-24 18:04:34 +05:30
Nick Korotysh
28ef33b0a0
Improve Info.plist generation with CMake
...
- drop configure_file() and file(GENERATE) calls
- fill missed MACOSX_DEPLOYMENT_TARGET variable
2021-04-23 20:59:09 +03:00
Vladimir Golovnev
376dedebb1
Merge pull request #14816 from glassez/tracker-entry
...
Improve "tracker entries" handling
2021-04-22 19:03:49 +03:00
Vladimir Golovnev
137c6458f7
Merge pull request #14825 from glassez/upload-mode
...
Correctly handle "no enough disk space" error
2021-04-22 18:43:43 +03:00
Vladimir Golovnev (Glassez)
75e0990eb3
Provide tracker peers count via TrackerEntry
...
Don't expose additional accessor in Torrent interface.
2021-04-21 08:46:05 +03:00
Vladimir Golovnev (Glassez)
62a6c725d6
Don't overwrite tracker message
...
Use one of the tracker endpoint messages.
2021-04-21 08:45:09 +03:00
Vladimir Golovnev (Glassez)
d4554c2e5c
Correctly handle "no enough disk space" error
...
If torrent failed to write, it stops downloading and goes to
"upload mode" instead of errored state so it just keeps seeding.
Now qBittorrent indicates this state as "errored" and allows
the user to manually bring the torrent out of this state.
2021-04-21 08:27:56 +03:00
Chocobo1
d6a398cf2c
Merge pull request #14811 from Kolcha/bundle_name
...
Don't use executable name as CFBundleName value
2021-04-21 11:46:43 +08:00
Chocobo1
68e3bcbcda
Merge pull request #14815 from Chocobo1/activity
...
Show "last activity" value under all circumstances
2021-04-21 11:44:44 +08:00
Chocobo1
6864e13e6f
Show "last activity" value under all circumstances
2021-04-20 10:03:25 +08:00
Chocobo1
942fad1d6f
Merge pull request #14788 from Felipefpl/patch-1
...
Update portugueseBR.nsi
2021-04-20 09:40:57 +08:00
Nick Korotysh
29e6b229ac
Don't use executable name as CFBundleName value
2021-04-20 01:49:32 +03:00
Chocobo1
a4ce5d1687
Merge pull request #14810 from Chocobo1/info
...
Capitalize "peer flags" descriptions
2021-04-19 10:48:10 +08:00
Chocobo1
cb8d6a0939
Reorder peer flags
...
Now we group related flags nearby.
2021-04-18 12:46:07 +08:00
Chocobo1
e38128119c
Capitalize "peer flags" descriptions
...
And use a helper function to build the descriptions.
2021-04-18 12:45:18 +08:00
Chocobo1
c7c7924d37
Merge pull request #14759 from Chocobo1/icons
...
Install vector program icon on Linux
2021-04-18 12:42:35 +08:00
Chocobo1
b5a24fd877
Merge pull request #14794 from zhuangzi926/pr-dyndns-register-url
...
Update dyndns register url
2021-04-17 11:44:51 +08:00
Vladimir Golovnev
e1ed5b73d0
Merge pull request #14795 from glassez/file-action
...
Allow to specify file indexes in `torrents/files` API
2021-04-17 06:17:38 +03:00
FozzeY
3e47d26e44
Show priority menu at top level if there is no other
2021-04-17 00:14:18 +03:00
Vladimir Golovnev
e0d17e496a
Merge pull request #14783 from glassez/macutils
...
Don't use "Qt Mac Extras" module
2021-04-16 18:40:40 +03:00
Vladimir Golovnev (Glassez)
6cf99cd0f2
Allow to specify file indexes in torrents/files API
2021-04-16 09:30:07 +03:00
Chocobo1
31d84100cd
Merge pull request #14792 from Chocobo1/qnotify
...
Fix D-Bus Notification `desktop-entry` field
2021-04-16 14:17:52 +08:00
Chocobo1
0eb39aa9e3
Perform installation step on Github Actions CI
2021-04-16 14:06:43 +08:00
Chocobo1
f457069881
Install vector program icon on Linux
...
The icon is copied from icons/qbittorrent-tray.svg as there is no way to
install a file and rename it in qmake.
2021-04-16 14:06:43 +08:00
Vladimir Golovnev
47eef78365
Merge pull request #14796 from iDolmatov/patch-1
...
Update russian.nsi
2021-04-16 08:49:50 +03:00
Долматов Алексей
eaaadf40c9
Update russian.nsi
...
Update uninstall strings.
2021-04-15 20:26:51 +03:00
zhuangzi926
c9e2da5f53
Update dyndns register url
2021-04-15 21:41:42 +08:00
Chocobo1
53b7956968
Clean up code
...
and remove unused parameters/variables.
2021-04-15 11:29:22 +08:00
Chocobo1
d13be829c3
Fix D-Bus Notification desktop-entry
field
2021-04-15 11:24:28 +08:00
Chocobo1
e18b2ab437
Regenerate D-Bus notifications related code
2021-04-15 11:24:25 +08:00
Chocobo1
6777a615d4
Merge pull request #14786 from PriitUring/patch-1
...
Update estonian.nsi
2021-04-15 11:02:03 +08:00
Chocobo1
41f2375053
Merge pull request #14750 from kevtechXx/master
...
Add "Notification timeout" option
2021-04-15 11:00:34 +08:00
Felipe
f385bd2236
Update portugueseBR.nsi
...
An updated/fixed version of the installer language file.
2021-04-14 11:01:30 -03:00
Vladimir Golovnev (Glassez)
35032d7eed
Don't use "Qt Mac Extras" module
...
"Qt Mac Extras" module is removed in Qt6.
2021-04-14 15:41:46 +03:00
PriitUring
bfd48f187a
Update estonian.nsi
...
Changing translation of word "Uninstall" to more common local word "Desinstall".
2021-04-14 00:49:36 +03:00
Vladimir Golovnev
7662da52e6
Merge pull request #14758 from FliessendWasser/patch-2
...
Update german.nsi
2021-04-13 18:21:48 +03:00
kevtechxx
7722916fad
Add "Notification timeout" option
2021-04-13 16:22:48 +02:00
Chocobo1
d82a1d7198
Merge pull request #14717 from Chocobo1/ncmp
...
Simplify natural sort classes interface
2021-04-13 14:22:25 +08:00
Henry Water
45925efe32
Update german.nsi
...
Line 32
Changing "zumindest" to "mindestens".
I even would go further to change the line into "[...] Windows 7 oder höher." ("[...] Windows 7 or higher."), as this seems to make more sense and we wouldn't have the hassle of discussing whether "zumindest" or "mindestens" fits better.
If you insist on a comment:
It is quite a cosmetic change, and a personal opinion as well. Imo "mindestens" fits more to the theme of general use - "zumindest" can be used in special places, as it isn't that common in e.g. regular conversations. What comes to my mind is "Best before", which is "Mindestens haltbar bis". It would be unusual to use "Zumindest haltbar bis". 😄
Finally it is up to you what to change.
CC: @schnurlos
Additionally I fixed line 10, where no need of a double-"mit" was.
Plus line 34, as requested!
2021-04-10 10:09:08 +02:00
Chocobo1
a64bb1a990
Simplify natural sort classes interface
...
Now the comparison function/class should be constructed before usage.
This change also make it easier to plug in into various containers which
will require a compare function type (such as std::set).
2021-04-10 14:18:18 +08:00
Chocobo1
650bf15db8
Merge pull request #14734 from Chocobo1/boost_system
...
Remove checking for Boost.System
2021-04-10 12:41:42 +08:00
Chocobo1
2b8e50b296
Merge pull request #14737 from jagannatharjun/revert
...
Revert "Change clamping of update interval of SpeedPlotView::Averager"
2021-04-09 11:34:03 +08:00
Chocobo1
2731eb1c05
Merge pull request #14738 from Chocobo1/nsis
...
Add new translatable string to all available languages
2021-04-09 11:33:13 +08:00
Vladimir Golovnev
f97aa05bdb
Merge pull request #14736 from glassez/string-compare
...
Enclose strings in QLatin1String
2021-04-08 10:32:51 +03:00
Vladimir Golovnev (Glassez)
4a68df084e
Enclose strings in QLatin1String
2021-04-08 06:56:40 +03:00
Chocobo1
83530b7adb
Add new translatable string to all available languages
...
Also provide translation for Traditional Chinese.
Fix up a2ef09466f
.
2021-04-08 11:52:38 +08:00
bovirus
a2ef09466f
Enable translation for uninstaller link ( #14660 )
2021-04-08 11:39:03 +08:00
Chocobo1
7c9488105e
Remove checking for Boost.System
...
Checking for Boost.System library is libtorrent responsibility as qbt
doesn't use it directly, i.e. it is not a direct dependency for qbt.
2021-04-08 11:26:16 +08:00
jagannatharjun
3f32b040dc
Revert "Change clamping of update interval of SpeedPlotView::Averager"
...
This reverts commit 435bb34435
.
To achieve what the reverted commit wants, the timing
would need to be taken iteratively rather that cumulatively
fixes #14735
2021-04-07 22:43:36 +05:30
sledgehammer999
21b3c61162
Merge pull request #14575 from sledgehammer999/license_clarification
...
Clarify that the license is GPLv2+
2021-04-07 14:02:59 +03:00
Chocobo1
5045fa6dcd
Merge pull request #14652 from jagannatharjun/speed-plot-view-minor
...
Minor updates to Speed plot view
2021-04-06 11:40:01 +08:00
Chocobo1
c4a3d70500
Merge pull request #14703 from brvphoenix/fix-url
...
WebUI: Fix magnet url from the browser
2021-04-06 11:39:22 +08:00
jagannatharjun
435bb34435
Change clamping of update interval of SpeedPlotView::Averager
...
Don't clamp elapsed time of SpeedPlotView::Averager on resolution. Since
it may cause minor discrepencies across different Averagers with
different resolution for same speed update.
2021-04-04 21:49:57 +05:30
brvphoenix
bb9ca7f418
WebUI: Fix magnet url from the browser
2021-04-03 19:26:17 +08:00
Chocobo1
2e30ed17bd
Merge pull request #14686 from Chocobo1/actions_master
...
Enable Github Actions CI for all branches by default
2021-04-03 13:21:20 +08:00
Chocobo1
0b3d088782
Merge pull request #14676 from Chocobo1/watcher
...
Revise folder monitoring functions in WebUI
2021-04-03 13:19:29 +08:00
Vladimir Golovnev
6514eaf565
Merge pull request #14688 from glassez/file-prio
...
Correctly forward declare file_prio_alert
2021-04-02 11:45:50 +03:00
Vladimir Golovnev (Glassez)
f8e7602d96
Correctly forward declare file_prio_alert
2021-04-02 08:29:23 +03:00
Vladimir Golovnev
565aef9637
Merge pull request #14630 from glassez/save-resume
...
Improve ResumeDataStorage
2021-04-02 06:48:32 +03:00
Chocobo1
82efb83c43
Enable Github Actions CI for all branches by default
2021-04-01 12:52:31 +08:00
Vladimir Golovnev
f29ff67585
Merge pull request #14673 from glassez/lt-version
...
Raise minimum libtorrent version to 1.2.13 (2.0.3)
2021-04-01 06:34:13 +03:00
Vladimir Golovnev
825bf8d61e
Merge pull request #14657 from glassez/file-prio
...
Save "resume data" once file priority is changed
2021-04-01 06:32:17 +03:00
Vladimir Golovnev (Glassez)
1344b31535
Improve ResumeDataStorage
2021-03-31 11:56:36 +03:00
Chocobo1
9b8bddf7b2
Revise folder monitoring functions in WebUI
...
Closes #14241 .
2021-03-31 12:04:22 +08:00
Chocobo1
8a087a876e
Clean up code
2021-03-31 11:27:57 +08:00
Chocobo1
f8067aa592
Merge pull request #14645 from Chocobo1/links
...
Remove unnecessary URL encoding
2021-03-31 11:16:45 +08:00
skvenders
2b837381f3
Remove contributor
...
Remove contributor as requested: https://github.com/qbittorrent/qBittorrent/pull/14637#issuecomment-808894421
2021-03-31 11:07:01 +08:00
Vladimir Golovnev (Glassez)
cd6959b712
Save "resume data" once file priority is changed
2021-03-30 19:59:05 +03:00
Vladimir Golovnev (glassez)
3e5f8c64d4
Raise minimum libtorrent version to 1.2.13 (2.0.3)
2021-03-30 19:56:22 +03:00
Vladimir Golovnev
2d1c34d8e0
Merge pull request #14593 from glassez/qt6-compat
...
Make current codebase more compatible with Qt6
2021-03-29 14:00:23 +03:00
Chocobo1
48d532777a
Merge pull request #14647 from Chocobo1/cursor
...
Move cursor to the next line of end of text
2021-03-29 12:50:31 +08:00
sledgehammer999
f6336a6056
Clarify that the license is GPLv2+
...
Regarding this license clarification there are 3 commits of interest
(commits A, B, C). Before commit A the COPYING file contained only the
text of the GPLv2 license, while all source files had a license block
at the top saying that they are under the terms of "GPLv2 or later". With
commit A there was a temporary change to GPLv3. The COPYING file contained
only the text of the GPLv3 license, while all source files had a license
block at the top saying that they are under the terms of "GPLv3 or later".
Then with commit B the COPYING file and the license block of the source
files was reverted to their state before commit A. Afterwards, with
commit C a license summary(or clarification) block was put at the top of
the COPYING file. This block indicated that the license was GPLv2 without
having the "or later" clause and it also included the OpenSSL exception.
However, the license block of each source file continued to contain the
"or later" clause which was not removed. The same license block continues
to exist in all current source files. Thus it is concluded that the ommision
of the "or later" clause with commit C in the COPYING file was accidental.
OR ALTERNATIVELY (OR IN ADDITION)
At the time commit C was made Christophe Dumez was not the sole contributor.
There is no record that the other contributors agreed with the supposed
GPLv2 only change or that there was a Contributor License Agreement,
transfering their rights to him. Thus making his license change decision
invalid/void/illegal.
Commit A: 54f9375b32
Commit B: 8df61db644
Commit C: 9835af4962
2021-03-29 00:08:14 +03:00
Vladimir Golovnev (Glassez)
cd7bdc8998
Use qsizetype instead of int where required by Qt6
2021-03-28 15:08:32 +03:00
Chocobo1
2b7b3c65cc
Move cursor to the next line of end of text
...
Closes #13908 .
2021-03-28 15:41:37 +08:00
Chocobo1
98e02a8fed
Remove unnecessary URL encoding
...
Fix #14635 .
2021-03-28 13:16:34 +08:00
Vladimir Golovnev (Glassez)
a93391e247
Drop QNetworkConfigurationManager usage
2021-03-27 19:44:34 +03:00
Vladimir Golovnev (Glassez)
102cc684dd
Replace Qt Windows Extras features with native ones
2021-03-27 19:43:28 +03:00
Vladimir Golovnev (Glassez)
a230228441
Don't compare bool with int
...
In Qt6 QHash::remove() returns bool to indicate operation status.
2021-03-27 19:29:53 +03:00
Vladimir Golovnev (Glassez)
135cad576c
Don't use removed QApplication attribute
2021-03-27 19:28:00 +03:00
Vladimir Golovnev (Glassez)
561fbf2cca
Don't use removed QTextStream::setCodec()
...
QTextStream encodes as UTF-8 by default.
2021-03-27 19:25:32 +03:00
Vladimir Golovnev (Glassez)
a8127d6102
Use valid event type in QWidget::enterEvent()
2021-03-27 19:23:35 +03:00
Mike Tzou
2f28d3c7b6
Merge pull request #14624 from crackwitz/trackers-dialog-tab-fix
...
Fix tabChangesFocus attribute in "Edit trackers" dialog
2021-03-27 11:14:40 +08:00
Mike Tzou
e59c735331
Merge pull request #14590 from Chocobo1/npm
...
Add WebUI checking to CI
2021-03-26 09:52:32 +08:00
Mike Tzou
221014a2e3
Merge pull request #14619 from Chocobo1/sort
...
Sort invalid QDateTime values after valid values
2021-03-26 09:50:21 +08:00
Christoph Rackwitz
e2dbfa9ace
Fix tabChangesFocus attribute in "Edit trackers" dialog
2021-03-26 00:07:09 +01:00
Chocobo1
121ff2b7be
Apply code formatting
2021-03-26 00:27:52 +08:00
Chocobo1
45465e994e
Add WebUI checking to CI
2021-03-26 00:27:52 +08:00
Chocobo1
af85a8a340
Add necessary curly brackets
2021-03-26 00:27:52 +08:00
Chocobo1
5fe0e9395f
Don't use Object.prototypes builtins directly
...
See: https://eslint.org/docs/rules/no-prototype-builtins
2021-03-26 00:27:52 +08:00
Chocobo1
1f1cabd144
Remove unnecessary escape character
2021-03-26 00:27:51 +08:00
Chocobo1
c3bab70434
Remove extra semicolon
2021-03-26 00:27:51 +08:00
Chocobo1
1d6af22813
Add tools for js code formatting and linting
...
Due to eslint couldn't correctly resolve the context for the variables,
two eslint rules are disabled for now.
2021-03-26 00:27:12 +08:00
Chocobo1
a50798c78f
Sort invalid QDateTime values after valid values
...
Closes #14607 .
2021-03-25 23:17:06 +08:00
Vladimir Golovnev
379d41b6fb
Merge pull request #14581 from glassez/save-resume
...
Implement BencodeResumeDataStorage class
2021-03-25 07:05:08 +03:00
Vladimir Golovnev (Glassez)
09da6828b8
Use complete types in container declarations
...
Qt 6 disallows to use incomplete types in container declarations
in some cases, e.g. in parameters of signals/slots.
2021-03-24 14:31:28 +03:00
Vladimir Golovnev
9f386afe9c
Merge pull request #14586 from glassez/varhash
...
Don't cause QHash relayout while using reference to its node
2021-03-24 11:37:43 +03:00
Vladimir Golovnev (Glassez)
35dedd3d83
Implement BencodeResumeDataStorage class
...
Implement ResumeDataStorage class as base for all "resume data" storages.
Implement BencodeResumeDataStorage class and put all existing logic of
"resume data" loading/saving there.
2021-03-24 08:59:49 +03:00
Mike Tzou
45c0d5a823
Merge pull request #14587 from Chocobo1/monitor
...
Remove wrong parentheses in WebUI
2021-03-24 12:47:11 +08:00
Vladimir Golovnev
7bc5bfa140
Merge pull request #14583 from glassez/progress
...
Correctly draw progress bar in Qt 6
2021-03-24 07:23:53 +03:00
sledgehammer999
fda6def384
Sync translations from Transifex and run lupdate
2021-03-23 22:57:07 +02:00
Mike Tzou
4bf4d45389
Merge pull request #14504 from treysis/ipv6-outgoing-interfaces
...
Fix bad IPv6 address format for outgoingInterfaces
2021-03-23 18:58:22 +08:00
Mike Tzou
4e8eb2c996
Merge pull request #14570 from brvphoenix/decode
...
WebUI: Avoid decoding strings repeatedly
2021-03-23 18:58:01 +08:00
Chocobo1
e43a9de2f3
Make global functions immutable
2021-03-23 18:53:56 +08:00
Vladimir Golovnev (Glassez)
1a9e97ee3b
Don't cause QHash relayout while using reference to its node
2021-03-23 13:17:36 +03:00
Chocobo1
901fca2d12
Remove wrong parentheses
...
Fix up 87ad8a1495
.
2021-03-23 17:09:24 +08:00
Vladimir Golovnev (Glassez)
c23f8542b2
Correctly draw progress bar in Qt 6
2021-03-23 10:51:13 +03:00
treysis
0189606445
Fix bad IPv6 address format for outgoingInterfaces
...
Fixes https://github.com/qbittorrent/qBittorrent/issues/12892#issuecomment-792292336
2021-03-22 11:23:04 +01:00
Vladimir Golovnev
9b31496b22
Merge pull request #14576 from glassez/save-resume
...
Wrap "resume data" in LoadTorrentParams
2021-03-22 10:24:47 +03:00
Vladimir Golovnev
b9676ac3eb
Merge pull request #14546 from glassez/regexp
...
Use QRegularExpression instead of deprecated QRegExp
2021-03-22 10:14:02 +03:00
Vladimir Golovnev (Glassez)
764aabc459
Wrap "resume data" in LoadTorrentParams
2021-03-22 07:56:17 +03:00
Vladimir Golovnev (Glassez)
61d2ff359b
Use QRegularExpression instead of deprecated QRegExp
...
Now it follows closely the definition of wildcard for glob patterns.
The backslash (\) character is not an escape char in this context.
In order to match one of the special characters, place it in square
brackets (for example, [?]).
2021-03-22 07:50:47 +03:00
Mike Tzou
87ad8a1495
Merge pull request #14554 from thalieht/seeding_time_webui
...
Seeding time in WebUI
2021-03-22 12:08:18 +08:00
Vladimir Golovnev (Glassez)
5d889e4a8f
Drop deprecated code
2021-03-21 13:53:12 +03:00
Vladimir Golovnev (Glassez)
b65a714d17
Save resume data when torrent has done checking
2021-03-21 13:53:05 +03:00
Vladimir Golovnev
ea1c4a8fc8
Merge pull request #14567 from glassez/desktop
...
Clean up the code
2021-03-21 12:57:46 +03:00
brvphoenix
5beb1b2cd0
WebUI: Avoid decoding strings repeatedly
...
Fix #14553
2021-03-21 02:09:53 -07:00
Mike Tzou
f55e0b6775
Merge pull request #14562 from Chocobo1/disable
...
Show progress bar in disabled state for paused torrents
2021-03-21 14:56:39 +08:00
thalieht
d124041726
Allow >100 days in WebUI function "friendlyDuration"
...
Because it's not only used for ETA.
2021-03-20 15:36:08 +02:00
Vladimir Golovnev
7a26a92edd
Merge pull request #14520 from glassez/save-resume
...
Improve "save resume data" handling
2021-03-20 09:10:33 +03:00
Vladimir Golovnev (Glassez)
43c8ac0aa1
Don't use deprecated operators
2021-03-20 09:08:48 +03:00
Vladimir Golovnev (Glassez)
46e6ed480a
Use correct return statement
2021-03-20 09:05:32 +03:00
thalieht
9f30aba2b3
Fix incorrect seeding time string in WebUI General tab
2021-03-19 15:29:08 +02:00
thalieht
560ecbc6c3
Add seeding time to the active time column in WebUI
...
Closes #14526
2021-03-19 15:29:08 +02:00
Vladimir Golovnev (Glassez)
8d9b6cca63
Include missing header
2021-03-19 13:59:04 +03:00
Vladimir Golovnev (Glassez)
3972597163
Include QDesktopWidget header only when needed
2021-03-19 09:23:20 +03:00
Chocobo1
b0d17221f2
Fix library requirements
2021-03-19 13:34:20 +08:00
Chocobo1
be2cdca1e9
Draw progress bar in disabled style
2021-03-19 13:34:20 +08:00
Mike Tzou
f6ab1d63e8
Merge pull request #14540 from jagannatharjun/remember
...
Remember sub sort column of transfer list
2021-03-19 13:24:24 +08:00
jagannatharjun
cf5e833898
Remember sub sort column of transfer list
2021-03-18 16:50:16 +05:30
Mike Tzou
6ed2e2694f
Merge pull request #14543 from Chocobo1/cleanup
...
Simplify progress bar painting
2021-03-18 11:38:15 +08:00
Vladimir Golovnev
04827188f2
Merge pull request #14547 from glassez/codec
...
Don't use deprecated QTextCodec
2021-03-17 13:47:23 +03:00
Vladimir Golovnev (Glassez)
560239c918
Improve "save resume data" handling
2021-03-17 07:31:00 +03:00
Chocobo1
a78929dadf
Simplify progress bar painting
2021-03-17 11:19:08 +08:00
Vladimir Golovnev (Glassez)
349cc54c69
Don't use deprecated QTextCodec
2021-03-16 19:10:10 +03:00
Vladimir Golovnev
a8ae97ba91
Merge pull request #14427 from glassez/qt-5.12
...
Raise minimum Qt version to 5.12
2021-03-14 20:43:39 +03:00
Mike Tzou
aad6b69f00
Merge pull request #14516 from Chocobo1/replace
...
Replace parameters in one step
2021-03-15 01:19:17 +08:00
Chocobo1
d74df935f4
Replace parameters in one step
...
This would avoid the unwanted effect of replacing parameter coming from
another parameter.
2021-03-14 14:03:42 +08:00
Vladimir Golovnev
5c8806b307
CI: Don't compile on Ubuntu 18.04
2021-03-13 15:51:07 +03:00
Vladimir Golovnev (Glassez)
a078633a32
Don't use deprecated features
2021-03-13 15:50:53 +03:00
Vladimir Golovnev (Glassez)
f022458383
Raise minimum supported Qt version to 5.12
2021-03-13 15:33:58 +03:00
Vladimir Golovnev
6139d0d65a
Merge pull request #14525 from glassez/init-status
...
Initialize torrent status from add torrent params
2021-03-13 09:40:18 +03:00
Vladimir Golovnev
86a283b4ae
Merge pull request #14503 from glassez/torrent-id
...
Improve "info hash" handling (step 2)
2021-03-13 09:39:56 +03:00
jagannatharjun
bb39a41e9e
Update comment
2021-03-13 11:39:14 +05:30
Vladimir Golovnev
1568e98d43
Merge pull request #14537 from glassez/trackerentry
...
Properly show tracker status for "paused" torrents
2021-03-13 06:21:35 +03:00
Vladimir Golovnev (Glassez)
0c9ecd1d76
Properly show tracker status for "paused" torrents
2021-03-12 16:20:52 +03:00
Vladimir Golovnev (Glassez)
799e67bbca
CI: Disable libtorrent2 deprecated functions on Travis
2021-03-12 12:43:14 +03:00
Vladimir Golovnev (Glassez)
561b597031
Improve "info hash" handling
...
Define "torrent ID" concept, which is either a SHA1 hash for torrents of version 1,
or a SHA256 hash (truncated to SHA1 hash length) for torrents of version 2.
Add support for native libtorrent2 info hashes.
2021-03-12 12:43:14 +03:00
Vladimir Golovnev (Glassez)
6d6908e625
Initialize torrent status from add torrent params
2021-03-11 20:01:34 +03:00
Vladimir Golovnev
4da4fb0676
Merge pull request #14479 from glassez/trackerentry
...
Improve tracker entries handling
2021-03-11 18:51:19 +03:00
Vladimir Golovnev (Glassez)
7a8c05dc7c
Improve tracker entries handling
2021-03-10 19:54:34 +03:00
Vladimir Golovnev
d7bacdcbff
Merge pull request #14518 from glassez/speedplot
...
Don't allow speed plot buffer to overflow
2021-03-10 19:33:22 +03:00
Vladimir Golovnev
73e927ff19
Merge pull request #14519 from glassez/add-torrent
...
Accept "share limits" when adding torrent using WebAPI
2021-03-10 19:32:41 +03:00
Vladimir Golovnev (Glassez)
e2c785b2d5
Accept "share limits" when adding torrent using WebAPI
2021-03-09 20:01:15 +03:00
Vladimir Golovnev (Glassez)
20e9952d98
Don't allow speed plot buffer to overflow
2021-03-09 19:52:10 +03:00
Vladimir Golovnev
0bf36ad031
Merge pull request #14505 from glassez/stacktrace
...
Look for qbittorrent.pdb in installation directory
2021-03-08 14:57:43 +03:00
Mike Tzou
f3435c5e35
Merge pull request #14493 from Chocobo1/tos
...
Expose ToS setting from libtorrent
2021-03-08 10:24:42 +08:00
Vladimir Golovnev (Glassez)
166ec74ff9
Look for qbittorrent.pdb in installation directory
...
Pass application directory as PDB search path in SymInitialize.
Otherwise it searches in application working directory so when you
run qBittorrent with working directory other than its installation
one it can't find qbittorent.pdb file and produces broken stacktrace.
2021-03-07 17:41:51 +03:00
Vladimir Golovnev
6b3c6c12ff
Merge pull request #14466 from glassez/sha1hash
...
Improve "info hash" handling
2021-03-07 13:25:01 +03:00
Chocobo1
5161758193
Expose ToS setting from libtorrent
...
Closes #14420 .
2021-03-07 15:32:07 +08:00
Vladimir Golovnev (Glassez)
bea32cfe38
Define template for classes that represent SHA hashes
2021-03-06 12:36:08 +03:00
Vladimir Golovnev (Glassez)
8cfd803222
Drop implicit conversions between InfoHash and QString
2021-03-06 12:35:42 +03:00
Chocobo1
9a567721a8
Add missing semicolon
2021-03-06 14:44:10 +08:00
Mike Tzou
3a49c8f2da
Merge pull request #14491 from Chocobo1/travis
...
Fix TravisCI macOS builds
2021-03-06 11:49:06 +08:00
Chocobo1
12938799a6
Remove unused lambda capture
2021-03-05 22:18:08 +08:00
Chocobo1
89807fb55f
Specify Qt version in TravisCI build script
...
In homebrew `qt` package is referring to Qt6 instead of Qt5.
2021-03-05 20:38:36 +08:00
Mike Tzou
891a24c6ba
Merge pull request #14484 from Chocobo1/abort
...
Properly stop torrent creation if aborted
2021-03-05 14:44:41 +08:00
Mike Tzou
752b45083c
Merge pull request #14472 from Chocobo1/progressbar_draw
...
Correctly draw the background of progress bar
2021-03-05 14:43:52 +08:00
Chocobo1
f00f552369
Properly stop torrent creation if aborted
...
Closes #11346 .
2021-03-04 14:54:02 +08:00
Chocobo1
5c2b81d78f
Correctly draw the background of progress bar
...
Closes #12271 .
2021-03-02 21:53:46 +08:00
Vladimir Golovnev
a2b0531d5f
Merge pull request #14189 from glassez/libtorrent-1.2.12
...
Raise minimum libtorrent version to 1.2.12 (2.0.2)
2021-03-01 20:43:28 +03:00
Mike Tzou
752eb58ec0
Merge pull request #14423 from jagannatharjun/true-stable
...
Support sub-sorting in Transferlist
2021-03-01 12:26:17 +08:00
Vladimir Golovnev
7373b60522
Merge pull request #14432 from brvphoenix/rss
...
WebUI: Properly decode strings
2021-02-25 12:58:29 +03:00
brvphoenix
59f0961594
WebUI: Properly decode strings
2021-02-24 21:48:21 +03:00
jagannatharjun
b776f98df8
Support sub-sorting in Transferlist
2021-02-25 00:15:32 +05:30
Mike Tzou
7400284cff
Merge pull request #14437 from Chocobo1/mime
...
Improve detection of filename extension of audio/video files
2021-02-23 12:35:17 +08:00
Vladimir Golovnev
da87eb7b4c
Merge pull request #14428 from mkopec/menuicons
...
Add an option to disable icons in menus
2021-02-22 07:10:50 +03:00
Chocobo1
e1f9083c81
Improve detection of filename extension of audio/video files
2021-02-21 17:38:21 +08:00
Michał Kopeć
614376ed64
Add an option to disable icons in menus
2021-02-20 18:12:02 +01:00
Mike Tzou
529dd6e3a8
Merge pull request #14405 from Chocobo1/funding
...
Enable sponsor button on Github
2021-02-15 12:00:59 +08:00
Chocobo1
acb1bc0c0e
Enable sponsor button on Github
2021-02-14 13:53:23 +08:00
Mike Tzou
8233f60569
Merge pull request #14372 from ojura/patch-1
...
Systemd: wait for mounting of local filesystems
2021-02-13 13:49:20 +08:00
Vladimir Golovnev
4ae2160372
Merge pull request #14054 from jagannatharjun/speedplotview
...
Make SpeedPlotView averager time aware
2021-02-12 06:58:45 +03:00
Mike Tzou
1df2dd9593
Merge pull request #14371 from Chocobo1/units
...
Fix potential out-of-bounds access
2021-02-11 13:15:01 +08:00
Juraj Oršulić
d53a1d1412
Systemd: wait for mounting of local filesystems
2021-02-10 12:08:47 +01:00
Mike Tzou
de9b43984a
Merge pull request #14368 from zzandland/revise-apply-button-options
...
Refactor apply button logics on options dialog
2021-02-10 12:35:35 +08:00
Chocobo1
4a0b36a50b
Use std::optional to return results
2021-02-10 12:25:26 +08:00
Chocobo1
fffe5e7003
Fix potential out-of-bounds access
2021-02-10 12:25:15 +08:00
Vladimir Golovnev
0bac639a04
Merge pull request #14327 from zzandland/add-category-automated-rss-downloader
...
Add category button on AutomatedRSSDownloader
2021-02-10 06:40:23 +03:00
Si Yong Kim
0d0d0a7c23
Add empty name error handling on new category dialog
2021-02-08 21:27:26 -08:00
Mike Tzou
c8e8a44747
Merge pull request #14363 from Chocobo1/queue_pos
...
Revise getter function for torrrent queue position
2021-02-09 12:24:14 +08:00
Si Yong Kim
173f8b093f
Refactor apply button logics on options dialog
2021-02-08 09:02:12 -08:00
Chocobo1
e46c88580a
Revise getter function for torrrent queue position
...
This addresses https://github.com/qbittorrent/qBittorrent/pull/14335#issuecomment-774667836
The WebAPI is not affected as a workaround is added.
2021-02-08 14:24:16 +08:00
Mike Tzou
e6033c952e
Merge pull request #14351 from Chocobo1/avail
...
Show proper string when torrent availability is not available
2021-02-08 12:12:22 +08:00
Vladimir Golovnev
3dfd0ff3b3
Merge pull request #14354 from glassez/missing-files
...
Improve handling of "missing files" torrents
2021-02-08 06:34:15 +03:00
Vladimir Golovnev
dd65f35e5a
Merge pull request #14353 from glassez/rename
...
Allow change-case-only file renaming on Windows
2021-02-08 06:33:17 +03:00
Chocobo1
0d550c9bce
Apply "Hide infinity values" to ETA column
2021-02-07 16:08:20 +08:00
Chocobo1
2aeb8b9390
Apply "Hide infinity values" to "Down/Up Limit" columns
2021-02-07 16:08:20 +08:00
Chocobo1
afa2fc0ba9
Apply "Hide zero values" to "Time Active" column
2021-02-07 16:08:20 +08:00
Chocobo1
6a45919b25
Clean up coding style
2021-02-07 16:08:20 +08:00
Chocobo1
e4f7d607e1
Show proper string when torrent availability is not available
2021-02-07 16:08:20 +08:00
Si Yong Kim
0690ef31d1
Add category button on AutomatedRSSDownloader on GUI
...
Closes #7629
2021-02-06 05:13:57 -08:00
Vladimir Golovnev (Glassez)
c3f02d833c
Restart "missing files" torrents after changing location
2021-02-06 14:59:51 +03:00
Vladimir Golovnev (Glassez)
e273ac3a0d
Allow "missing files" torrents to save more resume data
2021-02-06 14:30:33 +03:00
Vladimir Golovnev (Glassez)
459d02abc8
Allow change-case-only file renaming on Windows
2021-02-06 11:33:46 +03:00
Mike Tzou
f5e8b26a55
Merge pull request #14335 from Chocobo1/sort
...
Use stable sorting in transfer list
2021-02-06 11:02:30 +08:00
Mike Tzou
2d27083509
Merge pull request #14340 from Chocobo1/cmake
...
Use built-in function for configuring file contents
2021-02-06 11:01:10 +08:00
Vladimir Golovnev
ce482c20cb
Merge pull request #14307 from dyumin/let_system_sleep_if_there_are_errored_active_torrents
...
Don't inhibit system sleep if all active torrents are errored
2021-02-05 14:13:15 +03:00
Chocobo1
c2f149cca3
Use built-in function for configuring file contents
2021-02-05 10:20:03 +08:00
Chocobo1
ab0e1ec6e8
Use stable sorting in transfer list
2021-02-05 10:01:28 +08:00
Mike Tzou
5e4f548321
Merge pull request #14336 from Chocobo1/actions
...
Don't trigger Github Actions CI builds after editing a PR's opening post
2021-02-05 09:25:27 +08:00
PriitUring
e53634ecef
NSIS: Add Estonian translation
...
This file was previously not translated.
PR #14331 .
2021-02-04 12:35:52 +03:00
Chocobo1
03e7019182
Simplify CI script directives
2021-02-04 16:15:57 +08:00
Chocobo1
82b0bc63a3
Don't trigger Github Actions CI builds after editing a PR's opening post
...
After dropping "edited" keyword, it is the same as the default.
2021-02-04 16:14:10 +08:00
Mike Tzou
04275e7d5d
Merge pull request #14318 from Chocobo1/sorting
...
Reuse existing code for sorting
2021-02-03 12:52:35 +08:00
Mike Tzou
7a471ea6b2
Merge pull request #14311 from zzandland/remove-hungarian-translator
...
Update translator tab on About
2021-02-02 12:11:08 +08:00
Chocobo1
45874fa333
Reuse existing code for sorting
...
This makes the behavior of sorting by TR_SEED_DATE consistent.
2021-02-01 13:51:04 +08:00
Si Yong Kim
74a5c6e745
Add hyperlink to Transifex on translator list
...
Closes #12609
2021-01-30 15:45:13 -08:00
Si Yong Kim
cfafe90fe0
Remove Hungarian translator email
2021-01-29 08:44:47 -08:00
dyumin
12d396ffc5
Treat errored torrents as finished
2021-01-29 12:36:25 +03:00
Mike Tzou
dc39b9e643
Merge pull request #14274 from Chocobo1/updater
...
Improve behavior when using ProgramUpdater class
2021-01-29 11:37:32 +08:00
Chocobo1
e6a8c02745
Prolong checking interval for program updates
2021-01-28 16:52:04 +08:00
Chocobo1
88d695f7af
Improve behavior when using ProgramUpdater class
...
This is mainly to avoid involving of `sender()` function.
2021-01-28 16:52:04 +08:00
Vladimir Golovnev (Glassez)
b673e0c219
CI: Use custom vcpkg libtorrent port
2021-01-28 11:47:08 +03:00
Chocobo1
5c819f7242
Revise version comparison
2021-01-27 11:42:06 +08:00
Chocobo1
40bd2039d4
Clean up coding style
2021-01-27 11:42:04 +08:00
Mike Tzou
53f29613c2
Merge pull request #14292 from jagannatharjun/fix-double-click
...
Disable expand on double click in TorrentContentTreeView
2021-01-26 12:14:55 +08:00
jagannatharjun
3371709472
Disable expand on double click in TorrentContentTreeView
...
We hook our own actions on double click. Fixes #14269
2021-01-25 13:35:22 +05:30
Vladimir Golovnev
50c009265e
Merge pull request #14275 from glassez/webapi-version
...
Bump WebAPI version
2021-01-24 12:23:05 +03:00
Alex
e169c0ce5e
Update Portuguese BR NSIS translation ( #12376 )
2021-01-24 12:10:47 +08:00
slrslr
f04d4b10e4
Translating new phrases ( #12318 )
...
* Update Czech NSIS translation
Co-authored-by: slrslr <czautohits@gmail.com >
2021-01-24 12:07:40 +08:00
jagannatharjun
f3e4338efc
Add a 3-Hour graph
2021-01-23 18:30:39 +05:30
jagannatharjun
c8979a6a49
Make SpeedPlotView averager time aware
...
Previously SpeedPlotView assumed speed is updated per second but the
default value was 1500ms and that can be further changed by the
user, this caused a lot of duplicate data in the calculation of the
graph points. Now Averager averages based on the target duration, resolution
and also takes into account when actually data has arrived.
Also improved resolution of 6-hour graph, previously it was same as 12-hour graph
2021-01-23 18:30:39 +05:30
Vladimir Golovnev (Glassez)
5b495e2f51
Bump WebAPI version
2021-01-23 13:55:09 +03:00
Mike Tzou
42637a642b
Merge pull request #14256 from Chocobo1/tr
...
Don't let "program update" dialog steal focus
2021-01-22 11:47:43 +08:00
Vladimir Golovnev
2375e7c100
Merge pull request #14257 from an0n666/Validate-HTTPS-Tracker
...
Validate HTTPS Tracker Certificate by default
2021-01-21 14:54:28 +03:00
Chocobo1
ae1b852821
Enlarge "speed limit" icon slightly
2021-01-21 12:22:15 +08:00
Chocobo1
44e4dd3700
Don't let "program update" dialog steal focus
...
And also avoid creating an unnecessary event loop.
Closes #14250 .
2021-01-21 12:22:08 +08:00
an0n666
24d7d599f1
Validate HTTPS Tracker Certificate by default
2021-01-20 13:33:10 +06:00
Chocobo1
d85a41ad75
Disable translation of program name
2021-01-20 11:30:33 +08:00
Mike Tzou
478ddfe102
Merge pull request #14242 from xavier2k6/Change-qBittorrent-Updater-window-title
...
Change title of "version update" dialog box
2021-01-20 11:21:40 +08:00
Mike Tzou
198f832c3d
Merge pull request #14237 from crackwitz/master
...
Allow tab to escape the text box in "Edit trackers" dialog
2021-01-20 11:17:28 +08:00
Mike Tzou
f0b78ffc04
Merge pull request #14233 from Chocobo1/menu
...
Add ability to prioritize selected items by shown file order
2021-01-20 11:15:52 +08:00
Vladimir Golovnev
a445311705
Merge pull request #14240 from glassez/drop-ext
...
Drop extension from generated content folder name
2021-01-19 14:59:40 +03:00
Christoph Rackwitz
1fe1fa9eac
Allow tab to escape the text box in "Edit trackers" dialog
2021-01-19 12:44:27 +01:00
Chocobo1
6258652c7b
Remove redundant variable declarations
2021-01-19 12:16:10 +08:00
Chocobo1
28d31b9d5b
Add ability to prioritize selected items by shown file order
...
Closes #2834 .
2021-01-19 12:15:48 +08:00
xavier2k6
75426cc498
Change qBittorrent Updater window title
2021-01-18 14:01:13 +00:00
Vladimir Golovnev (Glassez)
ae29e8bbab
Drop extension from generated content folder name
...
Try to detect whether generated content folder name contains extension
and drop it to avoid possible conflicts between file/folder names.
2021-01-18 10:37:19 +03:00
Mike Tzou
2b9c7e04a4
Merge pull request #14229 from Chocobo1/ext
...
Improve detection of file extension string
2021-01-18 12:43:54 +08:00
sledgehammer999
d1aba56096
Sync translations from Transifex and run lupdate
2021-01-17 23:20:45 +02:00
Chocobo1
3985d58d3c
Move menu actions out of .ui files
...
This is to move related code together.
2021-01-17 14:47:55 +08:00
Chocobo1
1479b61214
Simplify code for checking free disk space
...
`QStorageInfo::bytesAvailable()` is guaranteed to return `-1` for an
invalid path.
https://doc.qt.io/qt-5/qstorageinfo.html#bytesAvailable
2021-01-17 11:51:33 +08:00
Chocobo1
15a249eb54
Improve detection of file extension string
2021-01-17 00:10:18 +08:00
Vladimir Golovnev
08b3d6bbb0
Merge pull request #14210 from glassez/fix-webui
...
WebUI: Correctly represent torrent content structure
2021-01-13 20:37:25 +03:00
Vladimir Golovnev (Glassez)
710c5e2c31
WebUI: Correctly represent torrent content structure
2021-01-12 16:13:48 +03:00
Mike Tzou
17fa615bd3
Merge pull request #14198 from Chocobo1/search
...
Add README.md to searchengine folder
2021-01-12 13:08:58 +08:00
Chocobo1
6bfed97710
Add README.md to searchengine folder
2021-01-11 15:11:36 +08:00
Vladimir Golovnev (Glassez)
f9e286123f
Raise minimum libtorrent version to 1.2.12
2021-01-10 14:38:58 +03:00
sledgehammer999
613fd1bcf0
Merge pull request #14162 from Chocobo1/flags
...
Disable compiler flags
2021-01-09 14:08:55 +02:00
Chocobo1
52ce52d466
Unify "github actions" artifacts naming scheme
2021-01-09 12:59:08 +08:00
Chocobo1
cede5ac9d2
Migrate away from deprecated Qt functions
...
`QString QDateTime::toString(Qt::DateFormat format = Qt::TextDate)` will
be removed in Qt6.
2021-01-09 12:59:08 +08:00
Chocobo1
89559eae2b
Disable clang "range loop analysis" compiler warning
...
See: https://github.com/qbittorrent/qBittorrent/pull/13915#issuecomment-739449084
2021-01-09 12:59:07 +08:00
Mike Tzou
d7fb2e6403
Merge pull request #14176 from Chocobo1/pack_src_2
...
Add script for generating project tarball
2021-01-09 12:51:46 +08:00
Vladimir Golovnev
e3119b457c
Merge pull request #14179 from lbilli/patch-1
...
On Linux use legacy 'data' directory only as a fallback
2021-01-08 22:15:34 +03:00
sledgehammer999
ae27a5b7b7
Merge pull request #14171 from sledgehammer999/copyright_attribution
...
Correct copyright attribution
2021-01-07 18:37:43 +02:00
Chocobo1
302cb27e98
Add script for generating project tarball
2021-01-07 23:31:05 +08:00
lbilli
2d3481b9a9
On Linux use legacy 'data' directory only as a fallback
2021-01-07 10:04:08 -05:00
sledgehammer999
9b67e988db
Correct copyright attribution
...
These files were created and edited in their entirety in commit 8db4bde15d
As far as I can tell they were almost entirety rewritten from their original state.
The old copyright attribution is restored and the new author is added too.
2021-01-07 13:39:15 +02:00
Vladimir Golovnev
15f1fdddd9
Merge pull request #14166 from glassez/cleanup-class-names
...
Remove redundant suffix from TorrentHandle class name
2021-01-07 14:34:01 +03:00
Chocobo1
24fa9e32b0
Set source character sets to UTF-8
...
This suppress warning C4819.
https://docs.microsoft.com/en-us/cpp/build/reference/utf-8-set-source-and-executable-character-sets-to-utf-8?view=msvc-160
2021-01-07 11:51:24 +08:00
Vladimir Golovnev (Glassez)
0b4fef19f6
Remove redundant suffix from TorrentHandle class
...
Originally, it was just a wrapper for libtorrent::torrent_handle class, so it mimicked its name.
It was then transformed into a more complex aggregate, but the name was retained (just by inertia).
Unlike libtorrent::torrent_handle class in whose name "handle" means the pattern used,
it does not matter for qBittorrent classes and just eats up space in the source code.
2021-01-06 16:28:17 +03:00
Vladimir Golovnev
35731b96dc
Merge pull request #14157 from jagannatharjun/content-search
...
Correctly set items flags in TorrentContentModel
2021-01-06 14:19:29 +03:00
Mike Tzou
b79a1b5755
Merge pull request #14145 from Chocobo1/define
...
Generate version header when configuring project
2021-01-06 11:38:55 +08:00
sledgehammer999
1561f6f09f
Merge pull request #14156 from sledgehammer999/copyright_2021
...
Bump copyright year
2021-01-06 01:40:46 +02:00
jagannatharjun
36d7fce909
Correctly set items flags in TorrentContentModel
...
Only set editable flag on item's where editing is handled in the delegate
closes #13515
2021-01-05 23:04:27 +05:30
sledgehammer999
b8d6058b28
Bump copyright year
2021-01-05 14:27:09 +02:00
Vladimir Golovnev
8771e1a339
Merge pull request #14138 from glassez/add-torrent
...
Use single parameter to accept torrent source
2021-01-05 09:17:08 +03:00
Vladimir Golovnev
7b657c942d
Merge pull request #14137 from glassez/std-optional
...
Use std::optional for optional parameters
2021-01-05 09:16:20 +03:00
Vladimir Golovnev (Glassez)
531ae501ad
Use std::optional<bool> instead of custom TriStateBool
2021-01-04 23:10:24 +03:00
Vladimir Golovnev (Glassez)
d0cac421bb
Change parseBool() to return optional bool value
2021-01-04 23:10:24 +03:00
Vladimir Golovnev (Glassez)
4429a16ca8
Use std::optional instead of boost::optional
2021-01-04 23:10:03 +03:00
Chocobo1
c669401767
Generate version header when configuring project
...
The basic idea is we create a version header template at
"src/base/version.h.in" and the build systems are expected to replace
strings that are enclosed with @ symbols and generate
"src/base/version.h" for other source files to consume/include.
2021-01-04 22:28:41 +08:00
Vladimir Golovnev (Glassez)
4d349f5f81
QMake: Raise minimal macOS target version
2021-01-04 15:07:23 +03:00
Vladimir Golovnev
08e0349ca3
Merge pull request #14140 from glassez/namespace
...
Use nested namespaces definition syntax
2021-01-04 08:12:43 +03:00
Vladimir Golovnev (Glassez)
ee5fe424e8
Use single parameter to accept torrent source
2021-01-03 17:01:20 +03:00
Vladimir Golovnev (Glassez)
552ff0489d
Use nested namespaces definition syntax
2021-01-03 16:53:24 +03:00
Mike Tzou
04a9ce6e81
Merge pull request #14074 from Chocobo1/dialog_size
...
Remember dialog sizes
2021-01-03 13:20:21 +08:00
Mike Tzou
586bdc0567
Merge pull request #14121 from Chocobo1/settingsStorage
...
Improve load data behavior of SettingsStorage class
2021-01-03 13:19:53 +08:00
Vladimir Golovnev
4bb3d13921
Merge pull request #14123 from glassez/restart-missing-files
...
Don't re-check "missing files" torrents when re-start
2021-01-02 15:20:50 +03:00
Vladimir Golovnev
7c02630186
Merge pull request #14116 from glassez/drop-move-notify
...
Drop notification about move storage finished
2021-01-02 10:34:09 +03:00
Chocobo1
ff63ad8b97
Don't use deprecated locale name
2021-01-02 13:25:23 +08:00
Chocobo1
bdf1fb6db8
Revise store/load state operations of Options Dialog
2021-01-02 13:25:23 +08:00
Mike Tzou
d21fdb7546
Merge pull request #14118 from Chocobo1/fromstring
...
Move parsing of TriStateBool to a static class function
2021-01-02 12:58:00 +08:00
Chocobo1
be5af2796d
Revise SettingsStorage store/load value interface
2021-01-02 12:48:26 +08:00
Chocobo1
b1020c599f
Improve load data behavior of SettingsStorage class
...
Previously it only handle the case of failed lookup, now it discard
invalid values when deserializing the database from disk.
Also checks whether the data is convertible to the intended type.
2021-01-01 22:57:50 +08:00
Vladimir Golovnev (Glassez)
b2199202ab
Reload "missing files" torrent instead of re-checking
2021-01-01 16:16:52 +03:00
Vladimir Golovnev (Glassez)
06105072f9
Extract torrent reloading logic into separate method
2021-01-01 16:08:01 +03:00
Vladimir Golovnev
b676ca7d96
Merge pull request #14108 from thalieht/webui-options-content-layout
...
Update "Keep top-level folder" in WebUI options
2021-01-01 15:32:49 +03:00
sledgehammer999
90f355cfaf
Merge pull request #14094 from Chocobo1/autotools
...
Migrate away from deprecated `AC_OUTPUT` macro
2021-01-01 13:42:14 +02:00
Chocobo1
757ab3dc92
Remember dialog sizes
...
This applies to "About Dialog", "Ban List Options Dialog", "Download From URL Dialog", "IP Subnet
Whitelist Options Dialog", "Search Plugin Select Dialog", "Search Plugin Source Dialog",
"Statistics Dialog", "Speed Limit Dialog" and "Torrent Options Dialog".
Also unifies storing the dialog size under the key "Size".
2021-01-01 16:03:32 +08:00
Chocobo1
e022c371ff
Move parsing of TriStateBool to a static class function
2021-01-01 12:59:48 +08:00
Chocobo1
50a2cc9917
Exclude configure script for "trailing newlines" checking
2021-01-01 12:58:23 +08:00
Chocobo1
5209b0172b
Migrate away from deprecated AC_OUTPUT
macro
...
The `AC_OUTPUT` has two versions, the deprecated one takes arguments and the other not. Check the
following link for equivalent replacement:
https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.70/html_node/Obsolete-Macros.html#Obsolete-Macros
Also regenerate the configure script with the latest Autoconf 2.70.
2021-01-01 12:58:19 +08:00
Mike Tzou
cfb55d9d77
Merge pull request #14005 from Chocobo1/cpp17
...
Bump project requirement to C++17
2021-01-01 12:49:16 +08:00
Vladimir Golovnev (Glassez)
df2bbe129d
Drop notification about move storage failed
2020-12-31 21:53:43 +03:00
Vladimir Golovnev (Glassez)
f7cae610a4
Drop notification about move storage finished
2020-12-31 21:49:18 +03:00
thalieht
bb698d682c
Update "Keep top-level folder" in WebUI options
2020-12-31 13:06:46 +02:00
Chocobo1
5bd6ff2285
Migrate away from deprecated std::iterator
class
2020-12-31 13:28:48 +08:00
Chocobo1
e6cf186c23
Use function-pointer based signal-slot connection
2020-12-31 13:28:48 +08:00
Chocobo1
e8b5508463
Remove unused define
2020-12-31 13:28:48 +08:00
Chocobo1
d70b893852
Bump project requirement to C++17
2020-12-31 13:28:48 +08:00
Mike Tzou
a579b4a519
Merge pull request #14085 from Chocobo1/settingvalue
...
Add a thin layer around SettingsStorage class
2020-12-31 10:46:32 +08:00
sledgehammer999
fffa2f097e
Merge pull request #14069 from sledgehammer999/new_languages
...
Add new languages
2020-12-30 23:43:43 +02:00
Vladimir Golovnev
cabb2198b0
Merge pull request #14097 from glassez/fix-webui
...
Don't call non-existent elements (part 2)
2020-12-30 22:22:41 +03:00
Vladimir Golovnev (Glassez)
3af2168b02
Don't call non-existent elements
...
Fixed a regression where the script tries to access elements that no longer
exist on the page, because they were replaced with others by a previous change.
2020-12-30 16:45:49 +03:00
Vladimir Golovnev
f1337524f6
Merge pull request #14089 from glassez/fix-webui
...
Don't call non-existent elements
2020-12-29 22:30:00 +03:00
Vladimir Golovnev
348109a1f9
Merge pull request #13995 from glassez/rename-files
...
Improve content file/folder names handling
2020-12-29 22:27:58 +03:00
Chocobo1
0b0597be0c
Add a thin layer around SettingsStorage class
...
This new layer would be handy for saving GUI widget states as they don't
need the value cached and they store/load rarely.
2020-12-30 00:10:22 +08:00
Vladimir Golovnev (Glassez)
690dbc4725
Don't call non-existent elements
...
Fixed a regression where the script tries to access elements that no longer
exist on the page, because they were replaced with others by a previous change.
2020-12-29 14:31:37 +03:00
Mike Tzou
cc9b1ea8a1
Merge pull request #14073 from Chocobo1/locale
...
Capitalize locale names
2020-12-29 17:32:37 +08:00
sledgehammer999
ffebe82586
Add new languages
...
* Azerbaijani
* Estonian
2020-12-28 21:58:44 +02:00
Vladimir Golovnev (Glassez)
4453e7fcdd
Improve content file/folder names handling
...
Move files/folders renaming functions to core classes.
Query file/folder for renaming by its current path.
Add ability to rename content folders from WebAPI/WebUI.
2020-12-28 21:18:28 +03:00
Mike Tzou
60d65d8137
Merge pull request #13885 from thalieht/torrentOptionsDialog
...
Rework global speed limit dialog and introduce torrent options dialog
2020-12-28 11:34:38 +08:00
Chocobo1
c8eefe749f
Capitalize locale names
2020-12-28 11:25:25 +08:00
sledgehammer999
162421a59a
Sync translations from Transifex and run lupdate
2020-12-26 21:15:29 +02:00
Vladimir Golovnev (Glassez)
79048812e9
Fix folder name extraction functions
...
It should return empty string if there is no parent folder.
2020-12-26 14:47:06 +03:00
Vladimir Golovnev
70b242f190
Merge pull request #13955 from glassez/content-policy
...
Improve content root folder handling
2020-12-26 14:44:51 +03:00
thalieht
8db4bde15d
Group several torrent options into one dialog
...
Speed limits, share limits and the new options to disable DHT, PeX, LSD per torrent
2020-12-25 20:37:43 +02:00
thalieht
fbb8f0cbf5
Save fastresume when setting torrent speed limits
2020-12-25 20:37:43 +02:00
thalieht
aafa12eb6e
Increase maximum global speed limits from ~1 GiB/s to ~2 GiB/s
...
Closer to the INT_MAX limit of ~2 Billion when multiplied by 1024 for libtorrent
2020-12-25 20:37:43 +02:00
thalieht
76f285f19c
Convert existing speed dialog to global + alt global limits only
2020-12-25 20:37:43 +02:00
Mike Tzou
e1073de36f
Merge pull request #14039 from Chocobo1/stats
...
Don't use removed stat metric in libtorrent 2.0
2020-12-25 17:55:56 +08:00
Mike Tzou
ae48e49cba
Merge pull request #14042 from Chocobo1/array
...
Fix wrong JSON type returned
2020-12-25 17:55:28 +08:00
Chocobo1
4180db601d
Use a helper function to look up stat indexes
2020-12-24 23:20:21 +08:00
Chocobo1
423983e023
Fix wrong JSON type returned
...
Fix up 78638a15be
.
Closes #14041 .
2020-12-24 23:15:36 +08:00
Chocobo1
90a1ea4281
Don't use removed stat metric in libtorrent 2.0
...
For now, the metric is not entirely removed due to WebAPI still needs to
access it.
2020-12-24 12:04:14 +08:00
Chocobo1
0ebd864db9
Initialize stat indices to -1
...
When the index is initialized it will be set to a number >= 0, so we use
-1 to denote its uninitialized status.
2020-12-24 11:30:48 +08:00
Mike Tzou
02e85913da
Merge pull request #14035 from Chocobo1/autotools
...
Don't use default CFLAGS, CXXFLAGS from autotools
2020-12-24 10:24:35 +08:00
Vladimir Golovnev (Glassez)
1d5dc283fe
Allow to add root folder to torrent content
2020-12-23 13:07:33 +03:00
Chocobo1
769f0a78d4
Don't use default CFLAGS, CXXFLAGS from autotools
...
Before this commit, autotools will inject `-g -O2` to debug build
(`--enable-debug=yes`) and rendering the result binary useless. This
commit fixes it.
https://www.gnu.org/savannah-checkouts/gnu/autoconf/manual/autoconf-2.70/html_node/C_002b_002b-Compiler.html
Closes #14032 .
2020-12-23 15:28:46 +08:00
Vladimir Golovnev
4029f86c60
Merge pull request #14025 from glassez/fix-move
...
Fix bug of "move storage job" can be performed multiple times
2020-12-22 19:17:35 +03:00
Vladimir Golovnev (Glassez)
f6d1fea9b7
Fix bug of "move storage job" can be performed multiple times
2020-12-21 20:11:01 +03:00
Mike Tzou
fa6524d377
Merge pull request #13969 from Chocobo1/cmp
...
Migrate away from deprecated QVariant comparison operators (part 2)
2020-12-19 11:52:22 +08:00
Mike Tzou
c56cb8adb6
Merge pull request #13979 from alessandrosimonelli/patch-1
...
NSIS: Fixed italian.nsi after 4.3.0.1 update
2020-12-19 11:50:55 +08:00
Chocobo1
78638a15be
Migrate away from deprecated QVariant comparison operators
...
Fortunately, serializing to JSON limits the data types to a very small
subset and thus we are able to implement the comparison without much
hassle.
Fix up cba8d83b21
.
2020-12-18 13:19:15 +08:00
Vladimir Golovnev (Glassez)
d4a51979bb
Extract enum serialization/parsing functions
2020-12-15 10:18:39 +03:00
Vladimir Golovnev (Glassez)
77555cd5c2
Improve torrent name handling
2020-12-15 10:18:39 +03:00
Vladimir Golovnev
7c48ba2f19
Merge pull request #13975 from FranciscoPombal/pragmatism_v2
...
Update coding guidelines policy for include guards
2020-12-15 06:29:20 +03:00
Alessandro Simonelli
4dbe0a0d0e
NSIS: Fixed italian.nsi after 4.3.0.1 update
...
Merged my previous fixes (discussed in #13607 ) with the suggestions by @glassez (#13615 ).
2020-12-15 00:16:07 +01:00
FranciscoPombal
ca92a74a39
Update coding guidelines policy for include guards
2020-12-14 12:24:06 +00:00
Vladimir Golovnev
c01d28a471
Merge pull request #13948 from FranciscoPombal/pragmatism
...
Use #pragma once instead of include guards
2020-12-14 13:51:02 +03:00
Mike Tzou
98ff09931d
Merge pull request #13886 from Chocobo1/options
...
Add support for `allow_idna` option
2020-12-14 12:55:10 +08:00
Chocobo1
20ae89c2a1
Add support for allow_idna
option
...
Upstream PR: https://github.com/arvidn/libtorrent/pull/5316
2020-12-13 12:12:24 +08:00
Chocobo1
0baa23f553
Update "HTTPS tracker validation" enablement conditional
...
https://github.com/arvidn/libtorrent/pull/5313
2020-12-13 12:12:24 +08:00
Mike Tzou
10fbb6a2a8
Merge pull request #13953 from Chocobo1/cmp
...
Migrate away from deprecated QVariant comparison operators
2020-12-13 11:49:52 +08:00
FranciscoPombal
6152b83405
Use #pragma once instead of include guards
2020-12-12 19:41:32 +00:00
Vladimir Golovnev
aed25ff87c
Merge pull request #13954 from glassez/fix-stopped
...
Fix bug of torrents don't save "stopped" state
2020-12-12 17:31:08 +03:00
Vladimir Golovnev (Glassez)
5f94238d23
Fix bug of torrents don't save "stopped" state
2020-12-11 17:33:37 +03:00
Chocobo1
4d1d5d6b20
Revise Utils::Version comparison operators
2020-12-11 12:50:12 +08:00
Chocobo1
5ba6a5fca1
Add operator< for InfoHash class
2020-12-10 20:11:15 +08:00
Chocobo1
cba8d83b21
Migrate away from deprecated QVariant comparison operators
...
Another idea would be manually define a custom comparison function for
QVariant. However, having the function would be excessive due to its
limited usage count, also note that we are already casting
various QVariant to its underlying type in existing code.
2020-12-10 20:11:13 +08:00
Mike Tzou
aaeffe3846
Merge pull request #13937 from Chocobo1/qt6
...
Use Qt provided forward declaration header
2020-12-10 19:57:45 +08:00
Vladimir Golovnev
6881e8fbe3
Merge pull request #13923 from FranciscoPombal/musl
...
CMake: detect required header for STACKTRACE feature
2020-12-10 14:11:19 +03:00
FranciscoPombal
137e455f03
CMake: detect required header for STACKTRACE feature
...
musl does not provide execinfo.h, so our current stacktrace-related
code cannot be used with it.
2020-12-09 18:55:59 +00:00
Chocobo1
ff3d0346eb
Fix coding style
2020-12-09 22:50:01 +08:00
Chocobo1
498da509db
Use Qt provided forward declaration header
2020-12-09 18:21:02 +08:00
Mike Tzou
d484c0e7ce
Merge pull request #13912 from Chocobo1/infohash
...
Use the correct type when referring to info hash
2020-12-08 20:53:12 +08:00
Vladimir Golovnev
5c1c561d7d
Merge pull request #13905 from glassez/handle-metadata
...
Fix received metadata handling
2020-12-07 08:39:06 +03:00
Chocobo1
9f0429ca6f
Use the correct type when referring to info hash
2020-12-06 22:04:28 +08:00
Vladimir Golovnev
3485ad39d9
Merge pull request #13511 from FranciscoPombal/bump_versions
...
Bump minimum dependency versions
2020-12-05 13:27:21 +03:00
Vladimir Golovnev
d899923876
Merge pull request #13910 from FranciscoPombal/hotfix_13894
...
Fix method invocation on Qt < 5.10
2020-12-05 10:33:07 +03:00
Vladimir Golovnev (Glassez)
4e04cd27c9
Fix received metadata handling
2020-12-05 10:03:27 +03:00
FranciscoPombal
7e4b428a3e
Fix method invocation on Qt < 5.10
...
Fixup 0c3fe54b0b
2020-12-04 22:46:49 +00:00
FranciscoPombal
9f65a318da
Bump dependency versions in CI
...
- Bump vcpkg version in GitHub Actions CI
- Bump libtorrent version in Travis CI
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2020-12-04 16:27:17 +00:00
Vladimir Golovnev
2f6ed86c78
Drop support for building with libtorrent < 1.2.11
...
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru >
2020-12-04 14:30:12 +00:00
FranciscoPombal
6590915b15
Update minimum depedency versions
2020-12-04 12:23:22 +00:00
Vladimir Golovnev
0c3fe54b0b
Merge pull request #13894 from glassez/find-existing
...
Find existing files in separate thread
2020-12-04 06:34:53 +03:00
Vladimir Golovnev (Glassez)
a93b675cb8
Search for existing files in separate thread
2020-12-03 07:58:34 +03:00
Mike Tzou
0f2df23800
Merge pull request #13893 from Chocobo1/input_length
...
Remove unnecessary restriction on input length
2020-12-02 23:13:06 +08:00
Mike Tzou
e4e0a24416
Merge pull request #13895 from Chocobo1/improve
...
Improve advanced settings
2020-12-02 20:26:37 +08:00
Chocobo1
6aa5abf298
Update URL to libtorrent settings
2020-12-02 13:50:41 +08:00
Chocobo1
bd672c4c4e
Move "embedded tracker" options to qbt section
2020-12-02 13:50:41 +08:00
Chocobo1
8d768bda31
Add links to libtorrent documentation
2020-12-02 13:50:40 +08:00
Chocobo1
5110994f81
Lift upper limit of "Max concurrent HTTP announces" option
...
Closes #13800 .
2020-12-02 13:47:47 +08:00
Chocobo1
83d17b5c0e
Remove unnecessary restriction on input length
...
Closes #13884 .
2020-12-02 11:51:41 +08:00
Vladimir Golovnev
e6c174c33b
Merge pull request #13882 from jesec/master
...
WebAPI: allow to attach tags while adding torrents
2020-12-01 15:38:48 +03:00
Vladimir Golovnev (Glassez)
9497300a4a
Don't rewrite TorrentInfo instance if it's valid
2020-12-01 08:15:26 +03:00
Vladimir Golovnev (Glassez)
acab62e345
Properly handle "Append extension" option changing
2020-12-01 08:15:25 +03:00
Vladimir Golovnev (Glassez)
0e8feed2f2
Clean up metadata downloading code
2020-12-01 08:15:12 +03:00
sledgehammer999
82716d8014
Merge pull request #13871 from sledgehammer999/magnet_delete
...
Don't try to remove folders for a torrent without metadata
2020-12-01 02:14:51 +02:00
sledgehammer999
af262e9a14
Merge pull request #13870 from sledgehammer999/fix_magnet_queue
...
Fix status of torrents without metadata
2020-12-01 02:14:32 +02:00
Jesse Chan
d0d5af8c66
WebAPI: bump version to 2.6.2
2020-12-01 01:43:03 +08:00
Jesse Chan
86f9b1f6db
WebAPI: allow to attach tags while adding torrents
2020-11-30 20:54:42 +08:00
Mike Tzou
c4485d0af7
Merge pull request #13849 from Chocobo1/travisci
...
Add libtorrent 2.0 to TravisCI script
2020-11-30 11:20:25 +08:00
Mike Tzou
7c5d0a0e00
Merge pull request #13876 from Chocobo1/fix
...
Fix availability value
2020-11-30 11:20:02 +08:00
Mike Tzou
5f014a2056
Merge pull request #13706 from FranciscoPombal/translation_whitespace_fix
...
Detect .ts file issues with file health workflow
2020-11-30 00:10:59 +08:00
Chocobo1
eaaacd71a8
Simplify the calculation of speed graph scale
2020-11-30 00:03:47 +08:00
Chocobo1
75cead9266
Avoid potential rounding to integer issues
2020-11-30 00:03:46 +08:00
FranciscoPombal
d79c5824b8
Detect .ts file issues with file health workflow
...
Also adjust newlines to improve output
2020-11-29 15:19:27 +00:00
Chocobo1
4381739b6d
Fix coding style
2020-11-29 20:13:58 +08:00
Chocobo1
8f2cdcef0e
Fix availability value
...
Closes #13869 .
Fix up 02f19bfbee
.
2020-11-29 19:52:51 +08:00
Chocobo1
990cc41e80
Add libtorrent 2.0 to TravisCI script
...
Also bumping to ubuntu focal as libtorrent requires boost >= 1.66.
2020-11-29 12:33:58 +08:00
sledgehammer999
9721acbf63
Don't try to remove folders for a torrent without metadata
2020-11-29 02:41:47 +02:00
sledgehammer999
be5cb1683b
Fix status of torrents without metadata
2020-11-29 00:32:53 +02:00
Mike Tzou
a4e7e546ff
Merge pull request #13848 from Chocobo1/travisci_macos
...
Update to use latest macOS image for TravisCI
2020-11-28 01:25:23 +08:00
Mike Tzou
4259b4571c
Merge pull request #13836 from Chocobo1/webui
...
Add ability to use 'shift+delete' to delete torrents in WebUI
2020-11-28 01:02:41 +08:00
Chocobo1
2414a79578
Update to use latest macOS image for TravisCI
...
The default version is so outdated that it needs to rebuild many
dependencies. Now we bump it to the latest version so that it can use
prebuilt packages.
2020-11-27 10:44:42 +08:00
Mike Tzou
84623ac1f6
Merge pull request #13820 from Chocobo1/sorting
...
Fix wrong data used for comparison
2020-11-27 10:20:02 +08:00
Chocobo1
d46343fb9c
Add ability to use 'shift+delete' to delete torrents in WebUI
...
Closes #13827 .
2020-11-26 15:52:47 +08:00
Vladimir Golovnev
5c788a6130
Merge pull request #13822 from adem4ik/patch-4
...
NSIS: Update Russian translation
2020-11-26 07:10:15 +03:00
Andrei Stepanov
281cf584ec
NSIS: Update Russian translation
2020-11-25 22:25:36 +04:00
Chocobo1
13c4581c86
Fix wrong data used for comparison
...
In torrent transfer list we should use underlying data for sorting, not
displayed values.
Closes #13818 .
2020-11-26 01:35:57 +08:00
sledgehammer999
9c938b91b7
Sync translations from Transifex and run lupdate
2020-11-24 16:58:42 +02:00
Mike Tzou
f71f7a0b63
Merge pull request #13787 from Chocobo1/actions
...
Pin github actions scripts to major versions
2020-11-23 14:24:58 +08:00
Mike Tzou
b8c03a1905
Merge pull request #13788 from RockyTDR/master
...
Fix confusion in date format description
2020-11-23 11:00:18 +08:00
Thomas De Rocker
9515b40ca5
Fix confusion in date format description ( #1 )
...
* Update automatedrssdownloader.ui
* Update rssDownloader.html (#2 )
2020-11-21 10:09:47 +01:00
Chocobo1
df3d3db776
Pin github actions scripts to major versions
...
> Using the specific major action version allows you to receive critical
> fixes and security patches while still maintaining compatibility. It
> also assures that your workflow should still work.
https://docs.github.com/en/free-pro-team@latest/actions/reference/workflow-syntax-for-github-actions#jobsjob_idstepsuses
2020-11-21 15:41:32 +08:00
Vladimir Golovnev
e15df81351
Merge pull request #13758 from glassez/coding-style
...
Improve coding style
2020-11-18 08:18:56 +03:00
Mike Tzou
77ec423510
Merge pull request #13766 from RockyTDR/patch-2
...
Update dutch.nsi
2020-11-18 10:37:33 +08:00
Vladimir Golovnev (Glassez)
c41df9ffbd
Improve coding style
2020-11-17 21:02:37 +03:00
sledgehammer999
acad35c5bc
Merge pull request #13634 from sledgehammer999/add_latgalian_language
...
New translation: Latgalian
2020-11-17 15:24:32 +02:00
Thomas De Rocker
6b3fe68a17
Update dutch.nsi
...
As referenced in https://github.com/qbittorrent/qBittorrent/pull/13615
and suggested by @glassez
- Use the word qBittorrent when it is mentioned for the first time within a string.
- If the string contains other references to qBittorrent, then use it (rather than repeating qBittorrent).
Line 24 is the updated Dutch translation for the recently updated English source string (may 2020)
2020-11-17 09:23:04 +01:00
sledgehammer999
6ec07d744e
Add Latgalian translation
...
Closes #12415
2020-11-16 20:26:54 +02:00
sledgehammer999
989fdb5895
Update .desktop file translations
2020-11-16 20:26:35 +02:00
Mike Tzou
e60b91b5e2
Merge pull request #13738 from Chocobo1/fix
...
Don't use deprecated torrent state "allocating"
2020-11-12 18:19:25 +08:00
Chocobo1
0be2567d97
Don't use deprecated torrent state "allocating"
...
Closes #13737 .
2020-11-12 00:17:42 +08:00
Vladimir Golovnev
61770ad69e
Merge pull request #13123 from glassez/handle-paused
...
Handle torrent "paused" state at application level
2020-11-04 21:17:17 +03:00
Vladimir Golovnev (Glassez)
85bd0feee0
Handle torrent "paused" state at application level
2020-11-02 10:09:14 +03:00
Mike Tzou
b249216db6
Merge pull request #13659 from FranciscoPombal/whitespacev2
...
File health: trailing newlines, whitespace, etc fixes and GitHub Actions workflow
2020-11-02 11:33:21 +08:00
Mike Tzou
2a2a80b0bf
Merge pull request #13696 from Chocobo1/warnings
...
Suppress compiler warnings
2020-11-02 10:31:41 +08:00
Chocobo1
7ddd5e9bc3
Remove unused function
2020-11-01 14:25:33 +08:00
Chocobo1
6b4a4517ec
Remove redundant semicolon
2020-11-01 14:24:49 +08:00
Mike Tzou
7c1c91ac43
Merge pull request #13689 from Chocobo1/paste
...
Allow adding torrents using "Paste" key sequence
2020-11-01 11:30:27 +08:00
Mike Tzou
6b56768e9c
Merge pull request #13683 from NotTsunami/mingw
...
Fix mingw64 build error
2020-10-31 20:37:16 +08:00
Chocobo1
b2b7d02c01
Allow adding torrents using "Paste" key sequence
...
Closes #13685 .
2020-10-31 14:07:04 +08:00
FranciscoPombal
8bb097fd10
Add GitHub Actions file health workflow
2020-10-30 21:32:36 +00:00
NotTsunami
a5f8f1f0f5
Fix mingw64 build error
...
mingw64 defines interface, so revert back to previous naming scheme
Fixes: 87864531ab
Closes #13649
2020-10-29 18:25:19 -04:00
Mike Tzou
424e2c76fa
Merge pull request #13668 from jagannatharjun/consistent
...
Improve consistency between transfer list and torrent content view
2020-10-29 10:20:28 +08:00
FranciscoPombal
41ae2bfb84
Make sure there are no empty files
2020-10-28 14:20:18 +00:00
FranciscoPombal
4bdf9eda41
Fix extra/missing trailing new lines in files
2020-10-28 14:20:18 +00:00
FranciscoPombal
ef1c7eec74
Fix trailing whitespace in multiple files
...
Also fix formatting of CODING_GUIDELINES.md
2020-10-28 14:20:11 +00:00
FranciscoPombal
87527fccc6
Encode files in UTF-8 without BOM
2020-10-28 14:15:31 +00:00
Mike Tzou
f23234d0df
Merge pull request #13667 from Chocobo1/webui
...
Remove outdated information
2020-10-28 21:08:39 +08:00
jagannatharjun
fdbc3a692f
Align integer data to right in torrent content view
2020-10-28 12:27:54 +05:30
Vladimir Golovnev
571aaea3e0
Merge pull request #13658 from glassez/recheck
...
Don't resume "paused" torrents when put into "checking" state by libtorrent
2020-10-28 08:45:35 +03:00
jagannatharjun
d0986297ca
Rename TR_PROGRESS header in TransferList
...
Closes #13665
2020-10-28 10:39:56 +05:30
Chocobo1
188e679ea3
Remove outdated information
2020-10-28 13:09:37 +08:00
Mike Tzou
4209a5699a
Merge pull request #13632 from jagannatharjun/progress-style
...
Allow progress bar styling from custom themes
2020-10-28 10:04:05 +08:00
Vladimir Golovnev (Glassez)
80ca7796ca
Fix torrent state calculation
2020-10-27 17:41:40 +03:00
jagannatharjun
02f19bfbee
Use ProgressbarDelegate for drawing progressbar in PropListDelegate
...
Also directly provide display data from model rather then generating it in delegate
2020-10-27 11:58:17 +05:30
jagannatharjun
49d5591f48
Use ProgressBarDelegate for drawing progressbar in TransferListView
2020-10-27 11:58:17 +05:30
jagannatharjun
816bc45707
Implement ProgressBarDelegate
2020-10-27 11:58:17 +05:30
Mike Tzou
73e9dce143
Merge pull request #13637 from Chocobo1/libt
...
Improve compatibility with libtorrent 2.0
2020-10-27 01:33:08 +08:00
Vladimir Golovnev (Glassez)
9f0edde12b
Don't resume "paused" torrents when checking by libtorrent
2020-10-26 11:08:22 +03:00
Mike Tzou
cf55b67cee
Merge pull request #13646 from jagannatharjun/content-crash
...
Fix crash when clicked outside the table of torrent content view
2020-10-26 12:38:11 +08:00
Mike Tzou
9ca415c665
Merge pull request #13636 from FranciscoPombal/clarify_protocol
...
Clarify protocol choice label
2020-10-26 12:26:28 +08:00
Mike Tzou
af029e6c3f
Merge pull request #13639 from FranciscoPombal/update_ci_actions
...
Update GitHub Actions CI actions versions
2020-10-26 12:26:07 +08:00
Mike Tzou
6d514c97f8
Merge pull request #13569 from brvphoenix/webui
...
Fix the issue that IPv6 address can't be banned
2020-10-26 12:15:54 +08:00
jagannatharjun
e812ac2c0b
Fix crash when clicked outside the table of torrent content view
...
Closes #13645
2020-10-25 23:39:48 +05:30
Chocobo1
480832318c
Add support for tracker scrape in libtorrent 2.0
2020-10-26 00:37:53 +08:00
Chocobo1
7a3e397949
Migrate away from deprecated functions in libtorrent 2.0
2020-10-26 00:37:53 +08:00
Chocobo1
c95e450b8d
Improve compatibility with libtorrent 2.0
...
In libtorrent 2.0, the `connection_type` was changed to a flag type and
hence it cannot be used in a switch statement directly. Also our use of
`connection_type` is limited so that a single equality comparison
would cover all of our use cases.
2020-10-26 00:36:59 +08:00
FranciscoPombal
b63a34110e
Update "GitHub Actions" CI actions versions
2020-10-25 11:53:48 +00:00
Vladimir Golovnev
0a2a71e83b
Merge pull request #13625 from FranciscoPombal/expose_content_path
...
Expose contentPath in WebAPI torrents/info
2020-10-25 13:08:56 +03:00
FranciscoPombal
831bf71ce6
Clarify protocol choice label
2020-10-25 00:11:57 +01:00
Mike Tzou
172eda5471
Merge pull request #13620 from Chocobo1/qhash
...
Move qHash helper for libtorrent types to its own file
2020-10-24 12:34:26 +08:00
FranciscoPombal
aa899f0693
Expose contentPath in WebAPI torrents/info
...
Bump WebAPI version to 2.6.1
2020-10-23 17:49:28 +01:00
Vladimir Golovnev
82602b51bf
Merge pull request #13614 from glassez/resumedata
...
Prevent resume data to be saved for removed torrent
2020-10-23 10:13:51 +03:00
Chocobo1
3971a12f0e
Remove redundant checking before remove
2020-10-23 12:58:57 +08:00
Chocobo1
70c4eb44fd
Fix class name
2020-10-23 12:58:11 +08:00
Mike Tzou
9ce54162c2
Merge pull request #13600 from thalieht/webuioption
...
Fix toggling advanced option in WebUI
2020-10-23 12:11:27 +08:00
Vladimir Golovnev (Glassez)
92c6fc04a8
Prevent resume data to be saved for removed torrent
2020-10-22 20:16:52 +03:00
Mike Tzou
46ebf9b7e5
Merge pull request #13587 from Chocobo1/webapi
...
Avoid settings being reset via WebAPI
2020-10-22 13:33:29 +08:00
brvphoenix
799ad0feff
Fix the issue that IPv6 address can't be banned
...
The ban action doesn't depend on ipfilter.
2020-10-21 18:21:07 -07:00
thalieht
1a56385cf9
Fix toggling advanced option in WebUI
...
option "Disallow connection to peers on privileged ports"
2020-10-22 01:34:11 +03:00
Chocobo1
71827fe4e6
Move qHash helper for libtorrent types to its own file
2020-10-22 03:12:48 +08:00
Chocobo1
8568f7a0fb
Avoid settings being reset via WebAPI
...
Closes #13585 .
2020-10-21 18:02:01 +08:00
Mike Tzou
39c61327b5
Merge pull request #13567 from Chocobo1/typo
...
Fix typos
2020-10-21 11:04:17 +08:00
Mike Tzou
81d2130b06
Merge pull request #13540 from bovirus/patch-1
...
NSIS: Update Italian translation
2020-10-20 20:00:02 +08:00
bovirus
536f5ff091
NSIS: Update Italian translation
2020-10-20 19:44:56 +08:00
Chocobo1
7e258bfe38
Fix typos
2020-10-20 18:56:30 +08:00
Mike Tzou
66f0e6a8f2
Merge pull request #13563 from adem4ik/patch-2
...
Fix typo in connection.cpp
2020-10-20 18:55:05 +08:00
Andrei Stepanov
04306a544f
Fix typo in connection.cpp
...
limiation -> limitation
2020-10-20 11:10:51 +04:00
Mike Tzou
e4fe3bfe35
Merge pull request #13534 from NotTsunami/patch-1
...
CMake: Bump version number
2020-10-20 12:47:28 +08:00
Mike Tzou
b636bf4b2a
Merge pull request #13537 from SeproDE/betterSanetizeRSS
...
Place WebUI RSS description in sandboxed iframe
2020-10-20 12:46:49 +08:00
Vladimir Golovnev
05c7796909
Merge pull request #13414 from NotTsunami/travis
...
Disallow CMake build failures on Travis
2020-10-19 09:30:03 +03:00
NotTsunami
e2b3463c05
CMake: Bump version number
2020-10-19 01:49:46 -04:00
Sepro
6c016cf443
Place WebUI RSS description in sandboxed iframe
2020-10-19 06:39:19 +02:00
sledgehammer999
fc48168153
Close parentheses in Changelog entry
2020-10-19 01:51:13 +03:00
sledgehammer999
096e6f2f80
Bump to 4.4.0alpha1
2020-10-19 01:22:01 +03:00
sledgehammer999
4a00bfcc55
Update Changelog
2020-10-18 22:44:32 +03:00
NotTsunami
6ebc19fccb
Remove branches block from Travis config
...
This block has no significance because these branches are stale and
builds will not be triggered on these branches.
2020-09-28 22:50:15 -04:00
NotTsunami
0fa40c9ac3
Disallow CMake build failures on Travis
...
Our CMake configuration has matured over time, thus require CMake
builds to require successful builds on Travis CI.
2020-09-28 22:50:15 -04:00