Commit graph

10670 commits

Author SHA1 Message Date
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
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
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
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
f5239ffb0b
CMake: Use installed Qt's translations for packaging 2022-03-29 01:52:23 +03: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
bbd936fdfa
Don't use explicit memory management
And avoid dangling pointers.
2022-03-24 14:44:38 +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
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 (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
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
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
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
An0n
aa189a7fc6
Disable force reannounce when it is not possible
Closes #12080.
PR #16551.
2022-03-06 12:59:31 +08: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
Aleksandr Cupacenko
2c8447853b
Focus save path when Manual mode is selected initially
Closes #15972.
PR #16536.
2022-03-02 13:27:22 +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
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
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
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
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
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
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
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
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
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
thalieht
d3bdeaab3f
Replace "seeding_duration" with "finished_duration" everywhere
Closes #10223.
PR #13601.
2022-01-07 15:22:51 +08:00
sledgehammer999
d6fc020ba7
Bump to 4.5.0alpha1 2022-01-06 20:47:06 +02:00
sledgehammer999
74dc000ac1
Sync translations from Transifex and run lupdate 2022-01-06 20:35:45 +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
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
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
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
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
1fa940876f
Remove redundant UI cleanups
Just exiting the application will handle all of them automatically.
2021-12-13 15:08:25 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
7087565d92
Fix typo 2021-10-11 22:17:17 +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
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
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
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
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
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
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
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
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
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
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
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
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
7dc7b95bfd
Merge pull request #15306 from Chocobo1/icon
Minor UI revise
2021-08-14 12:12:49 +08:00
Chocobo1
e006538514
Fix cmake script (#15309)
Fix up 138c911ef4.
2021-08-11 13:26:15 +08:00
Chocobo1
526ee9c9db
Add tooltip to listening port spinbox 2021-08-10 12:24:50 +08: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
sledgehammer999
3e92e716b2
Merge pull request #15294 from sledgehammer999/accept_v2_infohash
Accept v2 infohashes for download
2021-08-08 12:29:04 +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
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
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
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
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)
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
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
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
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
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
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 (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
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
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
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
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
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
thalieht
e86916a7f9 Make some strings in WebUI translatable
Closes #14920
2021-05-06 20:49:35 +03: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
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 (Glassez)
383eaf44ac
Implement DBResumeDataStorage class 2021-05-01 12:30:53 +03: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
6864e13e6f
Show "last activity" value under all circumstances 2021-04-20 10:03:25 +08:00
Nick Korotysh
29e6b229ac
Don't use executable name as CFBundleName value 2021-04-20 01:49:32 +03: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
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
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
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
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
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
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
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
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
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
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
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
2d1c34d8e0
Merge pull request #14593 from glassez/qt6-compat
Make current codebase more compatible with Qt6
2021-03-29 14:00:23 +03: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
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
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
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 (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
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 (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 (Glassez)
0c9ecd1d76
Properly show tracker status for "paused" torrents 2021-03-12 16:20:52 +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 (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
Chocobo1
12938799a6
Remove unused lambda capture 2021-03-05 22:18:08 +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
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
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
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
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
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
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
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
ab0e1ec6e8
Use stable sorting in transfer list 2021-02-05 10:01:28 +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
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
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
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
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
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 (Glassez)
710c5e2c31
WebUI: Correctly represent torrent content structure 2021-01-12 16:13:48 +03: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
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
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 (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)
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
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
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
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 (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
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
Vladimir Golovnev (Glassez)
1d5dc283fe
Allow to add root folder to torrent content 2020-12-23 13:07:33 +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
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
c01d28a471
Merge pull request #13948 from FranciscoPombal/pragmatism
Use #pragma once instead of include guards
2020-12-14 13:51:02 +03: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 (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
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 (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
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
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
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
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
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
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
d46343fb9c
Add ability to use 'shift+delete' to delete torrents in WebUI
Closes #13827.
2020-11-26 15:52:47 +08:00