Commit graph

2421 commits

Author SHA1 Message Date
Vladimir Golovnev
ea1c4a8fc8
Merge pull request #14567 from glassez/desktop
Clean up the code
2021-03-21 12:57:46 +03: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
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
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
Chocobo1
a78929dadf
Simplify progress bar painting 2021-03-17 11:19:08 +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
jagannatharjun
bb39a41e9e Update comment 2021-03-13 11:39:14 +05:30
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
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 (Glassez)
20e9952d98
Don't allow speed plot buffer to overflow 2021-03-09 19:52:10 +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
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
12938799a6
Remove unused lambda capture 2021-03-05 22:18:08 +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
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
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
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
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
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
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
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
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
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
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
15a249eb54
Improve detection of file extension string 2021-01-17 00:10:18 +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
sledgehammer999
ae27a5b7b7
Merge pull request #14171 from sledgehammer999/copyright_attribution
Correct copyright attribution
2021-01-07 18:37:43 +02:00
sledgehammer999
9b67e988db
Correct copyright attribution
These files were created and edited in their entirety in commit 8db4bde15d
As far as I can tell they were almost entirety rewritten from their original state.
The old copyright attribution is restored and the new author is added too.
2021-01-07 13:39:15 +02:00
Vladimir Golovnev (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 (Glassez)
531ae501ad
Use std::optional<bool> instead of custom TriStateBool 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
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
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
Chocobo1
be5af2796d
Revise SettingsStorage store/load value interface 2021-01-02 12:48:26 +08: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
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
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
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
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
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
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
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
Vladimir Golovnev (Glassez)
1d5dc283fe
Allow to add root folder to torrent content 2020-12-23 13:07:33 +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
FranciscoPombal
6152b83405 Use #pragma once instead of include guards 2020-12-12 19:41:32 +00: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
498da509db
Use Qt provided forward declaration header 2020-12-09 18:21:02 +08: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
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
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
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
Vladimir Golovnev (Glassez)
0e8feed2f2
Clean up metadata downloading code 2020-12-01 08:15:12 +03: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
Chocobo1
13c4581c86
Fix wrong data used for comparison
In torrent transfer list we should use underlying data for sorting, not
displayed values.

Closes #13818.
2020-11-26 01:35:57 +08:00
Thomas De Rocker
9515b40ca5
Fix confusion in date format description (#1)
* Update automatedrssdownloader.ui

* Update rssDownloader.html (#2)
2020-11-21 10:09:47 +01:00
Vladimir Golovnev (Glassez)
c41df9ffbd
Improve coding style 2020-11-17 21:02:37 +03:00
sledgehammer999
6ec07d744e
Add Latgalian translation
Closes #12415
2020-11-16 20:26:54 +02:00
Chocobo1
0be2567d97
Don't use deprecated torrent state "allocating"
Closes #13737.
2020-11-12 00:17:42 +08:00
Vladimir Golovnev (Glassez)
85bd0feee0
Handle torrent "paused" state at application level 2020-11-02 10:09:14 +03:00
Mike Tzou
b249216db6
Merge pull request #13659 from FranciscoPombal/whitespacev2
File health: trailing newlines, whitespace, etc fixes and GitHub Actions workflow
2020-11-02 11:33:21 +08:00
Chocobo1
6b4a4517ec
Remove redundant semicolon 2020-11-01 14:24:49 +08:00
Chocobo1
b2b7d02c01
Allow adding torrents using "Paste" key sequence
Closes #13685.
2020-10-31 14:07:04 +08:00
FranciscoPombal
4bdf9eda41 Fix extra/missing trailing new lines in files 2020-10-28 14:20:18 +00:00
FranciscoPombal
ef1c7eec74 Fix trailing whitespace in multiple files
Also fix formatting of CODING_GUIDELINES.md
2020-10-28 14:20:11 +00:00
jagannatharjun
fdbc3a692f Align integer data to right in torrent content view 2020-10-28 12:27:54 +05:30
jagannatharjun
d0986297ca Rename TR_PROGRESS header in TransferList
Closes #13665
2020-10-28 10:39:56 +05:30
Mike Tzou
4209a5699a
Merge pull request #13632 from jagannatharjun/progress-style
Allow progress bar styling from custom themes
2020-10-28 10:04:05 +08:00
jagannatharjun
02f19bfbee Use ProgressbarDelegate for drawing progressbar in PropListDelegate
Also directly provide display data from model rather then generating it in delegate
2020-10-27 11:58:17 +05:30
jagannatharjun
49d5591f48 Use ProgressBarDelegate for drawing progressbar in TransferListView 2020-10-27 11:58:17 +05:30
jagannatharjun
816bc45707 Implement ProgressBarDelegate 2020-10-27 11:58:17 +05:30
Mike Tzou
cf55b67cee
Merge pull request #13646 from jagannatharjun/content-crash
Fix crash when clicked outside the table of torrent content view
2020-10-26 12:38:11 +08:00
jagannatharjun
e812ac2c0b Fix crash when clicked outside the table of torrent content view
Closes #13645
2020-10-25 23:39:48 +05:30
FranciscoPombal
831bf71ce6 Clarify protocol choice label 2020-10-25 00:11:57 +01:00
Chocobo1
7e258bfe38
Fix typos 2020-10-20 18:56:30 +08:00
Will Da Silva
6e0cf96726 Make middle-click close search tabs 2020-10-17 00:21:10 -04:00
Mike Tzou
5be7b256e9
Merge pull request #13499 from bershanskiy/hashing_threads
Add option for hashing_threads setting
2020-10-14 11:40:01 +08:00
Anton Bershanskiy
b4bfdd6f7a Add option for hashing_threads, use 10 asyc IO threads
Add option for setting lt::settings_pack::hashing_threads
introduced by libtorrent 2.0. It has no effect for earlier
libtorrent versions.
Use 10 async IO threads, as per #11461.
Closes #11461.
2020-10-13 00:58:13 +03:00
Mike Tzou
8276b6f468
Merge pull request #13495 from thalieht/peerlistZero
Fix regression of not hiding zero values in the peer list
2020-10-13 03:27:38 +08:00
thalieht
9d25405144 Check cheaper conditional first 2020-10-11 20:22:27 +03:00
thalieht
95b452a3e9 Fix regression of not hiding zero values in the peer list
Fixup 13aab6e04d
2020-10-11 20:17:01 +03:00
Chocobo1
19d77b0881
Add support for creating v2 torrents 2020-10-10 23:21:26 +08:00
Mike Tzou
4fa8862398
Merge pull request #13484 from Chocobo1/webui
Fix image not loading under proxy
2020-10-09 16:26:50 +08:00
Chocobo1
611f2de11f
Fix wrong capitalization 2020-10-09 00:40:29 +08:00
FranciscoPombal
2c10b3936b Change some types (uint -> int) in RSS subsystem 2020-10-07 23:26:13 +01:00
jagannatharjun
e2c0f00adb Correctly fill whole width of graph 2020-10-03 12:41:18 +05:30
Mike Tzou
79b4fb70f5
Merge pull request #13445 from jagannatharjun/pieces-green
Use toned green color for downloading pieces in Pieces bar
2020-09-28 11:37:03 +08:00
jagannatharjun
fbe484a615 Use toned green color for downloading pieces in Pieces bar 2020-09-26 14:53:46 +05:30
Chocobo1
2e37ea608c
Migrate away from obsoleted functions 2020-09-25 15:12:40 +08:00
Mike Tzou
c3b5668a07
Merge pull request #12577 from NotTsunami/peer
Allow users to configure no_connect_privileged_ports
2020-09-22 00:02:20 +08:00
NotTsunami
2eb3ff7f06 Allow users to configure no_connect_privileged_ports
Don't hardcode lt::settings_pack::no_connect_privileged_ports. We
support the peer alert for it already, so connections blocked by this
setting should be logged.
2020-09-20 22:46:28 -04:00
Vladimir Golovnev
e41ae1457e
Merge pull request #13390 from NotTsunami/ban
Prevent peers from being lost when banning
2020-09-19 07:14:50 +03:00
NotTsunami
8d64d38914 Prevent peers from being lost when banning
The selected rows aren't queried until after a user confirms they
would like to ban the selected peers. If a peer disconnects before
the confirmation is pressed, they will not be included in the
selection. This commit makes sure the selected rows are stored before
a selection is made to prevent the loss of any peers.

Closes #13385.
2020-09-18 15:33:17 -04:00
FranciscoPombal
46123b9989 CMake: overhaul and improve scripts
- Bump minimum required version and
make use of more modern language features
- Rely more on target_...() commands to establish dependency
relationships between targets rather than directory property commands
- Improve libtorrent package discovery
- Enable and handle application features more explicitly
- Improve user-facing output
- Fix various compilation issues on Windows (MSVC and MinGW) and macOS
- Improve handling of translations
- Add explanatory comments where relevant
- Make CMake scripts fully independent of qmake files/details
- Remove old functions/macros
2020-09-17 13:13:26 +01:00
FranciscoPombal
e0c62827a8 Fix peer blocked message 2020-09-16 16:59:51 +01:00
Mike Tzou
ff82063520
Merge pull request #13366 from qbittorrent/linuxtrayhtml
Don't use HTML in Linux tray tooltip
2020-09-15 12:31:49 +08:00
Mike Tzou
49e55d5a5d
Merge pull request #13268 from ngosang/feature/python35-
Update minimum Python version to 3.5.0
2020-09-14 12:03:20 +08:00
thalieht
ede1bd0657 Don't use HTML in Linux tray tooltip
HTML is no longer allowed in Linux tray tooltip's title, only in its subtext.

Closes #13030
2020-09-13 12:43:55 +03:00
Mike Tzou
2d1855dc05
Merge pull request #13354 from Chocobo1/libt2
Disable deprecated settings in libtorrent 2.0
2020-09-12 11:02:12 +08:00
Chocobo1
79eb9a4990
Move signal connections to appropriate place 2020-09-10 21:17:46 +08:00
Chocobo1
0bf76723f1
Move enums into anonymous namespace 2020-09-10 21:17:46 +08:00
Chocobo1
554eab50bb
Disable deprecated libtorrent settings 2020-09-09 16:16:08 +08:00
Vladimir Golovnev
defdd5121c
Merge pull request #13340 from glassez/fix-magnet
Improve adding torrent using Magnet URI
2020-09-09 10:06:39 +03:00
Mike Tzou
c967bf31ff
Merge pull request #13336 from Chocobo1/webui
Minor WebUI improvements
2020-09-09 11:48:55 +08:00
Vladimir Golovnev (Glassez)
5727fcb001
Store and use full magnet URI instead of hash 2020-09-08 14:57:45 +03:00
Vladimir Golovnev (Glassez)
20206ec92a
Improve adding torrent using Magnet URI
Closes #13249.
2020-09-08 14:56:38 +03:00
Chocobo1
5677ce1cc9
Use proper uppercase "UTF-8" in charset field 2020-09-08 14:31:19 +08:00
an0n666
73b39a8dec Expose libtorrent max_concurrent_http_announces in advanced settings 2020-09-08 06:05:45 +06:00
Chocobo1
ef6dfa9b54
Fix "Open containing folder" opened the wrong path for folder item
Previously that action is the same as "Open" action which is wrong
behavior, it should be opening the parent folder instead. The wrong
behavior is observed on nautilus 3.36.3 and nemo 4.6.5.
2020-08-30 20:38:35 +08:00
Mike Tzou
3c6e6ae872
Merge pull request #13294 from Chocobo1/openFile
Fix open path won't work correctly
2020-08-30 11:28:46 +08:00
Mike Tzou
cae5c5cea0
Merge pull request #13257 from Sophist-UK/patch-1
Expose LibTorrent peer_turnover settings
2020-08-30 11:28:28 +08:00
Chocobo1
eb1a3e2b29
Fix open path won't work correctly
Previously, if double click on the Size number in torrent content tab
the path would be an incorrect value and as such open path functionality
won't work, this commit fixes it.
2020-08-29 19:59:55 +08:00
Chocobo1
307ca61c86
Code clean up 2020-08-29 19:56:05 +08:00
LoopsGod
7efee615ad
Add CTRL + I shortcut to actionStatistics
Mapped the CTRL + I shortcut to open statistics in GUI.
2020-08-26 09:57:44 +02:00
Mike Tzou
4539c679d9
Merge pull request #13256 from jagannatharjun/pieces-style
Use palette colors in pieces bars
2020-08-23 11:26:48 +08:00
jagannatharjun
d73757bf6e Use palette colors in pieces bars 2020-08-22 14:46:37 +05:30
Sophist
4c37c229d9 Expose LibTorrent peer_turnover settings
This PR exposes the LibTorrent Peer Turnover Settings in qBT Advanced Settings in order to allow users to adjust how frequently slow and uninteresting connections are closed to allow potentially better / faster connections to be made.

The default settings are to turnover peers when the number of connections is at least 90% of allowed global or per torrent connections, and to disconnect the least attractive 4% of these connections every 5 minutes.

See https://www.libtorrent.org/reference-Settings.html#peer_turnover
2020-08-19 20:11:58 +01:00
ngosang
71be4f03be Update minimum Python version to 3.5.0 2020-08-18 20:56:39 +02:00
Ernesto Castellotti
5c4dfbec39
Add a scroll area to torrent creator dialog
As to prevent the dialog from going out-of-screen on a small monitor.
2020-08-17 20:00:43 +08:00
jagannatharjun
01849297ef Fix incorrect foreground for read articles with custom theme 2020-08-15 01:04:05 +05:30
Vladimir Golovnev
e1d097a92d
Merge pull request #13234 from glassez/load-torrent
Improve torrent loading code
2020-08-13 18:58:36 +03:00
jagannatharjun
a63ca5f0c4 Allow changing RSS article list colors from custom UI theme
Use ArticleListWidget own palette to obtain default colors
2020-08-11 19:03:49 +05:30
Vladimir Golovnev (Glassez)
dc3d23c045
Improve torrent loading code 2020-08-09 12:11:07 +03:00
Mike Tzou
4d1c5a8aea
Merge pull request #13226 from jagannatharjun/rss-style
Use palette colors in RSS feeds
2020-08-04 10:47:05 +08:00
jagannatharjun
f1a07d6c43 Use palette colors in RSS feeds 2020-08-03 12:12:18 +05:30
jagannatharjun
5b4a940842 Load custom theme before initializing main window
Improves debug build startup time with custom themes
2020-08-02 14:02:18 +05:30
jagannatharjun
b323c4e6be Set stylesheet of target widget rather then defining global stylesheet 2020-08-01 01:37:08 +05:30
Chocobo1
b092fc9abb
Disable edit action 2020-07-30 14:31:39 +08:00
Vladimir Golovnev
3a0ec8b283
Merge pull request #13193 from glassez/notify-move-storage
Notify user when torrent moving finished
2020-07-27 15:01:48 +03:00
Mike Tzou
dcef3a68f8
Merge pull request #13156 from jagannatharjun/search-style
Use default delegate for SearchModel
2020-07-26 20:20:40 +08:00
Mike Tzou
30bf14c85f
Merge pull request #13157 from jagannatharjun/peer
Use default delegate for PeerListWidget
2020-07-26 20:20:16 +08:00
Vladimir Golovnev (Glassez)
bac7fbc68e
Notify user when torrent moving finished 2020-07-26 14:31:58 +03:00
jagannatharjun
00413b0dd1 Use default delegate for SearchModel
Introduce and use data role - SearchFilterModel::UnderlyingDataRole as a filter role in SearchFilterModel

Removes the usage of QItemDelegate
2020-07-26 13:05:54 +05:30
jagannatharjun
13aab6e04d Use default delegate for PeerListWidget
Removes the usage of QItemDelegate
2020-07-26 12:57:57 +05:30
Mike Tzou
0defdacbfd
Merge pull request #13153 from jagannatharjun/styledelegate-content
Use QStyledItemDelegate for content views
2020-07-22 10:57:42 +08:00
Vladimir Golovnev
23eb117a05
Merge pull request #13151 from glassez/move-storage
Improve "move torrent storage" handling
2020-07-20 21:27:27 +03:00
Vladimir Golovnev (Glassez)
cdc2b8d79b
Improve "move torrent storage" handling 2020-07-19 15:04:42 +03:00
jagannatharjun
8dd92fe612 Use QStyledItemDelegate as base for ScanFoldersDelegate 2020-07-19 00:54:12 +05:30
jagannatharjun
4733cb59e4 Use QStyledItemDelegate for content views 2020-07-18 13:30:26 +05:30
Mike Tzou
83f1028ff7
Merge pull request #13099 from jagannatharjun/fix-log
Use delegate provided rect for textRect in LogItemDelegate
2020-07-05 10:51:35 +08:00
jagannatharjun
952dc26514 Use delegate provided rect for textRect in LogItemDelegate
Previously we get textRect from QStyle but on some OS this returns invalid rect
2020-07-04 15:49:21 +05:30
jagannatharjun
332dd027af Use global style options for drawing progress in TransferList 2020-07-04 10:36:54 +05:30
Vladimir Golovnev (Glassez)
6a0a78f3f7
Drop ".unwanted folder" feature 2020-06-10 11:35:09 +03:00
Chocobo1
15b2811fa5
Don't use deprecated QUrl::topLevelDomain() 2020-06-04 20:20:50 +08:00
Chocobo1
547982c741
Don't use deprecated QButtonGroup::buttonClicked() 2020-06-04 20:20:50 +08:00
Chocobo1
2fd4381398
Don't use QWheelEvent deprecated functions 2020-06-04 20:20:50 +08:00
Chocobo1
c239568658
Don't use deprecated QTextStreamFunctions::flush()
Qt doc states: "If QTextStream operates on a string, this function does
nothing". So remove it.
2020-06-04 15:29:32 +08:00
Mike Tzou
9aad574e1a
Merge pull request #12949 from jagannatharjun/fix-big
Fix large strings not visible in log widget
2020-06-01 19:59:43 +08:00
jagannatharjun
8267898655 Fix large strings not visible in log widget 2020-05-31 15:37:33 +05:30
Mike Tzou
788d2729db
Merge pull request #12877 from an0n666/private-torrents
Address some issues regarding private torrents
2020-05-30 19:29:02 +08:00
jagannatharjun
bcf11cf1e8 Cache flag icons 2020-05-29 17:55:12 +05:30
Vladimir Golovnev
c003a12f1f
Merge pull request #12884 from glassez/custom-storage
Find complete files when checking torrent
2020-05-26 19:00:37 +03:00
an0n666
6d85ae8f62 Address some issues regarding private torrents 2020-05-26 14:18:15 +06:00
Vladimir Golovnev (Glassez)
f4efa530dc
Create header for common BitTorrent declarations 2020-05-25 20:32:35 +03:00
Chocobo1
ba2db3f139
Avoid overuse of QStringLiteral
This code path doesn't look like frequently used.
2020-05-24 13:13:55 +08:00
Chocobo1
99a1802dbb
Make class variable const 2020-05-24 13:13:55 +08:00
Chocobo1
00eb61543d
Make the icon cache a class variable 2020-05-24 13:13:32 +08:00
jagannatharjun
3c733ddf0c Allow changing GUI icons from theme bundles 2020-05-22 11:06:22 +05:30
jagannatharjun
43319f2213 Always use UIThemeManager for obtaining icons in GUI 2020-05-22 11:06:10 +05:30
jagannatharjun
971a21f306 Add missing header stdexcept in fspathedit
Fixes compilation error with MSVC 16.6
2020-05-20 23:25:19 +05:30
Vladimir Golovnev
dde7421f59
Merge pull request #12848 from jagannatharjun/move-icons
Move all icon resources in icons folder root
2020-05-19 07:39:55 +03:00
jagannatharjun
ab91d546e5 Move all icon resources to icon folder root 2020-05-18 20:30:51 +05:30
Chocobo1
328eb5b5cc
Provide a proper default return statement for the function 2020-05-16 21:48:10 +08:00
Chocobo1
21e1c33d15
Don't use deprecated QPainter option
Warning from compiler:
speedplotview.cpp:342:63: warning: ‘QPainter::HighQualityAntialiasing’ is deprecated: Use Antialiasing instead [-Wdeprecated-declarations]
2020-05-16 21:23:45 +08:00
thalieht
e2a8fe0dce Disable checkbox if torrent doesn't have root folder 2020-05-13 13:35:13 +03:00
FranciscoPombal
2192de5233 Fix include 2020-05-09 17:36:37 +01:00
Vladimir Golovnev (Glassez)
a8c333ff25
Drop "private" subfolders
"private" subfolders violate the structure of the project,
since the existence of all other subfolders is based on a
different principle.
In addition, there is no clear line between "private" and
"non private".
2020-05-08 14:59:18 +03:00
Mike Tzou
1917064bde
Merge pull request #12755 from jagannatharjun/transferlist-colors
Read Transfer list's custom colors from config.json
2020-05-07 12:34:28 +08:00
jagannatharjun
77658be9a7 Read Transfer list's custom colors from config.json 2020-05-06 16:37:37 +05:30
jagannatharjun
cce8f178e4 Allow changing log colors from config.json 2020-05-05 18:53:31 +05:30
Mike Tzou
2c100feb35
Merge pull request #11618 from jagannatharjun/align
Align Properties Tabbar in center
2020-05-05 13:10:53 +08:00
Mike Tzou
5b36706a71
Merge pull request #12719 from jagannatharjun/json-colors
Allow setting application palette from config.json
2020-05-05 12:37:09 +08:00
jagannatharjun
afbe55d004 Allow setting application palette from config.json 2020-05-04 18:37:58 +05:30
jagannatharjun
6f38a86d9a Align Properties Tabbar in center 2020-05-04 11:25:37 +05:30
Vladimir Golovnev
2d1d1ba26a
Merge pull request #12734 from glassez/project-cleanup
Cleanup project configuration
2020-05-03 16:37:36 +03:00
Vladimir Golovnev (Glassez)
c40da7a5dd
CMake: Fix header inclusion in autogenerated files 2020-05-03 10:27:24 +03:00
Nick Korotysh
c97e4f105f
Clean up header inclusion 2020-05-02 19:54:36 +03:00
Vladimir Golovnev (Glassez)
eeae308c29
CMake: Don't use subprojects in GUI subfolders 2020-05-02 17:21:03 +03:00
Vladimir Golovnev (Glassez)
ace8a093d2
QMake: Include all GUI sources in "gui.pri" 2020-05-02 17:20:43 +03:00
Vladimir Golovnev
4e7ff88cf4
Merge pull request #12718 from glassez/improve-cmake
Improve CMake project
2020-05-02 08:54:25 +03:00
Mike Tzou
02c6afd769
Merge pull request #12711 from Kolcha/tooltip
Show tooltip for torrent name in transfer list
2020-05-02 11:51:16 +08:00
Vladimir Golovnev (Glassez)
642bf7b8a6
CMake: Don't split GUI code into several libraries 2020-05-01 17:03:00 +03:00
Vladimir Golovnev (Glassez)
4a2d25b03b
Clean up header inclusion 2020-05-01 17:02:49 +03:00
Nick Korotysh
1fd4ff5c2c
Show tooltip for some properties in transfer list
Tooltip is added for next columns:
- name
- status
- category
- tags
- tracker
- save path

closes #12696
2020-05-01 13:08:09 +03:00
Mike Tzou
2aa80fe9ba
Merge pull request #12689 from thalieht/subfolder
Rename "Create subfolder" option to "Keep subfolder"
2020-05-01 14:09:17 +08:00
Vladimir Golovnev
7ca0592694
Merge pull request #12684 from an0n666/requires-restart
Remove "requires restart" from network interface settings
2020-05-01 07:38:36 +03:00
Chocobo1
f6eb341b32
Clean up code 2020-04-30 13:18:24 +08:00
Mike Tzou
4f820163ff
Merge pull request #12691 from Chocobo1/iterator
Support range-based iteration in IndexRange class
2020-04-30 13:10:13 +08:00
Mike Tzou
7061242681
Merge pull request #12176 from NotTsunami/ssl
Add HTTPS tracker certificate validation option
2020-04-30 13:09:31 +08:00
Chocobo1
ddb9dfe185
Disable copy construction of QObject subclasses 2020-04-29 21:40:50 +08:00
an0n666
1d3bb705c8 Remove "requires restart" from network interface settings
Network interface changes are applied on the fly. A restart is not required.
2020-04-29 12:42:49 +06:00
thalieht
1bdffe1729 Rename "Create subfolder" to "Keep top-level folder"
Closes #12673
2020-04-29 03:09:38 +03:00
Mike Tzou
6dcb0665ca
Merge pull request #12655 from Chocobo1/delete
Improve behavior of deleting torrents in transfer list
2020-04-28 11:14:49 +08:00
Chocobo1
7ce83599b4
Improve behavior of deleting torrents in transfer list
Avoids accessing invalid pointers.
Closes #12584.
2020-04-27 02:03:19 +08:00
Andrei Stepanov
159f93e051
Fix typo in optionsdialog.cpp
qBittorent -> qBittorrent
2020-04-26 20:59:42 +04:00
Chocobo1
bb80b378c1
Add ability to send custom HTTP headers 2020-04-23 12:13:01 +08:00
NotTsunami
cc1ebbf379 Add HTTPS tracker certificate validation option
This commit adds a new libtorrent setting to validate HTTPS tracker
certificates. When enabled, libtorrent will validate the certificate
of HTTPS trackers against the system's certificate store. This option
is only enabled on libtorrent versions >= 1.2.6 and on non-Windows
systems, as OpenSSL does not use the system's certificate store on
Windows.
2020-04-22 15:50:17 -04:00
Chocobo1
f915241bcb
Reduce ambiguity for selecting icons
Related: #12554.
2020-04-21 12:35:08 +08:00
Mike Tzou
8ed63d69de
Merge pull request #12528 from thalieht/proxycheckbox
Don't uncheck Authentication checkbox when changing proxy type
2020-04-21 01:28:21 +08:00
thalieht
5d16379941 Don't uncheck Authentication checkbox when changing proxy type
Closes #12525
2020-04-19 21:28:21 +03:00
Chocobo1
16a76eee9f
Add final specifier to GUI classes
Follow up d3d3f7dbb3.
2020-04-19 10:59:59 +08:00
thalieht
f0549b4cb2 Make a few cosmetic changes in code 2020-04-17 19:51:26 +03:00
Vladimir Golovnev
2681093d27
Merge pull request #12513 from glassez/torrent-impl
Split TorrentHandle interface and implementation
2020-04-17 07:40:28 +03:00
Mike Tzou
a5fe96f793
Merge pull request #12458 from jagannatharjun/log
Convert the Log widget to use custom View/Model
2020-04-17 11:27:35 +08:00
Vladimir Golovnev (Glassez)
1132b84548
Split TorrentHandle interface and implementation 2020-04-16 20:22:26 +03:00
jagannatharjun
fd89717330 Convert the Log widget to use custom View/Model
Co-authored-by: sledgehammer999 <hammered999@gmail.com>
2020-04-15 22:18:00 +05:30
Mike Tzou
c25b3e623c
Merge pull request #12423 from an0n666/remove-strict-superseeding
Remove deprecated strict super seeding mode from advanced settings
2020-04-12 00:41:28 +08:00
Chocobo1
31648a4433
Fix date format for "Last seen complete"
Closes #12462.
2020-04-10 13:06:56 +08:00
Chocobo1
f76d56e224
Suppress unused variable warning on macOS 2020-04-07 16:02:10 +08:00
an0n666
026aad2c04 Remove deprecated strict super seeding mode from advanced settings 2020-04-07 09:54:32 +06:00
Chocobo1
5eaedb13e5
Sort locale language list 2020-04-05 19:21:37 +08:00
Chocobo1
09545d4036
Fix wrong logic that disables "prevent sleeping" timer
Also update power management state early so we don't need to wait for
the timer timeout to have the effect.
2020-04-04 12:15:56 +08:00
Chocobo1
3752453522
Clean up coding style 2020-04-04 12:15:54 +08:00
Vladimir Golovnev (Glassez)
b759a71c5d
Fix sub-sorting of Transfer list
Closes #12330.
2020-04-03 19:09:41 +03:00
Mike Tzou
8a8607bf93
Merge pull request #12175 from NotTsunami/upnp
Add UPnP lease duration advanced option
2020-03-29 12:29:10 +08:00
NotTsunami
6b4925d222 Add UPnP lease duration advanced option
This is a new setting added that is pending addition to
libtorrent 1.2.6. This setting is important because some routers do
not support expiration times on port-maps and do not return an error
either, silently failing. The previous default of permanent leases is
retained.
2020-03-28 00:32:32 -04:00
Chocobo1
7de8a4d6e0
Construct QString more efficiently 2020-03-25 12:00:11 +08:00
Kacper Michajłow
e2c9ca5ee5 Add missing QPainterPath header include 2020-03-22 14:58:44 +01:00
Mike Tzou
4884f08e04
Merge pull request #12187 from NotTsunami/keypress
Allow other keypresses in LogListWidget
2020-03-19 13:36:41 +08:00
Mike Tzou
a9111b1357
Merge pull request #12180 from FranciscoPombal/fix_stats
Fix total connected peers count calculation
2020-03-19 12:07:20 +08:00
FranciscoPombal
a81789f4af Fix total connected peers count calculation
Also fix small typo in function name.
2020-03-17 18:01:57 +00:00
NotTsunami
c5aab39836 Allow other keypresses in LogListWidget
By not emitting the native signal, all other keypresses other than
the copy and select keysequences are ignored. This should reallow
keyboard navigation within LogListWidget objects.

Closes #12172.
2020-03-17 01:30:01 -04:00
Chocobo1
b7e7d8019c
Use helper function to construct QString
This is shorter and avoids the need of 2 constructors.
2020-03-16 21:27:42 +08:00
Vladimir Golovnev
5127156ba4
Merge pull request #12035 from glassez/move-storage
Move torrent storages one by one
2020-03-13 15:59:05 +03:00
Mike Tzou
92cc2a4f31
Merge pull request #12124 from Chocobo1/rename
Fix crash when renaming torrent contents
2020-03-08 00:16:02 +08:00
Mike Tzou
dc4e9e3779
Merge pull request #11813 from Chocobo1/python
Drop python2 support
2020-03-07 10:18:45 +08:00
Chocobo1
62b0d25140
Capture pointer by value 2020-03-07 10:06:35 +08:00
Mike Tzou
095ef67e30
Merge pull request #12102 from Kolcha/hidpi
Delegate GUI scaling work to Qt
2020-03-07 10:05:21 +08:00
Nick Korotysh
d49d7c1d82
Delegate GUI scaling work to Qt
Set Qt::AA_EnableHighDpiScaling application attribute when Qt 5.14.x or
newer is used. This fixes a lot of scaling issues on HiDPI displays.

Unfortunately, this flag must be set only before QApllication object
creation, so the only one place where it can be done is main().
2020-03-06 12:04:57 +03:00
Chocobo1
48e7191ef7
Initialize boolean variables 2020-03-06 15:50:55 +08:00
Chocobo1
9c6bc6c89a
Fix crash when renaming torrent contents
Closes #10328.
2020-03-06 15:50:37 +08:00
Chocobo1
2157e500ef
Use helper functions to construct smart pointers 2020-03-05 19:32:28 +08:00
Mike Tzou
1ca303cb0a
Merge pull request #12027 from NotTsunami/pr2
Improve the options tooltips
2020-03-03 17:47:23 +08:00
NotTsunami
f1788c76a9 Improve the options tooltips
* Fix wrong fields for translation comments
* Improve torrent management tooltip to cover both modes
* Add new tooltips for potentially confusing settings

Decent progress towards #6346, closes #9994, closes #11528
2020-03-02 23:55:08 -05:00
Vladimir Golovnev
4d2943a782
Merge pull request #12033 from glassez/save-torrent
Allow to save downloaded metadata as torrent file
2020-02-27 08:49:40 +03:00
Vladimir Golovnev (Glassez)
e4ff206e3c
Move torrent storages one by one 2020-02-26 10:20:04 +03:00
Vladimir Golovnev (Glassez)
dd0cee44c1
Allow to save downloaded metadata as torrent file 2020-02-26 08:10:11 +03:00
Chocobo1
071ffd13de
Fix wrong field for translation comment
The `comment` field is used for disambiguation between identical
strings. Our case here should use the `extracomment` field which
meant as comment for translators.
2020-02-26 13:04:18 +08:00
Chocobo1
f4febb96b4
Remove misleading translation comment
Also it was using the wrong field for translation comment.
2020-02-26 12:55:19 +08:00
djt3
e6887fc950 Change placeholder text in torrent list's filter 2020-02-23 14:40:45 +00:00
sledgehammer999
ea1481beef
Use IP geolocation database by DB-IP instead of MaxMind
Closes #11792
2020-02-18 16:11:28 +02:00
sledgehammer999
322ae3e0bc
Merge pull request #11825 from FranciscoPombal/stalled_filter
Add stalled filters to GUI and Web API/UI
2020-02-16 18:32:37 +02:00
Chocobo1
6eb190c373
Expose WebUI ban duration to users 2020-02-14 16:23:30 +08:00
Chocobo1
f88d6b2e55
Expose WebUI ban counter to users 2020-02-14 12:31:12 +08:00
Chocobo1
baa13c044a
Drop python2 support
Closes #11811.
2020-02-08 12:36:45 +08:00
NotTsunami
6748e8d787 Remove redundant null checks
Attempting to delete a null pointer is a noop in C++.

Closes #2864.

[1] https://isocpp.org/wiki/faq/freestore-mgmt#delete-handles-null
2020-02-03 16:38:51 -05:00
Chocobo1
b2ab6c1858
Let ReverseResolution always return/emit a result 2020-01-30 19:24:18 +08:00
Chocobo1
ff31bb86bc
Speed up lookup time
By adding another variable we can get O(1) lookup time instead of O(n).
Fix up 5f415c292d.
2020-01-30 19:23:54 +08:00
Chocobo1
86e3d0d816
Improve ReverseResolution class
* Use QHostAddress type for IP
* Avoid double lookup
* Use larger cache size
2020-01-30 14:11:03 +08:00
Mike Tzou
11bea8d393
Merge pull request #11918 from thalieht/peerssameip
Show any multiple connections from the same IP in peer list
2020-01-30 12:59:17 +08:00
thalieht
5f415c292d Show any multiple connections from the same IP in peer list
The uniqueness of peers is now determined by their
IP, port and connection type (uTP etc.) instead of just their IP
2020-01-29 20:40:10 +02:00
Vladimir Golovnev (Glassez)
666e733a4a
Track settings changed event in TransferListModel 2020-01-24 07:42:39 +03:00
Vladimir Golovnev (Glassez)
099943ea3c
Fix hide zero values 2020-01-24 07:41:04 +03:00
Sakib-Abrar
1768570bf9 Show "∞" instead of " -1" in Preferences 2020-01-22 00:06:19 +06:00
Vladimir Golovnev
75ebd54ea3
Merge pull request #11088 from jagannatharjun/organize-style
Reorganize UI theme selection
2020-01-20 06:56:54 +03:00
Prince Gupta
c9e162cf8a Reorganize UI theme selection 2020-01-18 23:12:33 +05:30
Mike Tzou
146e8213a5
Merge pull request #11781 from FranciscoPombal/piece_extent_affinity
Add piece_extent_affinity to AdvancedSettings
2020-01-14 12:53:39 +08:00
FranciscoPombal
f4742a98c5 Add stalled filters to GUI and Web API/UI
`/api/v2/torrents/info` can now take the following new values for the`filter` parameter: `stalled`, `stalled_uploading` and `stalled_downloading`.

Requires Web API version bump.

Closes #11787
2020-01-13 11:41:37 +00:00
FranciscoPombal
ed96a07a75 Add piece_extent_affinity to AdvancedSettings
Expose option in WebUI settings and WebAPI.

Requires WebAPI version bump.

Closes #11436.
2020-01-13 00:11:29 +00:00
Vladimir Golovnev
101ab3cf6c
Merge pull request #11864 from glassez/fix-sorting
Fix Transfer list sorting
2020-01-12 11:05:20 +03:00
Vladimir Golovnev (Glassez)
118debd6bf
Fix Transfer list sorting 2020-01-11 18:19:48 +03:00
Chocobo1
396660b031
Fix missing string 2020-01-11 18:48:49 +08:00
Chocobo1
2e4584578b
Bump python version for new installation 2020-01-11 18:48:01 +08:00
Chocobo1
029795bc19
Bump copyright year 2020-01-11 18:47:33 +08:00
An0n
bf32e90c40 Change placement of stop tracker timeout 2020-01-09 19:01:05 +00:00
Mike Tzou
057860584c
Merge pull request #11834 from an0n666/an0n666-expose-stop-tracker-timeout
Expose stop tracker timeout in Advanced Settings (GUI + WebUI)
2020-01-08 17:30:21 +08:00
an0n666
3f223c3a45 Expose stop_tracker_timeout in advanced settings 2020-01-08 08:21:55 +00:00
thalieht
c5177eae9f Allow double-click in preview dialog 2020-01-05 11:28:04 +02:00
Vladimir Golovnev
37d7323ac0
Merge pull request #11708 from glassez/transfer-list
Improve Transfer list architecture
2019-12-27 16:25:26 +03:00
Vladimir Golovnev (Glassez)
15f2a3b564
Use QStyledItemDelegate instead of QItemDelegate 2019-12-26 22:10:28 +03:00
Vladimir Golovnev (Glassez)
766cfb67df
Fix transfer list architecture
Model returns string for DisplayRole.
Text alignment is set by Model (using TextAlignmentRole).
Delegate performs custom painting only where necessary
(i.e. for Progress bar).
2019-12-26 22:09:56 +03:00
Mike Tzou
5c3c1e07df
Merge pull request #11739 from Chocobo1/qt5_14
Migrate away from deprecated API in Qt 5.14
2019-12-26 12:43:04 +08:00
Chocobo1
f5f3dc2ba1
Remove unused variable 2019-12-25 19:23:37 +08:00
Chocobo1
2422d81de1
Migrate away from deprecated API in Qt 5.14 2019-12-25 19:23:37 +08:00
Mike Tzou
fea39fbcf2
Merge pull request #11726 from FranciscoPombal/fix_#11724
WebUI: Implement "Secure" flag for session cookie. Closes #11724
2019-12-25 13:06:40 +08:00
sledgehammer999
f672df1cf1
Merge pull request #11278 from Piccirello/country_region
Rename Country column to "Country / Region"
2019-12-23 21:54:30 +02:00
FranciscoPombal
691d5e5d89 WebUI: Implement "Secure" flag for session cookie
Closes #11724.

Option is enabled by default for users using qBittorrent's built-in HTTPS capabilities. This flag will never be set if qBittorrent is using plain HTTP.

Users using HTTPS reverse proxies, like "qbt <-> (http) <-> proxy <-> (https) <-> user" should override the flag in the proxy in order to set it, if they wish to do so.
2019-12-23 17:58:08 +00:00
sledgehammer999
3a70dd4438
Merge pull request #11672 from sledgehammer999/show_console
Option to show console when external program is run
2019-12-23 16:16:24 +02:00
sledgehammer999
8fa6e372a2
Option to show console when external program is run
Windows only.
Closes #9592
2019-12-19 19:13:01 +02:00
sledgehammer999
18de63f743
Merge pull request #11433 from jagannatharjun/colors
Allow transfer list text color changes through QSS
2019-12-19 18:20:49 +02:00
sledgehammer999
52273ca18c
Merge pull request #11696 from Medvedishce/Update-free-disk-space
Update free disk space label on Category change in Auto Mode
2019-12-19 18:16:08 +02:00
Prince Gupta
d3aa45526a Allow transfer list text color changes through QSS 2019-12-19 12:45:26 +05:30
Medvedishce
48fff37143
Update free disk space label on Category change in Auto Mode
Closes #8772.
This will fix issue that "Free space on disk:" label in 
Add New Torrent dialog not updated on Category change
when Torrent Management Mode is on Auto mode.
2019-12-18 13:49:43 +03:00
Chocobo1
723668ba46
Replace hard-coded numbers in TrackerFiltersList class 2019-12-18 16:33:37 +08:00
Chocobo1
bf264b983a
Simplify null pointer check 2019-12-18 15:13:02 +08:00
Chocobo1
bb73fa5dbe
Replace a series of if() by switch() 2019-12-18 15:05:42 +08:00
Mike Tzou
5b7df3a6e7
Merge pull request #11675 from jagannatharjun/resize-align
Align Properties tab bar correctly on window resize
2019-12-17 10:44:13 +08:00
Prince Gupta
6258c1e65b Align Properties tab bar correctly on window resize 2019-12-16 15:42:50 +05:30
sledgehammer999
8200ef6bd5
Rework the listening IP/interface selection code
Closes #11561
2019-12-11 09:56:45 +02:00
Thomas Piccirello
33a3624652 Rename Country column to "Country / Region"
Not all flags displayed strictly belong to countries.
2019-12-03 23:05:38 -08:00
Chocobo1
a92826d316
Fix inconsistent icon for deleting torrent
Closes #11565.
2019-12-04 12:59:29 +08:00
Mike Tzou
2e8b17e498
Merge pull request #11521 from Chocobo1/errorStatus
Fix stuck in wrong torrent state
2019-12-03 19:22:39 +08:00
Vladimir Golovnev
452b1d8ea2
Merge pull request #11543 from j1warren/content_tab_feature
Expand single-item folders in torrent content
2019-12-03 13:04:53 +03:00
warren
b37795d344 Expand single-item folders in torrent content 2019-12-02 21:56:44 +05:00
Chocobo1
b6050463f4
Show torrent error message in transfer list 2019-11-26 03:15:48 +08:00
Chocobo1
0f2c61a207
Remove redundant type casting 2019-11-14 12:18:41 +08:00
Mike Tzou
9cb07db84b
Merge pull request #11473 from j1warren/dblclick_preview_file
Add "Preview file" double-click action
2019-11-14 12:02:57 +08:00
Mike Tzou
cdb1874263
Merge pull request #11466 from Xegor/master
Add "create subfolder" option to RSS auto-download rules
2019-11-14 12:02:06 +08:00
warren
74009f13d9 Add "Preview file" double-click action 2019-11-11 23:12:55 +05:00
Chocobo1
ff4aae11f8
Add required header
The header was missing and our cmake CI builds failed as a result.
2019-11-11 20:12:53 +08:00
Xegor
325f36fa4f Add create subfolder option to RSS auto-download rules 2019-11-11 12:46:51 +01:00
Mike Tzou
2fb1182700
Merge pull request #11317 from Chocobo1/preview
Fix "preview file" action not working
2019-11-04 11:32:14 +08:00
Mike Tzou
475fbfb712
Merge pull request #11356 from Chocobo1/banIP
Allow to select multiple entries in "banned IP" dialog
2019-11-04 11:29:22 +08:00
Mike Tzou
565eb4cdc8
Merge pull request #11430 from Chocobo1/qt
Fix integer narrowing on x86
2019-11-01 10:34:56 +08:00
Chocobo1
6fd678195c
Replace deprecated Qt functions
QSet::toList() is replaced by QSet::values()
2019-10-31 12:40:24 +08:00
Chocobo1
0f60121b94
Add option to control qBittorrent process memory priority
This is to avoid Windows swapping out other application data from
OS cache and put in torrent data which hinders other program
responsiveness.

The default value "Below normal" is choosen because casual users have
other higher priority apps (such as browser) running and they don't
expect OS to swap out its data. Dedicated seeders most probably will not
have other app running on their system and would expect qbt has
priority over other background services.

The option only has effect on Windows >= 8.
2019-10-31 03:18:43 +08:00
Chocobo1
4888b22622
Fix screen scaling factor calculation
For some users on Windows the physicalDotsPerInch() could return values
that are smaller than the normal 96 DPI which leads to big dialog sizes
taking the entire screen.
So we need to ensure it is at least 96 DPI.
Closes #11405, #11407.
2019-10-28 15:01:42 +08:00
Chocobo1
5e671a4b0b
Allow to select multiple entries in "banned IP" dialog 2019-10-11 21:58:35 +08:00
Chocobo1
0760398e99
Use screen real physical DPI on Windows
Previously was using a hardcoded value which might lead to issues like #11234.
2019-10-03 18:08:48 +08:00
Chocobo1
7f73a71319
Show torrent name in "preview file" related dialogs 2019-10-02 22:27:27 +08:00
Chocobo1
6a462edb72
Don't close preview dialog if selected file failed to open
User may have made a mis-selection and this should not close the dialog
(only when the torrent has multiple previewable files).
2019-10-02 22:24:47 +08:00
Chocobo1
7ed0cd0c35
Fix "preview file" action not working
Root cause is the PreviewSelectDialog::readyToPreviewFile signal is
emitted before it is connected to a slot.
Only single-file torrents are affected.

Closes #11315.
2019-10-02 22:24:29 +08:00
Chocobo1
0607050ecc
Clean up PreviewSelectDialog class 2019-10-02 21:12:35 +08:00
Chocobo1
e0a23ba93d
Use InfoHash type in queueing operations
This avoids redundant type conversions.
2019-10-02 15:21:16 +08:00
Chocobo1
c632a91ee5
Handle "Delete confirmation" dialog result asynchronously
This is to avoid creating nested event loops as discussed in
https://github.com/qbittorrent/qBittorrent/pull/10786#issuecomment-502795822
2019-09-30 21:37:17 +08:00
Chocobo1
19b6f56a0a
Move DeletionConfirmationDialog class to its own .cpp file 2019-09-29 11:29:16 +08:00
Mike Tzou
975b44d05f
Merge pull request #11241 from thalieht/delfolder
Add "Remove torrent and its files" option to share ratio limiting
2019-09-29 09:51:41 +08:00
thalieht
53e7faa47c Rename share ratio limiting options 2019-09-26 13:34:03 +03:00
thalieht
07eb261991 Add "Remove torrent and its files" option to share ratio limiting 2019-09-26 13:34:03 +03:00
Chocobo1
58fa5e004f
Improve "stats updated" signal handling in MainWindow class 2019-09-24 11:51:29 +08:00
Mike Tzou
50e0b2ab15
Merge pull request #11251 from Chocobo1/stats
Move "torrent status report" functionality out of Session class
2019-09-24 10:48:52 +08:00
Chocobo1
418164bee4
Move "torrent status report" functionality out of Session class 2019-09-23 21:08:59 +08:00
Chocobo1
c7ac96c4f5
Add ability to trigger action via keypad Enter 2019-09-23 19:18:14 +08:00
Chocobo1
4a71b78e2d
Group related code together
And also rename local variables.
2019-09-23 19:18:14 +08:00
Chocobo1
2152a81d11
Add ability to open file via keypad Enter
Closes #11260.
2019-09-23 19:18:07 +08:00
Chocobo1
82276b2a99
Rename variable 2019-09-19 16:50:57 +08:00
Chocobo1
e3b9659fb8
Fix seeding failed after creating a new torrent
Closes #11252.
2019-09-19 16:50:31 +08:00
Chocobo1
bab953298b
Escape HTML in comment field 2019-09-15 14:41:07 +08:00
Chocobo1
f1243871b0
Remove redundant HTML escaping
The text widget is already set to plaintext and doing HTML escaping will
not give us more security but only makes it harder to read.
2019-09-15 14:40:34 +08:00
Chocobo1
edcc74c1ae
Add option to align file to piece boundary when creating new torrent
Alignment is achieved by adding dummy pad files between files which is
handled by libtorrent.
Closes #10460.
2019-09-14 12:16:50 +08:00
Mike Tzou
d2c21ce507
Merge pull request #11195 from Chocobo1/mac
Replace deprecated macro
2019-09-07 11:58:23 +08:00
Chocobo1
0d5b0b9542
Replace deprecated macro
Q_OS_MAC is deprecated and the replacement is Q_OS_MACOS.
2019-09-05 20:16:18 +08:00
Chocobo1
9dc3b18178
Fix filename validation on non-Windows OS
Closes #11191.
2019-09-05 20:05:21 +08:00
Chocobo1
2396ef5bd6
Move error logging of adding peers to the proper place 2019-09-04 16:09:24 +08:00
Mike Tzou
2d13f87ba4
Merge pull request #11145 from Chocobo1/qpixmapcache
Setup pixmap cache in a proper place
2019-08-31 11:50:09 +08:00
Mike Tzou
ee8a7beb41
Merge pull request #11143 from Chocobo1/updater
Move "Check for program updates" checkbox out of Advanced settings
2019-08-30 14:55:55 +08:00
Chocobo1
7e0daf1663
Setup pixmap cache in a proper place
There is no need to reset the cache limit to previous value as
QPixmapCache is an application wide cache.
Also raise the cache size to 64MB.
2019-08-30 14:51:27 +08:00
Mike Tzou
62a3938480
Merge pull request #11085 from Chocobo1/model
Better on-demand reloading of torrent data
2019-08-30 12:45:57 +08:00
Chocobo1
eb784b0d2e
Move "Check for program updates" checkbox out of Advanced settings 2019-08-29 06:15:20 +08:00
Chocobo1
b921d96f4b
Use Q_ASSERT() to check invariants 2019-08-29 06:07:44 +08:00
Chocobo1
72d1d5d2dd
Cut down number of signal emits 2019-08-28 18:38:26 +08:00
Chocobo1
60df790b82
Initialize pointers
Fixup aeabd2d625.
2019-08-28 13:08:36 +08:00
Chocobo1
aeabd2d625
Clean up PeerListWidget class 2019-08-27 14:30:03 +08:00
Mike Tzou
5c7f9530ee
Merge pull request #11060 from Chocobo1/tracker
Improve embedded tracker
2019-08-22 12:18:56 +08:00
Chocobo1
8d0d8e4dcb
Improve embedded tracker
Now it conforms to BEPs more closely.
2019-08-21 18:05:50 +08:00
thalieht
e26573d97f Use FileSystemPathEdit in automated rss downloader 2019-08-20 15:34:51 +03:00
Chocobo1
863c9f9876
Speed up lookup operation in TransferListModel
Previously lookup is O(n), add operation is O(n), remove operation is
O(n).
Now lookup is O(1), add operation is O(1), remove operation is O(n).
n is the number of torrents already recorded.
2019-08-19 11:33:14 +08:00
Chocobo1
9c964cdd97
Fix using out-of-bounds of indexes 2019-08-18 20:00:54 +08:00
Chocobo1
e3483c62ca
Remove explicit conversion to QVariant 2019-08-18 20:00:43 +08:00
Chocobo1
1f3bf75fff
Better on-demand reloading of torrent data 2019-08-17 15:44:16 +08:00
Chocobo1
b34d90df0b
Fix translation issues
By using disambiguation field instead of comment field to differentiate
translations.
2019-08-13 12:20:23 +08:00
Mike Tzou
767f024585
Merge pull request #7475 from thalieht/ratiosuperseed
Add option to enable Super Seeding mode once ratio/time limit is reached. Closes #7160.
2019-08-10 11:33:09 +08:00
thalieht
1f6f1716ad Enable Super Seeding mode once ratio/time limit is reached 2019-08-09 13:06:34 +03:00
Chocobo1
0b6c1694b4
Update python installer URL 2019-08-09 12:47:52 +08:00
Mike Tzou
2427f5d324
Merge pull request #11041 from Chocobo1/splitRef
Revise operations in TorrentHandle class
2019-08-09 12:27:44 +08:00
Chocobo1
8d6b9b6181
Revise sort model and delegate code 2019-08-08 22:17:18 +08:00
Chocobo1
061219d0a2
Simplify code 2019-08-08 21:25:28 +08:00
Chocobo1
b5b678c58f
Replace QString::split() by faster alternatives 2019-08-08 18:57:54 +08:00
Chocobo1
c61116882b
Clean up TransferListModel class 2019-08-08 13:15:47 +08:00
Chocobo1
dcf632b39c
Remove redundant margin properties
Those are the same with the default values.
2019-08-08 13:15:47 +08:00
Mike Tzou
c65c40a5cb
Merge pull request #11020 from Piccirello/remove_workaround
Remove Qt bug workaround
2019-08-06 10:17:52 +08:00
Chocobo1
e90a2c00a5
Replace QList by QVector 2019-08-05 20:56:15 +08:00
Thomas Piccirello
378504de2b Remove Qt bug workaround
The Qt bug is fixed in 5.7.1, while we require Qt >= 5.9.0.
2019-08-05 01:27:47 -07:00
Mike Tzou
c0fc4e6d90
Merge pull request #10993 from Piccirello/adjust-verbiage
Adjust wording to sound more natural
2019-07-31 14:24:58 +08:00
Chocobo1
3ab2fe907f
Remove Windows XP remnants 2019-07-31 02:10:22 +08:00
Chocobo1
cdb0db02f9
Replace obsoleted QSysInfo functions 2019-07-31 02:10:22 +08:00
Tom Piccirello
eaa700791b
Adjust wording to sound more natural 2019-07-29 00:31:09 -07:00
Chocobo1
7ab3479a34
Replace static_cast by qOverload 2019-07-26 22:32:18 +08:00
Chocobo1
ee0d2d2220
Move fspathedit_p to private folder 2019-07-26 22:32:18 +08:00
Chocobo1
60faba60ea
Add availability column
Closes #1632.
2019-07-25 13:17:14 +08:00
Chocobo1
9d88dd2604
Rename class variables 2019-07-24 22:22:02 +08:00
Mike Tzou
ce81103398
Merge pull request #10839 from Piccirello/gui-files-table-file-size
Update remaining size of ignored files to 0
2019-07-23 22:57:32 +08:00
Vladimir Golovnev
cf2e7d77d6
Merge pull request #10950 from glassez/drop-deprecated
Don't use deprecated libtorrent features
2019-07-23 09:19:15 +03:00
Vladimir Golovnev (Glassez)
ad6a40d5f4
Extract PeerAddress class into separate file 2019-07-23 06:27:35 +03:00
Thomas Piccirello
1b23a27acb Update remaining size of ignored files to 0
Also fixes a bug where ignoring the last item within a folder wouldn't recalculate the folder's size
2019-07-21 12:51:35 -07:00
Vladimir Golovnev (Glassez)
60ffa3030e
Don't use deprecated libtorrent features 2019-07-21 19:28:28 +03:00
Chocobo1
4a90716843
Add override keyword to functions 2019-07-19 11:58:56 +08:00
Chocobo1
07263d2d70
Move implementation to its own file 2019-07-18 00:30:44 +08:00
Mike Tzou
1e70c52e7a
Merge pull request #10934 from Chocobo1/delete
Rely on Qt ownership to delete class members
2019-07-17 12:02:30 +08:00
Chocobo1
e74b984a0a
Rely on Qt ownership to delete class members 2019-07-16 18:42:26 +08:00
Prince Gupta
8267a4fef9 Incorporate GuiIconProvider inside UIThemeManager 2019-07-16 09:31:33 +05:30
Mike Tzou
94e2c44840
Merge pull request #10918 from Chocobo1/trackers
Various code clean up
2019-07-15 09:59:45 +08:00
Chocobo1
7b568b07e6
Clean up CMakeLists.txt 2019-07-13 19:55:13 +08:00
Chocobo1
032883e278
Move LineEdit files out of subfolder 2019-07-13 19:46:53 +08:00
Chocobo1
23ebb3134b
Move QLabels out of class 2019-07-13 19:38:37 +08:00
Chocobo1
cc663746eb
Forward declare some classes 2019-07-13 19:38:37 +08:00
thalieht
7b31868e3c Rename priority to queue in the context of torrents 2019-07-13 14:04:16 +03:00
Chocobo1
599bfc0735
Use Qt object ownership to handle QShortcut deletions 2019-07-13 13:24:27 +08:00
Chocobo1
662e1e6134
Clean up code in TrackerListWidget class 2019-07-13 12:53:26 +08:00
Chocobo1
b55c6a360a
Implement tri-state checkbox action in menu
The new TriStateAction class is an improvement of the old one in the
sense that:
1. Have public method to set states.
2. Can connect to the usual Qt slots.
3. Draws checkbox at the correct offset (where QAction draws) in menu
   and better handling of mouse clicking and keyboard navigating.
2019-07-12 19:57:31 +08:00
Mike Tzou
24932f6cb6
Merge pull request #10895 from Chocobo1/tracker
Add dialog to mass edit torrent's tracker
2019-07-12 10:59:50 +08:00
Chocobo1
8eabaf5eb2
Replace QList by QVector 2019-07-11 12:10:19 +08:00
Chocobo1
9e7f50517e
Add "Tracker entries" dialog 2019-07-11 12:10:19 +08:00
Prince Gupta
a24925c858 Allow styling with QSS stylesheets 2019-07-09 19:56:55 +05:30
Chocobo1
ed2199b91c
Add "File pool size" option 2019-07-03 18:06:07 +08:00
Chocobo1
6286bc716c
Add "Socket backlog size" option
The default value in libtorrent is 5 which is too small nowadays.
The new default value 30 is chosen to be in line with
QTcpServer::maxPendingConnections().
2019-07-03 17:36:56 +08:00
Mike Tzou
4b25f87859
Merge pull request #10874 from Chocobo1/qt
Replace obsoleted Qt functions
2019-07-02 10:57:06 +08:00
Chocobo1
4eff268095
Replace obsoleted QFontMetrics::width()
Qt 5.13 marked QFontMetrics::width() obsolete.
2019-07-01 14:48:53 +08:00
Vladimir Golovnev (Glassez)
c7f3693ad1
Implement "Application instances manager" 2019-06-30 20:02:46 +03:00
Chocobo1
da2bfd2457
Replace QList by QVector 2019-06-26 20:30:07 +08:00
Chocobo1
5b9b5ce577
Remove buttons from search widget
These buttons are replaced by right-click menu actions.
2019-06-26 20:30:07 +08:00
Chocobo1
4f5302adf8
Add more copy field actions to search widget
Closes #10250.
2019-06-26 20:30:07 +08:00
Chocobo1
26ff9150a2
Rename label in search widget 2019-06-26 10:52:13 +08:00
Chocobo1
af5af0ad3f
Remove unused lambda capture 2019-06-25 16:12:51 +08:00
Chocobo1
32a861fd1b
Add right click menu to SearchJobWidget 2019-06-25 16:12:51 +08:00
Chocobo1
cf89c2f5bf
Properly deallocate actions when menu closed
Fixup 3748b995ff.
2019-06-24 11:02:35 +08:00
Chocobo1
412e326cf2
Avoid allocating a new menu/action manually 2019-06-24 11:02:35 +08:00
Chocobo1
04e7b3f6d2
Move copy actions under a submenu 2019-06-24 11:02:34 +08:00
Chocobo1
0b1b3c1f84
Use numeric_limits instead of constants from C
In C++, using numeric_limits is more idiomatic compared to using constants.
2019-06-23 11:16:58 +08:00
Chocobo1
75c80c3716
Remove limits of "Disk cache expiry interval" setting 2019-06-22 17:13:26 +08:00
Chocobo1
042cd4267f
Remove upper limit of "Disk cache" setting 2019-06-22 17:13:24 +08:00
Chocobo1
88c3ffbef8
Avoid creating unnecessary event loops
This is part 2.
2019-06-20 11:42:54 +08:00
Chocobo1
4880dc812c
Use appropriate type 2019-06-19 18:52:24 +08:00
Chocobo1
516c968373
Support year unit in userFriendlyDuration() 2019-06-19 18:52:24 +08:00
Chocobo1
1de4c2497c
Fix wrong "Time Active" value displayed
Closes #9612.
2019-06-19 18:52:24 +08:00
Chocobo1
19f50a363d
Fix crash when removing phantom tags
Normally a tag is stored in both session and torrent's fastresume.
A phantom tag is a tag that is stored in fastresume but not in
session.
This crash can occur when user resets his config file and choose
to remove tag from torrent.

Closes #10569.
2019-06-19 18:52:24 +08:00
Chocobo1
e83019bdfa
Set wheel event to accepted only if we handle it 2019-06-19 18:52:24 +08:00
Mike Tzou
cfd02a4355
Merge pull request #10786 from Chocobo1/dialog
Avoid creating unnecessary event loops
2019-06-19 11:02:09 +08:00
Vladimir Golovnev (Glassez)
8e65317d61
Rename "fromNativePath" to "toUniformPath"
Unlike "toNativePath" which name clearly reflects the function result
"fromNativePath" has no such clear meaning.
Since this function converts path into uniform format "toUniformPath"
is better name.
2019-06-17 15:55:49 +03:00
Chocobo1
3748b995ff
Avoid creating unnecessary event loops
The `exec()` method will create another event loop and transfer
control over there which might introduce unexpected bugs.
2019-06-17 20:44:57 +08:00
Mike Tzou
206bb018dd
Merge pull request #10801 from Chocobo1/timeout
Add WebAPI session timeout settings
2019-06-17 00:18:01 +08:00
Mike Tzou
46d445d042
Merge pull request #10792 from Chocobo1/rename2
Remove empty leftover folders after rename properly
2019-06-16 12:22:22 +08:00
Chocobo1
440860c4a9
Properly remove empty leftover folders after rename
TorrentInfo::origFilePath will return the very original path from
.torrent file, not the most recent file path before the rename operation
and thus the code would not be working as we expected.
2019-06-15 19:08:23 +08:00
Chocobo1
89124bdcc8
Add WebAPI session timeout settings
Raise default timeout to 1 hour.
2019-06-15 18:57:19 +08:00
silverqx
3e97793ef1
Focus behavior row in Options dialog 2019-06-13 17:31:54 +02:00
silverqx
4f4f435e76
Add zlib version to GUI & stackdump 2019-06-12 08:02:24 +02:00
Chocobo1
eabcae1018
Fix unable to rename folder on Windows
The bug occurs when the new path and old path only differ by letter case.
2019-06-09 19:07:43 +08:00
Chocobo1
9c747d3c6d
Move renameSelectedFile(BitTorrent::TorrentInfo &) 2019-06-09 19:07:43 +08:00
Chocobo1
62ccfd37b2
Move renameSelectedFile(BitTorrent::TorrentHandle *) 2019-06-09 19:07:43 +08:00
Mike Tzou
370544764e
Merge pull request #10750 from Chocobo1/modal
Fix unable to control add torrent dialogs when opened simultaneously
2019-06-06 23:16:35 +08:00
Mike Tzou
f3c0cc3cee
Merge pull request #10763 from Chocobo1/connect
Use Qt5 connect syntax
2019-06-06 10:18:46 +08:00
Chocobo1
e071c31a4e
Use Qt5 connect syntax 2019-06-05 14:17:44 +08:00
Chocobo1
dc9d0ed76f
Fix unable to control add torrent dialogs when opened simultaneously 2019-06-05 13:24:49 +08:00
Chocobo1
03fdc0e1c4
Remove redundant disconnect()
The dialog is going out-of-scope in these instance and the signal-slot connection will disconnect
automatically.
2019-06-05 13:22:50 +08:00
Chocobo1
014273d7ec
Drop support for "BC Link" format
Fixup 19d6de795c.
2019-06-05 00:42:46 +08:00
thalieht
70f8882f87 Group Qt forward declarations separately from the others 2019-06-04 17:48:55 +03:00
thalieht
9995967fbf Remove some unused #include 2019-06-04 17:48:55 +03:00
thalieht
4370a7eb12 Forward declare in a few places 2019-06-04 17:48:55 +03:00
Mike Tzou
87dcbbbd23
Merge pull request #10734 from Chocobo1/folder
Use native folder icon in content tree
2019-06-02 09:40:17 +08:00
Chocobo1
f52dcc08eb
Use native folder icon in content tree
This icon is used in content tree where all icons should be OS native
and not the ones from qbt.
2019-06-01 10:00:42 +08:00
Chocobo1
49df1cd3c7
Use less operations when building strings 2019-05-31 14:52:08 +08:00
Chocobo1
0d9fcb0c1d
Fix arrow too large on macOS
By changing to use natvie UI tree controls.

Closes #10709.
2019-05-28 22:35:22 +08:00
Mike Tzou
c5430030e3
Merge pull request #10690 from Chocobo1/rtl
Various visual tweaks
2019-05-26 09:23:22 +08:00
Mike Tzou
ebdf5225a8
Merge pull request #10684 from jagannatharjun/arrow-transfercategory
Replace CheckBox with Arrow in transferlistfilterswidget
2019-05-25 11:21:06 +08:00
Chocobo1
ccbb4576b6
Tweak visuals in Options dialog 2019-05-23 21:27:50 +08:00
Chocobo1
d7afc91975
Avoid combo boxes extending to the right in Options dialog 2019-05-23 21:07:44 +08:00
Prince Gupta
e283026a3c Replace CheckBox with Arrow in transferlistfilterswidget.cpp 2019-05-22 21:08:04 +05:30
Chocobo1
1e029da5ad
Fix search icon placement when using RTL languages 2019-05-22 22:22:12 +08:00
Chocobo1
ed6bb0efdc
Replace QList by QVector for tracker related operations 2019-05-22 12:57:22 +08:00
Chocobo1
802af70e2f
Fix typos 2019-05-19 18:51:09 +08:00
Chocobo1
e92209475e
Use range-based for loops 2019-05-19 18:51:09 +08:00
Chocobo1
e288de7ec1
Forward declare as much as possible 2019-05-19 12:06:18 +08:00
Mike Tzou
3d6dccc689
Merge pull request #10627 from Chocobo1/alg
Improve removeIf() to support other types
2019-05-16 10:45:55 +08:00
Evgeny Lensky
62c72091ce
Change "Add new torrent" dialog to horizontal layout 2019-05-14 11:03:56 +08:00
Chocobo1
c6f3da1097
Improve removeIf() to support set types
We can now replace QMutable*Iterator by removeIf() which usage is more consistent with other
algorithm functions.
2019-05-14 01:26:01 +08:00
Ekin Dursun
c0c2fe247b Don't turn screen blank when closed to system tray
Closes #9240 and possibly #9121, as @zeule suggested here: https://github.com/qbittorrent/qBittorrent/issues/9240#issuecomment-408025722.
2019-05-07 02:08:46 +03:00
Mike Tzou
3a3dec1707
Merge pull request #10445 from Chocobo1/crash
Work around crashing in Qt networking library
2019-05-03 22:54:25 +08:00
Mike Tzou
2d7b833ae6
Merge pull request #10537 from Chocobo1/template
Minor cleanups
2019-05-01 23:51:23 +08:00
Chocobo1
375de4f8a6
Replace QMap with QHash when sensible 2019-05-01 11:09:25 +08:00
dzmat
7de0f9abed Change number of time axis divisions from 5 to 6 for convenience 2019-04-22 00:15:13 +07:00
dzmat
0af17bf7e9 Add 12 hour and 24 hour speed graphs 2019-04-22 00:15:13 +07:00
Mike Tzou
19dfec1e0a
Merge pull request #10464 from thalieht/torrent-size-limit
Increase the download request size limit from 10 to 100 MiB
2019-04-11 10:14:49 +08:00
thalieht
25102b9c5d Increase the download size limit to 100 MiB 2019-04-10 11:39:27 +03:00
Chocobo1
4bf4313862
Initialize class variable via constructor 2019-04-08 23:29:14 +08:00
thalieht
371a090cec Rename "Prefer encryption" to "Allow encryption"
Because it actually prefers non-encryption but allows it if requested.
2019-04-05 14:18:49 +03:00
Chocobo1
1ea61db1fb
Disable downloading tracker favicons by default
Workaround for a crash in Qt networking library, source:
https://github.com/qbittorrent/qBittorrent/issues/9667#issuecomment-464445025

Closes #9667.
2019-04-05 13:54:40 +08:00
thalieht
3731a3ea65 Make num enter key work the same as return in searchjobwidget 2019-03-22 20:01:48 +02:00
Vladimir Golovnev (Glassez)
ead078a38e
Add preliminary support of libtorrent v1.2
libtorrent v1.2 should be built with deprecated features enabled.
2019-03-18 15:17:03 +03:00
Mike Tzou
d1b0c230ed
Merge pull request #10366 from Chocobo1/logger
Avoid performance penalty when logger is full
2019-03-17 15:04:53 +08:00
Chocobo1
cb9a160366
Utilize parent pointer appropriately 2019-03-15 14:29:07 +08:00
Chocobo1
a3019f56b0
Clean up code 2019-03-15 14:29:06 +08:00
thalieht
4c53447d35 Remove the max half-open connections option from GUI
Its functionality was deprecated long ago.
2019-03-13 21:08:40 +02:00
thalieht
bcfa62cc76 Rename "#" column to "Tier" in the tracker list 2019-03-13 21:08:40 +02:00
thalieht
cccaca0c01 Center align the section labels in advanced settings 2019-03-13 21:08:40 +02:00
thalieht
3fca49e44d Add documentation links to some advanced settings 2019-03-13 21:08:40 +02:00
Mike Tzou
c47d6b517a
Merge pull request #10355 from Chocobo1/label
Improve AdvancedSettings::addRow()
2019-03-11 00:25:35 +08:00
Vladimir Golovnev
928ce940c9
Merge pull request #10346 from glassez/download-manager
Improve "Download manager"
2019-03-10 09:13:07 +03:00
Vladimir Golovnev (Glassez)
746916a963
Use DownloadHandler behind the scenes 2019-03-08 13:00:37 +03:00