Andrei Stepanov
159f93e051
Fix typo in optionsdialog.cpp
...
qBittorent -> qBittorrent
2020-04-26 20:59:42 +04:00
Chocobo1
4e961845cf
Clean up variable initialization order
2020-04-26 10:21:23 +08:00
sledgehammer999
480e732694
Bump Web API version
2020-04-25 00:20:15 +03:00
sledgehammer999
13a96407b3
Sync translations from Transifex and run lupdate
2020-04-25 00:11:21 +03:00
Mike Tzou
7bc572afb9
Merge pull request #12602 from Chocobo1/metatype
2020-04-24 22:13:27 +08:00
Vladimir Golovnev
c10318b576
Merge pull request #12549 from SeproDE/rss-api
...
Expand RSS related WebAPI
2020-04-24 07:46:37 +03:00
Vladimir Golovnev
4b897e7702
Merge pull request #12603 from glassez/fix-crash
...
Fix crash when torrent is deleted on limit reached
2020-04-24 07:45:35 +03:00
Vladimir Golovnev (Glassez)
22bda12d6c
Fix crash when torrent is deleted on limit reached
2020-04-23 16:56:53 +03:00
Chocobo1
9efd5eaed3
Register datatype properly
...
Qt 5.9.5 doesn't seem to recognize it, this patch fixes it.
Fix up: d8401c76f5
.
Related: #12601 .
2020-04-23 21:42:51 +08:00
Chocobo1
2729c0cb6d
Suppress misleading warning message
...
QString::split() was giving a non-empty QStringList, and
that caused Session::setBannedIPs() to emit misleading warning message.
2020-04-23 21:01:33 +08: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
Sepro
98bb63b390
WebAPI: Change delimiter from string to char in preferences API
2020-04-22 19:14:06 +02:00
Sepro
a3b58e59da
WebAPI: Expand RSS related API
...
Added markAsRead API method with optional parameter for specifying single article.
Added the rss_smart_episode_filters and rss_download_repack_proper_episodes keys to preference api.
Added matchingArticles API method for retrieving articles that match specified rule.
2020-04-22 19:13:17 +02:00
sledgehammer999
f1d02c6aee
Sync translations from Transifex and run lupdate
2020-04-22 18:44:30 +03:00
sledgehammer999
f758b24486
Merge pull request #12487 from an0n666/no-localhost-on-invalid
...
Use configured net interface even when it is missing
2020-04-22 17:49:08 +03:00
Mike Tzou
5cfec83385
Merge pull request #12568 from NotTsunami/upnp-fix
...
WebUI: Fix UPnP lease duration get/set
2020-04-22 02:01:08 +08:00
an0n666
e3e5da7a71
Use configured net interface even when it is missing
2020-04-21 19:04:43 +06:00
NotTsunami
075633cc40
WebUI: Fix UPnP lease duration get/set
...
Add missing setProperty and getProperty calls for the new UPnP lease
duration setting.
Fixes 6b4925d222
.
Closes #12566 .
2020-04-21 01:36:13 -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
Mike Tzou
e05ef12e68
Merge pull request #12544 from Chocobo1/final
...
Add final specifier to GUI classes
2020-04-20 00:33:47 +08:00
Chocobo1
1b80890696
Reduce padding in class
...
TorrentHandleImpl size is reduced from 768 bytes to 736 bytes.
CreateTorrentParams size didn't change.
Size numbers are from x64.
2020-04-19 11:44:41 +08:00
Chocobo1
ac2d063add
Move initialization default values to header
2020-04-19 11:42:49 +08:00
Chocobo1
16a76eee9f
Add final specifier to GUI classes
...
Follow up d3d3f7dbb3
.
2020-04-19 10:59:59 +08:00
Mike Tzou
30ce2dfdf3
Merge pull request #12530 from Chocobo1/logger
...
Reduce padding in structure
2020-04-19 10:17:18 +08:00
Mike Tzou
b06d44b242
Merge pull request #12526 from Chocobo1/pr_12162
...
Change default upload slot choking limits
2020-04-19 10:17:04 +08:00
Mike Tzou
349a07a443
Merge pull request #12531 from Chocobo1/final
...
Add final specifier to classes
2020-04-19 10:16:44 +08:00
sledgehammer999
a17b1f2b78
Use static_cast for explicit type conversions
2020-04-18 18:22:40 +03:00
Chocobo1
648d44d9b9
Reduce padding in structure
...
Log::Msg originally takes 32 bytes, now shrinks to 24 bytes.
Log::Peer originally takes 40 bytes, now shrinks to 32 bytes.
2020-04-18 18:33:46 +08:00
thalieht
f0549b4cb2
Make a few cosmetic changes in code
2020-04-17 19:51:26 +03:00
Chocobo1
d3d3f7dbb3
Add final specifier to classes
...
This allow compilers to generate more efficient code.
2020-04-17 13:18:40 +08: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
an0n666
ec6b249509
Change default upload slot choking limits
2020-04-16 23:46:48 +08: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
e030fc067b
Merge pull request #12422 from an0n666/increase-timeout
...
Change default stop_tracker_timeout settings
2020-04-15 11:44:29 +08:00
an0n666
1168387df0
Change default stop_tracker_timeout settings
2020-04-13 16:05:36 +06:00
Raif Atef
1549b782e6
Do not use 0.0.0.0 or [::] for outgoing interfaces
...
Fixes #12443
2020-04-12 08:41:18 +02:00
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
Mike Tzou
0429ca3fb5
Merge pull request #12464 from Chocobo1/date
...
Fix date format for "Last seen complete"
2020-04-11 12:30:23 +08:00
Chocobo1
31648a4433
Fix date format for "Last seen complete"
...
Closes #12462 .
2020-04-10 13:06:56 +08:00
Mike Tzou
d8356deefa
Merge pull request #12449 from SeproDE/fix-addMultiplePeers
...
Fix add multiple peers from webui
2020-04-10 12:22:22 +08:00
Mike Tzou
43e5e242ff
Merge pull request #12450 from Chocobo1/noBuffer
...
Avoid holding encoded resume data in memory
2020-04-09 13:21:32 +08:00
Sepro
2c8230f1ae
Fix unable to add multiple peers in WebUI
...
Wrong delimiter was used.
2020-04-08 18:55:02 +02:00
Chocobo1
e7890fb727
Preallocate output buffer
2020-04-08 13:06:39 +08:00
Chocobo1
d476ae4f14
Fix header inclusion order
2020-04-08 11:58:12 +08:00
Vladimir Golovnev
eb0295197c
Merge pull request #12301 from jozsefsallai/master
...
Better Python path detection on Windows
2020-04-07 22:29:26 +03:00
Chocobo1
f76d56e224
Suppress unused variable warning on macOS
2020-04-07 16:02:10 +08:00
Chocobo1
d8401c76f5
Avoid holding encoded resume data in memory
...
Now it the encoded resume data will be streamed to file instead of a
temporary buffer holding the whole of it.
2020-04-07 16:02:09 +08:00
Vladimir Golovnev
fe81633403
Merge pull request #12436 from glassez/fix-savepath
...
Save "resume data" when torrent storage is moved
2020-04-07 09:54:51 +03:00
an0n666
026aad2c04
Remove deprecated strict super seeding mode from advanced settings
2020-04-07 09:54:32 +06:00
Mike Tzou
f58f425175
Merge pull request #12430 from rwasef1830/add-outgoing-interfaces
...
Fix outgoing interfaces not getting assigned in case addr is not null.
2020-04-07 10:10:32 +08:00
Mike Tzou
342eec7f83
Merge pull request #12382 from adem4ik/master
...
Remove white outline around mascot.png
2020-04-07 09:39:13 +08:00
Raif Atef
bf1c9e34d7
Fix outgoing interface is not getting assigned
...
Assignment was missing in main branch of condition statement.
Closes https://github.com/qbittorrent/qBittorrent/issues/12421
2020-04-06 14:45:44 +02:00
Vladimir Golovnev (Glassez)
0a8c2f75af
Save "resume data" when torrent storage is moved
2020-04-06 12:16:27 +03:00
Mike Tzou
26941a5b02
Merge pull request #12427 from Chocobo1/io
...
Avoid inefficient behavior
2020-04-06 12:13:30 +08:00
Mike Tzou
3021b99a50
Merge pull request #12420 from Chocobo1/locale
...
Sort locale language list
2020-04-06 12:12:50 +08:00
Mike Tzou
cc090c8e37
Merge pull request #12416 from NotTsunami/master
...
Set disk cache size for older libtorrent versions
2020-04-06 12:12:12 +08:00
Chocobo1
2fa6a7f6f5
Avoid inefficient behavior
...
Since the class needs to be copy-constructible, there may be many
copies of an instance. So instead of writing to the device on every
destructor call, only flush buffer on the last destructor call.
2020-04-06 01:04:12 +08:00
Chocobo1
5eaedb13e5
Sort locale language list
2020-04-05 19:21:37 +08:00
NotTsunami
e48612a703
Set disk cache size for older libtorrent versions
...
Libtorrent versions older than 1.2.6 have a bug when setting disk
cache size to auto.
See 6c880159c9
.
2020-04-04 21:36:01 -04: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
Mike Tzou
a10cee0f2b
Merge pull request #12364 from Chocobo1/fileOutIter
...
Avoid holding entire file in memory
2020-04-04 11:07:59 +08:00
adem
eddc82d8a5
Remove white outline around mascot.png
2020-04-03 23:26:45 +04:00
Vladimir Golovnev (Glassez)
b759a71c5d
Fix sub-sorting of Transfer list
...
Closes #12330 .
2020-04-03 19:09:41 +03:00
Chocobo1
9f281c2d25
Avoid holding entire file in memory
...
Previously we need a file buffer that is as large as the file size and
this could be a problem when user has less free memory available or
having very large data. Now with the help of `FileOutputIterator`,
we can have a much smaller, fixed size immediate file buffer and also
the code looks nice with `lt::bencode()`.
2020-04-03 18:27:13 +08:00
Mike Tzou
4b409700b0
Merge pull request #12372 from Chocobo1/webui
...
Fix mismatch ID
2020-04-03 13:02:15 +08:00
Chocobo1
42d5d63867
Remove redundant type attribute
...
It already defaults to `text/css` if value is absent (in HTML5).
2020-04-03 00:15:04 +08:00
Chocobo1
e0c841d1e6
Fix mismatch ID
2020-04-03 00:00:32 +08:00
Chocobo1
17f608685d
Improve logging for errors
...
This commit also allows the strings to be translated.
2020-04-02 11:20:09 +08:00
József Sallai
f9564564f8
Detect python3 executable on Windows
2020-04-02 00:31:41 +03:00
Vladimir Golovnev
96c5af7ae9
Merge pull request #12363 from glassez/fix-unexpected-resume
...
Fix unexpected torrent resume after app restart
2020-04-01 20:20:44 +03:00
Vladimir Golovnev (Glassez)
8bd9a97f6f
Fix unexpected torrent resume after app restart
...
Closes #12322 .
2020-04-01 18:01:18 +03:00
sledgehammer999
0dfa3a9c6f
Sync translations from Transifex and run lupdate
2020-04-01 17:41:24 +03:00
Vladimir Golovnev
bc159121dc
Merge pull request #12348 from glassez/fix-multi-inst
...
Prevent multiple instances for the same app config
2020-03-31 18:49:00 +03:00
sledgehammer999
bbe5465ba6
Merge pull request #12317 from sledgehammer999/fix_broken_save_path
...
Fix broken UNC paths in fastresumes on Windows
2020-03-31 18:34:31 +03:00
Vladimir Golovnev (Glassez)
4e6790dfbb
Prevent multiple instances for the same app config
2020-03-31 17:16:47 +03:00
sledgehammer999
13af503003
Fix broken UNC paths in fastresumes on Windows
...
See #12245 and #12282
2020-03-30 15:21:15 +03:00
Mike Tzou
59f99bb984
Merge pull request #12282 from Tester798/fix-12245
...
Fix regression when fastresume contains network path
2020-03-30 12:53:17 +08: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
Mike Tzou
4d99328b8f
Merge pull request #12228 from LameLemon/alt-title
...
Added alt and title tags for WebUI footer
2020-03-29 12:28:35 +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
Mike Tzou
82c23e67a4
Merge pull request #12299 from Chocobo1/initialize
...
Initialize struct variables
2020-03-28 10:53:38 +08:00
Mike Tzou
c6e26f5dd0
Merge pull request #12232 from Chocobo1/warning
...
Add logging for SOCKS5 proxy errors
2020-03-27 22:22:13 +08:00
Chocobo1
af430d6635
Initialize struct variables
...
clang static analyzer was emitting some warning about uninitialized
variable usage and this patch fixes it.
2020-03-27 16:01:01 +08:00
Mike Tzou
2408ce98e6
Merge pull request #12285 from Chocobo1/log
...
Save log file in UTF-8 encoding
2020-03-27 09:39:54 +08:00
Mike Tzou
6b5b5df90c
Merge pull request #12283 from Chocobo1/qtTr
...
Include translation resources with file globbing
2020-03-27 09:38:46 +08:00
LameLemon
757274d315
Add alt and title tags for WebUI footer
...
Improves accessibility of the WebUI. Closes #12219 .
2020-03-26 19:05:16 +00:00
Mike Tzou
c0b0c6dcfc
Merge pull request #12259 from Chocobo1/dtor
...
Rely on Qt ownership to free resources
2020-03-27 01:06:39 +08:00
Mike Tzou
185d8c97c1
Merge pull request #12273 from Kolcha/hidpif
...
Don't round scaling factor
2020-03-27 01:06:08 +08:00
Tester798
1c6b4c0a79
Fix regression when fastresume contains network path
...
Closes #12245 after regression was introduced in #11785 .
2020-03-26 18:54:13 +02:00
Chocobo1
54a685e953
Add logging for SOCKS5 proxy errors
2020-03-26 21:51:05 +08:00
Chocobo1
c52737e07c
Avoid log file excessive flushing
...
Excessive flushing could happen when a lot of logging happens in a short
time interval.
2020-03-26 16:12:24 +08:00
Chocobo1
12396a7582
Save log file in UTF-8 encoding
...
Otherwise it uses sytem defaults: usually UTF-8 on Linux and local 8-bit
encoding on Windows.
2020-03-26 16:00:57 +08:00
Chocobo1
d179c6d5a1
Rename variable
2020-03-26 15:49:14 +08:00
Chocobo1
9630e7b689
Rely on Qt ownership to free resources
...
The m_reply has already changed parent in
DownloadHandlerImpl::assignNetworkReply() and thus we can rely on Qt
ownership to delete the object.
2020-03-26 14:39:18 +08:00
Chocobo1
1466c562e5
Include translation resources with file globbing
...
This will include all qtbase_*.qm files and only explicitly listed
qt_*.qm files will be included.
2020-03-26 14:10:20 +08:00
Nick Korotysh
a9b0d84df9
Don't round scaling factor
...
Qt 5.14 introduced new feature related to HighDPI screens support,
this parameter is called "scale factor rounding policy", and it is
intended to improve fractional scale factor support (like 150%).
Qt::PassThrough value guarantee that no any rounding will applied to
scale factor, and will be used as is.
2020-03-25 18:36:34 +03:00
Chocobo1
7de8a4d6e0
Construct QString more efficiently
2020-03-25 12:00:11 +08:00
Chocobo1
2c23840947
Allow to translate error messages
2020-03-25 12:00:11 +08:00
sledgehammer999
fcc87b4e9b
Sync translations from Transifex and run lupdate
2020-03-24 16:29:43 +02:00
sledgehammer999
fbf325c6d6
Merge pull request #12220 from kasper93/header
...
Add missing QPainterPath header include
2020-03-22 23:16:31 +02:00
Mike Tzou
18156bd676
Merge pull request #12154 from an0n666/remove-path-limit
...
NSIS: Add option to remove Windows path length limitation & Update manifest to support long path
2020-03-22 23:30:53 +08:00
an0n666
a711558ba0
NSIS: Add option to remove Windows path length limitation
2020-03-22 16:46:46 +02:00
Kacper Michajłow
e2c9ca5ee5
Add missing QPainterPath header include
2020-03-22 14:58:44 +01:00
Mike Tzou
ab30cfcdb0
Merge pull request #12207 from FranciscoPombal/fix-webapi
...
WebAPI: fix matching uncategorized torrents
2020-03-22 21:23:56 +08:00
FranciscoPombal
e496e664db
WebAPI: Always allow whitespace in category names
2020-03-22 12:16:06 +00:00
FranciscoPombal
7d24e1c063
WebAPI: fix matching uncategorized torrents
...
Closes #11748 .
2020-03-22 03:49:06 +00:00
Mike Tzou
f44f1ffc97
Merge pull request #12206 from thalieht/monitoredTMM
...
Disable Auto TMM when not using default savepath from monitored folder
2020-03-21 12:23:40 +08:00
thalieht
598c856c88
Disable Auto TMM when not using default savepath from monitored folder
2020-03-19 21:13:44 +02: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
Vladimir Golovnev
c323f64c96
Merge pull request #12188 from thalieht/queuemove
...
Append new move storage job to queue
2020-03-17 07:18:27 +03:00
thalieht
18289f2395
Append new move storage job to queue
...
fixup e4ff206e3c
2020-03-16 22:39:31 +02: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
Chocobo1
6c307774f1
Get library version strings at runtime
...
We mostly use boost in header-only mode, so it is a non-trivial job to
get the version string at runtime.
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
f80b7affd9
Merge pull request #12138 from Chocobo1/dist
...
Update Qt translations
2020-03-10 01:29:08 +08:00
Vladimir Golovnev
a7b342edcb
Merge pull request #12083 from glassez/app-instances
...
Allow single app instance per configuration
2020-03-09 07:40:48 +03:00
Chocobo1
7b25dd24d0
Update Qt translation files
2020-03-09 09:48:15 +08: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
Vladimir Golovnev (Glassez)
38e54206d5
Allow single app instance per configuration
2020-03-06 08:59:59 +03:00
Mike Tzou
73ee901c45
Merge pull request #12113 from Chocobo1/smart_ptr
...
Use helper functions to construct smart pointers
2020-03-06 13:12:41 +08:00
Chocobo1
290d198977
Use proper type for piece index
2020-03-06 01:47:28 +08:00
Chocobo1
2157e500ef
Use helper functions to construct smart pointers
2020-03-05 19:32:28 +08:00
Mike Tzou
ca01b049a6
Merge pull request #12108 from Chocobo1/bits
...
Avoid unnecessary memory writes
2020-03-04 23:50:12 +08:00
Mike Tzou
949daf6c73
Merge pull request #12037 from an0n666/seed-mode-fix
...
Check if file exists in seed mode
2020-03-04 23:49:47 +08:00
an0n666
f7d2085b0a
Check if file exists in seed mode
2020-03-04 17:38:00 +06:00
Chocobo1
24cd7c3611
Avoid unnecessary memory writes
...
Before this change, qbt spent ~1% in these two functions, now it
only spends about ~0.5% in my naive testing.
2020-03-04 03:18:39 +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
b519ece18b
Merge pull request #12095 from glassez/resume-torrent
...
Let libtorrent decide whether to resume a torrent
2020-03-01 19:54:16 +03:00
Vladimir Golovnev (Glassez)
74884d57ec
Let libtorrent decide whether to resume a torrent
2020-03-01 08:08:01 +03:00
Mike Tzou
9649c2a163
Merge pull request #12043 from FranciscoPombal/fix-embedded-tracker
...
Fix embedded tracker
2020-02-27 21:06:58 +08: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
FranciscoPombal
966f891d91
Fix response to event=stopped
...
BEP-3 says all tracker responses to valid announce requests should be bencoded dictionaries with at least the "peers" and "interval" keys; the "peers" key can be empty.
Also clarify support for BEP-21.
2020-02-26 20:47:33 +00:00
FranciscoPombal
af6f63f82c
Don't use IPv4-mapped IPv6
...
Always register peers with either IPv4 or IPv6.
Fixes potential connection issues.
Also clarify related BEP-24 support.
2020-02-26 20:44:09 +00:00
FranciscoPombal
abc69dfd20
Fix BEP-23 support
...
The embedded tracker was returning a non-compliant response.
The peer lists should be packed strings instead of lists.
Also clarify level of compliance with BEP-7.
2020-02-26 20:42:14 +00:00
FranciscoPombal
9f045500d1
Fix IPv6 endianness
2020-02-26 20:42:07 +00: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
FranciscoPombal
dc6a56afcb
Revert using random port by default
...
Revert change introduced in https://github.com/qbittorrent/qBittorrent/pull/11637 and also revert the associated follow-up https://github.com/qbittorrent/qBittorrent/pull/12000 .
Reason: https://github.com/arvidn/libtorrent/pull/4335
2020-02-21 14:47:37 +00:00
sledgehammer999
193da7f2f9
Merge pull request #12014 from sledgehammer999/alt_IP_db_provider
...
Use IP geolocation database by DB-IP instead of MaxMind
2020-02-18 17:05:52 +02:00
sledgehammer999
ea1481beef
Use IP geolocation database by DB-IP instead of MaxMind
...
Closes #11792
2020-02-18 16:11:28 +02:00
Mike Tzou
bf6a88b3d2
Merge pull request #12021 from Chocobo1/trackerentry
...
Simplify TrackerEntry::status() logic
2020-02-18 02:22:05 +08:00
Chocobo1
e825473289
Simplify TrackerEntry::status() logic
2020-02-17 18:46:30 +08: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
Mike Tzou
04132f6266
Merge pull request #11999 from an0n666/fix-not-contacted-tracker
...
Do not list not contacted trackers as error
2020-02-16 20:27:41 +08:00
an0n666
8423f43209
Do not list not contacted trackers as error
2020-02-15 19:44:14 +00:00
sledgehammer999
385d7247b7
Merge pull request #12016 from Chocobo1/errMsg
...
Include resume folder path in exception message
2020-02-15 19:41:39 +02:00
Vladimir Golovnev
362305f339
Merge pull request #12013 from glassez/fix-rss
...
Don't access download handler after it's finished
2020-02-15 07:02:59 +03:00
Mike Tzou
dbea2d95f9
Merge pull request #12004 from Chocobo1/authCount
...
Add configurable ban options for WebUI
2020-02-15 09:43:16 +08:00
Chocobo1
45c357dfe2
Include resume folder path in exception message
...
The message in RuntimeError exception will be displayed to the users and
users would be clueless if we don't show the path.
2020-02-15 02:48:55 +08:00
Chocobo1
6eb190c373
Expose WebUI ban duration to users
2020-02-14 16:23:30 +08:00
Chocobo1
ec61ef5145
Fix coding inconsistencies in preferences.html
...
1. Format table tags properly
2. Add a proper label tag
3. Don't use abbreviation for seconds, we use full name everywhere else
2020-02-14 16:23:03 +08:00
Chocobo1
4f7b799732
Use QDeadlineTimer for tracking WebUI banned duration
...
It simplifies our code and the new timer is monotonic.
2020-02-14 16:22:52 +08:00
Vladimir Golovnev (Glassez)
3762514662
Don't access download handler after it's finished
2020-02-14 08:24:49 +03:00
Chocobo1
45bd79ee74
Close document properly after writing
...
Closing document explicitly is recommended by MDN:
https://developer.mozilla.org/en-US/docs/Web/API/Document/write
2020-02-14 12:47:18 +08:00
Chocobo1
f88d6b2e55
Expose WebUI ban counter to users
2020-02-14 12:31:12 +08:00
Mike Tzou
d5a4ebe7c9
Merge pull request #11998 from Kolcha/filter-list
...
Inherit text color for filter list elements
2020-02-14 11:34:55 +08:00
Mike Tzou
195889a854
Merge pull request #11785 from Tester798/fix-portable-mode
...
Fix portable mode
2020-02-14 11:30:32 +08:00
Mike Tzou
882978c80a
Merge pull request #12000 from an0n666/legacy-default-no-random-port
...
Keep legacy default for random port
2020-02-13 12:24:45 +08:00
Tester798
58711cbe7e
Fix portable mode
...
Try to fix portable mode bug. Closes #11706 , #11178 , #7765 .
2020-02-12 19:56:25 +02:00
Mike Tzou
316f34cbf5
Merge pull request #11994 from Chocobo1/profile
...
Unify singleton pattern in Profile class
2020-02-12 23:59:47 +08:00
an0n666
41d8585932
Keep legacy default for random port
2020-02-12 12:28:13 +00:00
Nick Korotysh
1e59dcdb6c
Inherit text color for filter list elements
...
Filter list (left side panel) in WebUI is implemented using <a> tags,
CSS defines default style for all <a> elements, and specific style for
filter list elements. Default style for <a> elements sets color, and
this color also used in list. This is looks not so well. So lets just
inherit text color from parent element, and as so as it is not set, so
default text color will be used.
This makes filter list looks like other UI elemets, making all UI more
consistent (like in desktop app).
2020-02-12 10:40:08 +03:00
Vladimir Golovnev
4a2fda7edc
Merge pull request #11995 from glassez/fix-magnet-redirect
...
Handle HTTP redirections manually
2020-02-12 09:25:39 +03:00
Vladimir Golovnev
1e63dcb400
Merge pull request #11847 from glassez/legacy-defaults
...
Keep legacy defaults for existing users
2020-02-11 18:44:03 +03:00
Chocobo1
5de75eff05
Unify singleton pattern in Profile class
...
1. Use unified function names `initInstance()` and `freeInstance()` and
make them public.
2. Add `freeInstance()` to avoid noise from memory leak detectors.
3. Let `instance()`return a pointer directly to avoid unnecessary
indirections when invoking functions.
2020-02-11 15:30:59 +08:00
Vladimir Golovnev (Glassez)
0c6c65f6f8
Keep legacy defaults for existing users
2020-02-11 09:53:12 +03:00
Vladimir Golovnev (Glassez)
86c95db91d
Perform settings upgrade for existing user only
2020-02-11 09:40:57 +03:00
Vladimir Golovnev (Glassez)
8bb34482ea
Handle HTTP redirections manually
...
Qt doesn't support Magnet protocol so we need to handle all redirections
manually to allow redirections to Magnet URIs.
2020-02-11 09:31:42 +03:00
Nick Korotysh
536580ca6b
Use SVG image for WebUI favicon
...
This will allow browsers to get high quality icon with required
resolution instead of resizing some small raster image.
Browsers can have even more benefit from it. For example, Firefox uses
high resolution icon to display it in "Top Sites" instead of page
preview.
Nothing changes for browsers which doesn't support SVG favicons, older
PNG icon will be used in such case.
2020-02-09 08:52:32 +03:00
Chocobo1
baa13c044a
Drop python2 support
...
Closes #11811 .
2020-02-08 12:36:45 +08:00
Chocobo1
a6cdba17f0
Fix singleton class ownership
...
We shouldn't allow Qt parent ownership in here.
2020-02-07 15:34:04 +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
a2ebd77eac
Manually abort lookup on class destruction
...
Some lookup might take longer so instead of waiting them, we abort them
manually.
2020-01-30 14:11:03 +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
Mike Tzou
4884788c0b
Merge pull request #11933 from Chocobo1/qhash
...
Improve qHash functions
2020-01-29 02:07:27 +08:00
Chocobo1
5905c085c6
Use systematic approach to generate hash
...
The basic idea is to hash each class member and then mix them with xor
operation.
However the `seed` must be handled with care, it should only be
introduced once when mixing the hashes of each class member, otherwise
under some circumstances the `seed` might xor with itself and thus break
the intended effect.
2020-01-27 18:14:27 +08:00
Chocobo1
1740f968df
Revise qHash function
...
Instead of xor and narrowing the integers ourselves, now we let qHash()
from Qt do the job properly.
2020-01-27 12:53:22 +08:00
Chocobo1
2b4490d8a7
Use faster hash function
...
qHash(QString) will need to hash/loop through all the data while the new
code will only need one memcpy() and a few bit manipulations.
2020-01-27 12:53:13 +08: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
Mike Tzou
c3ce1aaa3d
Merge pull request #11903 from Sakib-Abrar/gui-improvement
...
Show "∞" instead of " -1" in Preferences
2020-01-22 11:56:26 +08:00
Vladimir Golovnev
89e72b38ea
Merge pull request #11881 from glassez/extension
...
Simplify torrent startup handling
2020-01-22 06:11:33 +03:00
Sakib-Abrar
1768570bf9
Show "∞" instead of " -1" in Preferences
2020-01-22 00:06:19 +06:00
Vladimir Golovnev (Glassez)
f2285e1b63
Redesign torrent startup handling
2020-01-21 10:14:59 +03:00
Mike Tzou
01ad8a443c
Merge pull request #11892 from NotTsunami/cmake
...
CMake: Further CMake improvements and fixes
2020-01-20 11:59:51 +08:00
Vladimir Golovnev
75ebd54ea3
Merge pull request #11088 from jagannatharjun/organize-style
...
Reorganize UI theme selection
2020-01-20 06:56:54 +03:00
NotTsunami
b21ed0063b
CMake: Fix WebUI checks
...
When the CMake system was last revamped, the configure variable was
changed from WEBUI to DISABLE_WEBUI, but we are still checking
against WEBUI. This behavior was changed in fa770871e9
2020-01-19 15:08:45 -05:00
Prince Gupta
c9e162cf8a
Reorganize UI theme selection
2020-01-18 23:12:33 +05:30
Chocobo1
3fce1db2eb
Migrate away from deprecated settings
...
Libtorrent has deprecated `upnp_ignore_nonrouters` in
https://github.com/arvidn/libtorrent/pull/4251
2020-01-16 23:44:54 +08:00
Mike Tzou
e27c9bd020
Merge pull request #11871 from NotTsunami/bitwise
...
WebUI: Use correct operators in logical expressions
2020-01-14 12:54:56 +08:00
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
Vladimir Golovnev
990e451765
Merge pull request #11865 from shemanaev/fix/webui-files-rename
...
WebUI: Fix first row renaming in files tab
2020-01-14 07:14:13 +03:00
FranciscoPombal
df2fbb1edc
Bump Web API version
2020-01-13 11:41:59 +00: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
NotTsunami
82047104fc
WebUI: Use correct operators in logical expressions
...
As suggested in https://github.com/qbittorrent/qBittorrent/pull/11825#discussion_r365557626
2020-01-13 01:35:38 -05: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
Denis
a7eb792372
WebUI: Fix first row renaming in files tab
...
Ids started from zero and first row converts to false.
Closes #11826 .
2020-01-12 20:05:38 +03: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
Mike Tzou
e2ac97a9e7
Merge pull request #11838 from Chocobo1/webui
...
Minor WebUI code cleanups
2020-01-08 16:50:31 +08:00
an0n666
3f223c3a45
Expose stop_tracker_timeout in advanced settings
2020-01-08 08:21:55 +00:00
sledgehammer999
45ed31fddc
Merge pull request #11733 from sledgehammer999/tracker_error_count
...
Tracker is errored only if all local endpoints fail
2020-01-08 04:24:08 +02:00
Vladimir Golovnev
dc8f4b776c
Merge pull request #11829 from thalieht/doubleclick
...
Allow double-click in preview dialog
2020-01-06 21:11:59 +03:00
Chocobo1
c556b20018
Remove unused variable
2020-01-07 02:08:08 +08:00
Chocobo1
c34883f9af
Add explicit semicolon
2020-01-07 02:07:55 +08:00
Chocobo1
0577cf588c
Remove duplicate line
2020-01-07 01:59:02 +08:00
sledgehammer999
02a027144b
Tracker is errored only if all local endpoints fail
...
Closes #11691
2020-01-05 17:59:54 +02:00
thalieht
c5177eae9f
Allow double-click in preview dialog
2020-01-05 11:28:04 +02:00
Vladimir Golovnev (Glassez)
f56f817c77
Save resume data after recheck
...
Closes #11774 .
2020-01-01 14:29:58 +03:00
Mike Tzou
e906478a16
Merge pull request #11756 from FranciscoPombal/fix_webui_stats_race
...
WebUI: fix populating statistics window
2019-12-28 10:37:03 +08:00
Vladimir Golovnev
37d7323ac0
Merge pull request #11708 from glassez/transfer-list
...
Improve Transfer list architecture
2019-12-27 16:25:26 +03:00
FranciscoPombal
8be804b6ff
WebUI: fix populating statistics window
...
Closes #11665
2019-12-27 12:10:12 +00: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
e62b550bfe
Merge pull request #11635 from FranciscoPombal/prevent_excessive_sync
...
WebUI: Prevent excessive requests to /api/v2/sync/maindata
2019-12-25 13:15:13 +08:00
Mike Tzou
07d4055de5
Merge pull request #11745 from FranciscoPombal/fixup_#11592
...
WebUI: remove unused/deprecated "Listen on IPv6 address" option
2019-12-25 13:07:24 +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
FranciscoPombal
0f6dfcf8a6
WebUI: Prevent excessive sync requests
...
Don't sync main data if a request to do so is already in progress.
This prevents piling up of requests and bogging down slow/busy machines, since the current implementation of `/api/v2/sync/maindata` is very computationally intensive, especially with lots of torrents.
Everything gets updated on the next scheduled request anyway (via the timeout mechanism).
2019-12-24 12:15:26 +00:00
Mike Tzou
c94417b589
Merge pull request #11637 from FranciscoPombal/new_defaults
...
Change some settings defaults for better behaviour out of the box
2019-12-24 12:27:11 +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
e693fdeaf9
WebUI: remove unused/deprecated option
...
Fixup 8200ef6
Remove "Listen on IPv6 address" option.
2019-12-23 18:57:46 +00: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
1121316926
Delete unnecessary explicit return
2019-12-19 19:13:02 +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
FranciscoPombal
30502de960
Change some settings defaults for better behaviour out of the box
...
- CheckingMemUsageSize (16 MiB -> 32 MiB): a 16 MiB increase in memory consumption seems worthwhile for a nice performance boost in most cases.
- DiskCacheSize (64 MiB -> Auto): auto yields the best performance without committing to a huge fixed value.
- UseRandomPort (false -> true): The initial port chosen by qBittorrent may clash with something else the user already has that is aways using that port (low probability, but still). Thus, qBittorrent will always fail listening on that port, causing unexpected problems for the user. Users who know they want a fixed port will go to the settings anyway.
2019-12-19 16:46:22 +00: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
sledgehammer999
4ae8e176dc
Use modern unique_ptr practices
2019-12-19 16:25:45 +02:00
Prince Gupta
d3aa45526a
Allow transfer list text color changes through QSS
2019-12-19 12:45:26 +05:30
Mike Tzou
fab250f1e0
Merge pull request #11694 from Chocobo1/nullptr
...
Replace hard-coded numbers in TrackerFiltersList class
2019-12-19 10:13:44 +08:00
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
1e4c837d6c
Merge pull request #11678 from an0n666/patch-1
...
Disable Torrent Queue by default
2019-12-18 13:47:04 +08:00
sledgehammer999
a25ed5f639
Sync translations from Transifex and run lupdate
2019-12-18 00:33:00 +02:00
sledgehammer999
1376e051df
Bump Web API version
2019-12-18 00:20:27 +02:00
sledgehammer999
90308c2ae5
Merge pull request #11660 from sledgehammer999/fix_smart_delete
...
Don't unnecessarily delete folder customization
2019-12-17 20:38:25 +02:00
sledgehammer999
3d43f1c800
Merge pull request #11642 from sledgehammer999/fix_save_path
...
Use the incomplete folder where appropriate
2019-12-17 20:37:57 +02:00
Mike Tzou
99c002ae27
Merge pull request #11614 from Tester798/master
...
Enable portable mode if "profile" folder exists
2019-12-17 13:37:35 +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
sledgehammer999
64e5d41a2c
Don't unnecessarily delete OS files in folders
2019-12-16 22:10:13 +02:00
an0n666
e0d7876990
Disable Torrent Queue by default
...
It should remain disabled by default. Anyone that needs to Queue torrents for seeding/downloading should go to settings and change it to their preference.
2019-12-16 18:16:27 +06:00
Prince Gupta
6258c1e65b
Align Properties tab bar correctly on window resize
2019-12-16 15:42:50 +05:30
Tester798
053ee48692
Enable portable mode if "profile" directory exists
...
Enable portable mode if "profile" directory exists in the app dir.
Remove "--portable" command line argument.
Add logging of current profile config directory.
Closes #9445 .
2019-12-16 05:12:47 +02:00
sledgehammer999
564d845d87
Use the incomplete folder where appropriate
...
Restored torrents already have the correct path saved in their fastresume. Don't override it.
Magnets and new torrents have to be set explicitly to the incomplete folder if it is enabled.
Closes #11552
2019-12-13 20:31:38 +02:00
sledgehammer999
d09c5e529c
Merge pull request #11592 from sledgehammer999/refactor_listeningAddr
...
Rework the listening IP/interface selection code
2019-12-12 20:24:45 +02:00
Chocobo1
796595ffb6
Enable "Apply rate limit to peers on LAN" option by default
...
Because some ISP will deploy Carrier Grade NAT (means assigning private
IP address to user) and thus accidentally circumvent the speed limiter.
https://www.a10networks.com/blog/carrier-grade-nat/
2019-12-11 21:44:45 +08:00
sledgehammer999
8200ef6bd5
Rework the listening IP/interface selection code
...
Closes #11561
2019-12-11 09:56:45 +02:00
nl6720
5f5385d4dd
Fix quoting of alert() in client.js
...
Fix alert() I broke in #11615 .
2019-12-10 12:45:55 +02:00
Mike Tzou
a652c39394
Merge pull request #11029 from Piccirello/webui-rename-file
...
Add ability to rename torrent files from the WebUI
2019-12-10 12:39:19 +08:00
Thomas Piccirello
2bce9f6179
Add ability to rename torrent files from the WebUI
...
Renaming folders is not yet supported. Closes #8892 .
2019-12-09 02:57:32 -08:00
Thomas Piccirello
9fecd18293
Fix incorrect function being used
2019-12-09 02:53:36 -08:00
nl6720
c1ef846c3d
Mention lack of HTTPS in WebUI magnet link warning
...
According to Mozilla docs, registerProtocolHandler() is only
available when using secure contexts (i.e. HTTPS for everything
outside localhost).
https://developer.mozilla.org/en-US/docs/Web/API/Navigator/registerProtocolHandler
The message "Your browser does not support this feature" does not
make this obvious and can lead to confusion if the user is using a
modern browser.
2019-12-08 11:41:30 +02:00
Mike Tzou
7a657eb5d9
Merge pull request #11566 from Chocobo1/webui
...
Fixes for WebUI
2019-12-08 12:13:53 +08:00
Chocobo1
c896982efb
Fix incorrect translation displayed after language change
...
It is expected in WebUI that the language change applies immediately
(without a program restart) and this static caching prevents that.
2019-12-04 18:25:14 +08:00
Chocobo1
5f165c4c00
Fix HTML elements size in search tab
...
Specifying a height/width value might cut the displayed text or
obstruct centering the text in the button, so let it auto decide
instead.
Closes #11553 .
2019-12-04 18:25:14 +08: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
Chocobo1
04f270b9bc
Fix missing translations in search plugins dialog
...
Closes #11551 .
2019-12-04 12:20:11 +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
sledgehammer999
f46058bbd6
Sync translations from Transifex and run lupdate
2019-12-02 23:37:06 +02:00
warren
b37795d344
Expand single-item folders in torrent content
2019-12-02 21:56:44 +05:00
Vladimir Golovnev (Glassez)
9342fb15b3
Log "RSS Feed successfully downloaded" event
2019-12-01 20:19:43 +03:00
Chocobo1
bf58555a7a
Migrate away from deprecated API
2019-11-29 02:57:31 +08:00
sledgehammer999
56c0f39593
Merge pull request #11520 from sledgehammer999/revert_fastresume_functionality
...
Revert fastresume functionality
2019-11-27 22:38:21 +02:00
sledgehammer999
bd3f723ebf
Merge pull request #11474 from sledgehammer999/webui_bump
...
Bump Web API version
2019-11-27 22:37:40 +02:00
Chocobo1
b6050463f4
Show torrent error message in transfer list
2019-11-26 03:15:48 +08:00
Chocobo1
2ca70cf6cc
Fix stuck in wrong torrent state
...
Before this patch, adding the torrent in
https://github.com/qbittorrent/qBittorrent/issues/11511 and the torrrent
state will stay in torrent_status::checking_resume_data forever.
This is not the correct state since the `torrent_status.errc` field is
non-zero and this commit fixes it.
2019-11-26 03:15:48 +08:00
sledgehammer999
7aa01a1b51
Revert "Always save info dict when saving fastresume"
...
This reverts commit 4aab44e779
.
2019-11-25 15:35:06 +02:00
sledgehammer999
005f0010ec
Revert "Fix unable to remove web seeds"
...
This reverts commit d657c87243
.
2019-11-25 15:34:37 +02:00
Vladimir Golovnev
7ff8545f55
Merge pull request #11505 from glassez/fix-build
...
Fix compilation for Windows 7 with MinGW
2019-11-23 06:22:17 +03:00
Vladimir Golovnev (Glassez)
a4b9a4d9da
Fix compilation for Windows 7 with MinGW
2019-11-22 13:03:52 +03:00
sledgehammer999
c27457efda
Sync translations from Transifex and run lupdate
2019-11-21 21:21:58 +02:00
Chocobo1
af52a18f82
Avoid session reconfiguration when limit has not changed
...
Fix up 5d46c9b2d6
.
2019-11-20 12:22:18 +08:00
Mike Tzou
1bd739dd4a
Merge pull request #11493 from Chocobo1/speed
...
Revise "speed limits" related code
2019-11-18 18:40:31 +08:00
thalieht
4ffc0cff12
Reallow to force recheck torrents that aren't fully started
2019-11-16 22:13:35 +02:00
Chocobo1
5d46c9b2d6
Revise "speed limits" related code
...
The old code has a wrong comparison which compares speed limits
in different magnitude: bytes vs KiB. The comparison is removed.
Also the old code treats values that are smaller than 1024 as unlimited
speed which is clearly wrong.
2019-11-17 02:27:59 +08:00
Chocobo1
0f2c61a207
Remove redundant type casting
2019-11-14 12:18:41 +08:00
Chocobo1
b55403ce66
Pass TriStateBool by value
2019-11-14 12:14:30 +08:00
Chocobo1
640f52c05f
Let eta function return signed integer
...
We already use signed integer internally so it make sense to return it
as-is.
2019-11-14 12:14:29 +08:00
Chocobo1
8fe8cbd3d1
Reuse code path in switch cases
2019-11-14 12:14:29 +08:00
Chocobo1
9b5df92078
Give better name to parameter checking function
...
This function will throw exceptions if the required parameters do not
exsit hence a stronger word is more appropriate here.
Also change the function parameter type to QVector. We don't need the
duplicate entries checking as currently we only use 3 fields at max and
can be easily checked by hand. So drop back to QVector which can be
constructed more efficiently.
2019-11-14 12:14:20 +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
Chocobo1
d936bca268
Move DownloadHandlerImpl class to its own file
...
This also resolves lupdate warning.
2019-11-11 19:41:10 +08:00
Chocobo1
9ef2cd48e0
Fix translation not applied
2019-11-11 16:39:55 +08:00
sledgehammer999
eff0208382
Bump Web API version
...
Closes #11403
2019-11-11 02:18:59 +02:00
sledgehammer999
0ff3b7641d
Correctly update WebUI translations
2019-11-11 02:13:35 +02:00
sledgehammer999
871161310b
Sync translations from Transifex and run lupdate
2019-11-11 02:03:06 +02:00
Mike Tzou
d12468ffb5
Merge pull request #11354 from thalieht/pausechecking
...
Reallow to pause checking torrents
2019-11-09 09:28:18 +08:00
thalieht
f150b3077d
Reallow to pause checking torrents
2019-11-08 19:14:50 +02:00
Chocobo1
b408a09755
Remove unused type alias
2019-11-04 13:47:30 +08:00
Chocobo1
1b47350952
Remove anonymous function forward declarations
...
Also reorder the functions slightly to make it compile.
2019-11-04 12:21:16 +08: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
a7f38eaa82
Merge pull request #11374 from horgan/patch-1
...
Fix country name misspelling
2019-11-03 00:43:48 +08:00
horgan
89d214bb8f
Fix country name misspelling
2019-11-03 00:17:04 +08:00
Mike Tzou
6da39d9279
Merge pull request #11422 from Chocobo1/buffer
...
Reserve memory for file data buffers
2019-11-02 13:16:21 +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
e262b86c44
Reserve memory for file data buffers
2019-10-31 23:09:28 +08:00
Chocobo1
f31ee6a225
Fix integer narrowing on x86
...
The f_type is an alias to `int` on 32-bit system and the switch cases
uses `unsigned int`.
Closes #11427 .
2019-10-31 13:04:02 +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
29fe0029f0
Rename variables in Session class
2019-10-30 11:56:16 +08:00
Chocobo1
89c58921de
Log error properly
2019-10-30 01:46:57 +08:00
Chocobo1
a3fd340187
Revise Session::getPendingAlerts function signature
2019-10-30 01:46:57 +08:00
Chocobo1
e32ef7f5c5
Use implicit sharing when getting categories from Session class
2019-10-30 01:46:57 +08:00
Chocobo1
865394a59c
Clean up Session class variable initialization
2019-10-30 01:46:56 +08:00
Chocobo1
abb3e7ace0
Move libtorrent session initialization to its own function
...
`m_IPFilteringChanged` default value has changed due to code unification.
2019-10-30 01:46:52 +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
sledgehammer999
009ccbef7f
Bump Web API version
...
Closes #11304
2019-10-27 17:20:28 +02:00
Chocobo1
49266cb9e4
Replace boost::int64_t by std::int64_t
2019-10-23 13:43:49 +08:00
Chocobo1
cbe78baff1
Migrate to lt::error_code
2019-10-23 13:43:46 +08:00
Chocobo1
0d3152e4b0
Clean up "network interfaces configuration" code
2019-10-23 13:43:16 +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
021908320e
Preserve relative order when moving to top/bottom in queue
...
Closes #11312 .
2019-10-02 16:03:06 +08:00
Chocobo1
e0a23ba93d
Use InfoHash type in queueing operations
...
This avoids redundant type conversions.
2019-10-02 15:21:16 +08:00
Mike Tzou
a9e6ef183b
Merge pull request #11302 from Chocobo1/deletedialog
...
Revise DeletionConfirmationDialog class
2019-10-01 12:50:10 +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
36056ad5af
Avoid redundant lookups
2019-09-29 15:13:25 +08:00
Chocobo1
19b6f56a0a
Move DeletionConfirmationDialog class to its own .cpp file
2019-09-29 11:29:16 +08:00
Chocobo1
d76adff81d
Change Session::deleteTorrent() first parameter to take InfoHash type
2019-09-29 09:52:51 +08:00
Chocobo1
7f453a80d3
Revise SessionSettingsEnums wrapper
...
This simplify the wrapper to become a namespace.
2019-09-29 09:52:13 +08:00
Chocobo1
7276a79cef
Call Windows API directly
...
We already bumped the OS requirement to Windows 7 and those functions
can be called directly without the need to load them first.
2019-09-29 09:52:13 +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
de7d62c128
Clean up code
2019-09-25 15:54:47 +08:00
Chocobo1
103e2b9398
Use non-recursive mutex
...
The related classes doesn't really need recursive mutex so drop it. And
if it is really required it usually indicates bad design and we should
avoid it anyway.
2019-09-25 15:50:21 +08:00
Mike Tzou
7a3607c729
Merge pull request #11269 from Chocobo1/signals
...
Improve "stats updated" signal handling in MainWindow class
2019-09-25 09:53:39 +08:00
Mike Tzou
7c7963f93f
Merge pull request #11259 from Chocobo1/tristate
...
Revise TriStateBool class
2019-09-25 09:52:41 +08:00
Chocobo1
58fa5e004f
Improve "stats updated" signal handling in MainWindow class
2019-09-24 11:51:29 +08:00
Chocobo1
72faf89e26
Use the same internal data type for conversion function
2019-09-24 10:49:39 +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
9968eb53b2
Remove unused signal
2019-09-23 21:08:59 +08:00
Chocobo1
8bbed461a6
Sort signal declarations in 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
ed62854af7
Add TriStateBool constructor taking a boolean
...
And move the constructor taking an int to private.
2019-09-23 13:05:32 +08:00
xnor
ecc3ff3ca4
WebUI: fix escaping of HTML special characters
...
JS code for torrent general properties, files, peers, trackers inconsistently
escaped HTML special characters, then the dynamicTable inconsistently escaped
again and then the value was set to HTML element text or html properties.
To fix this mess, don't escape any property values in the prop-*.js files.
Instead, make dynamicTable set HTML element text instead of html property by
default. This behavior can be overridden by setting a custom updateTd
function on the respective column, if needed. This is where the HTML escaping
should be done.
Also reordered existing updateTd functions to match column order, changed
custom updateTd functions from setting html to text property wherever possible,
removed custom updateTd functions that turned out to be redundant.
2019-09-21 13:09:42 +00: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
Mike Tzou
3971bf2d58
Merge pull request #11250 from Chocobo1/warning
...
Improve error messages for url_seed_alert
2019-09-19 11:11:30 +08:00
Chocobo1
4d00435209
Improve error messages for url_seed_alert
...
Closes #10119 .
2019-09-18 15:02:59 +08:00
Vladimir Golovnev
19c70fd659
Merge pull request #11235 from glassez/retry-fetch-rss
...
Allow to retry fetching RSS feeds. Closes #11168
2019-09-16 09:58:44 +03:00
Mike Tzou
209831d3b0
Merge pull request #11103 from Piccirello/webui-explicit-export
...
Move JavaScript code into explicit namespaces
2019-09-16 13:31:29 +08:00
Chocobo1
fccbc5318a
Drop logging level to warning for web seed errors
2019-09-15 14:55:16 +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
Mike Tzou
12c127b482
Merge pull request #11227 from Chocobo1/alert
...
Handle "alerts dropped" alert from libtorrent
2019-09-15 13:02:34 +08:00
Thomas Piccirello
9804a2e06a
Fix typo
2019-09-14 18:25:46 -07:00
Thomas Piccirello
1439bcc864
Move JavaScript code into explicit namespaces
...
This cleans up the global namespace by explicitly exporting shared values. All html and JavaScript files have been converted to use explicit exports except for client.js and mocha-init.js
2019-09-14 18:24:53 -07:00
Vladimir Golovnev (Glassez)
cf6e721b00
Allow to retry fetching RSS feeds
2019-09-14 11:33:03 +03:00
Vladimir Golovnev (Glassez)
73ef69526d
Allow to cancel download request
2019-09-14 11:31:07 +03: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
Chocobo1
5e1e983928
Handle "alerts dropped" alert from libtorrent
2019-09-14 12:09:13 +08:00