Commit graph

8102 commits

Author SHA1 Message Date
Mike Tzou
b87987ec89
Merge pull request #10074 from Chocobo1/magneturi
Drop support for "BC Link" format
2019-01-01 23:13:05 +08:00
Chocobo1
2b903fc3d1
Move Utils::Misc::isUrl() function
All usage of this function gets to call Net::DownloadManager eventually.
2018-12-31 20:00:15 +08:00
Chocobo1
6759446639
Cleanup code
Also remove redundant code, it is already handled correctly in subsequent function calls.
2018-12-31 20:00:15 +08:00
Chocobo1
19d6de795c
Drop support for "BC Link" format
The format is marked obsolete on 2009.12.28 and has been replaced by magnet links.

http://wiki.bitcomet.com/inside_bitcomet#bc_link_format_obsoleted_as_of_v117
https://www.bitcomet.com/en/changelog
2018-12-31 20:00:15 +08:00
Chocobo1
d133ccc69f
Add autocomplete attribute to WebUI
This helps the password manager to identify each field and provide
adequate actions.
2018-12-31 19:36:53 +08:00
sledgehammer999
d322e10a83
Merge pull request #10027 from glassez/compile-ts
Compile translations at build time
2018-12-31 11:31:45 +02:00
Mike Tzou
3772968f49
Merge pull request #10076 from Chocobo1/pr_9756
Prevent flickering preview dialog
2018-12-31 13:45:55 +08:00
sledgehammer999
1fff760722
Drop upgrade code 2018-12-31 00:41:17 +02:00
sledgehammer999
6236aee8d5
Merge pull request #10046 from sledgehammer999/translator
Mention more translators
2018-12-30 18:20:53 +02:00
Chocobo1
dd2763d725
Forward declare TorrentHandle 2018-12-29 18:39:54 +08:00
silver
0b47021504
Prevent flickering preview dialog
Avoid instantiation of a preview dialog, when torrent is not
previewable
2018-12-29 18:39:54 +08:00
Thomas Piccirello
877a2a2802 Include application version in css/js url for cache busting
This change forces new versions of all css and js files to be picked up when qBittorrent is updated.
2018-12-28 13:35:49 -05:00
Thomas Piccirello
9197b0a5ea Add version to lib file name. Move parametrics out of lib folder. 2018-12-28 13:34:48 -05:00
Chocobo1
a5c53ff756
Simplify InfoHash, TrackerEntry class internals 2018-12-26 12:04:41 +08:00
Chocobo1
2a84345835
Mark constructors as explicit 2018-12-26 12:04:40 +08:00
sledgehammer999
5b62aaa9f8
Mention more translators
Closes #10043
2018-12-25 14:19:07 +02:00
sledgehammer999
7c172edd50
Sync translations from Transifex and run lupdate 2018-12-24 18:44:53 +02:00
thalieht
d9416299f4 Fix regression on resuming torrents without metadata 2018-12-23 19:23:34 +02:00
Vladimir Golovnev (Glassez)
7b3eed323b
QMake: Compile translations at build time 2018-12-22 16:02:17 +03:00
Mike Tzou
8aa2789ded
Merge pull request #10023 from Chocobo1/html
Change qbt exit message to HTML5
2018-12-21 19:31:59 +08:00
Mike Tzou
25cefee0f8
Merge pull request #9959 from Chocobo1/strict
Use Javascript strict mode
2018-12-20 20:16:39 +08:00
Chocobo1
8dd334dc5d
Change qbt exit message to HTML5 2018-12-19 18:29:00 +08:00
Mike Tzou
8ab94d7704
Merge pull request #9979 from Chocobo1/i18n_bak
Unify translation files loading action
2018-12-19 15:52:48 +08:00
Chocobo1
e98d4e874f
Unify translation files loading action
Since it is possible alternative WebUI could be coded in languages other than English,
WebUI must be able to load user-provided webui_en.qm.
At least one translated string must exist in order to generate an usable .qm file.
2018-12-18 23:14:09 +08:00
sledgehammer999
6f638058d1
Merge pull request #10013 from sledgehammer999/revert_locale
Use configured locale only for translating
2018-12-18 16:28:05 +02:00
Vladimir Golovnev
38f4bea6f1
Merge pull request #9988 from elFarto/master
Keep track of REPACK/PROPER downloads
2018-12-18 08:58:25 +03:00
Stephen Dawkins
70435ab5bf Keep track of REPACK/PROPER downloads
When using the smart episode filter, if the episode contains REPACK and/or
PROPER, these should be stored to prevent it from redownloading a duplicate
episodes.

Closes #9898.
2018-12-17 09:52:12 +00:00
sledgehammer999
3f9300dff4
Sync translations from Transifex and run lupdate 2018-12-17 01:22:33 +02:00
sledgehammer999
b69dd05216
Update WebUI .ts files 2018-12-17 01:16:23 +02:00
sledgehammer999
63cf216550
Use configured locale only for translating
Don't use other aspects of it eg for date formatting. We should depend
on the system locale for all these. The user probably likes it that way,
otherwise he would have changed it.
2018-12-17 00:13:28 +02:00
Mike Tzou
deed457764
Merge pull request #9993 from Chocobo1/referer
Enforce referrer-policy in WebUI
2018-12-14 13:23:04 +08:00
Mike Tzou
eebbf3b1ee
Merge pull request #9981 from Piccirello/webui-torrent-filter
Add torrent name filtering to WebUI
2018-12-14 13:18:29 +08:00
Chocobo1
c1912e17c1
Revise CSP header
The majority of the CSP is tuned for built-in WebUI, it may not be
suitable for alternative UI.

Also add QLatin1String to strings. This code path is called repeatedly,
it is worth adding QLatin1String to squeeze out the last bit of
performance.
2018-12-13 15:31:32 +08:00
Chocobo1
d0886f8db0
Reformat WebUI code 2018-12-12 12:30:39 +08:00
Chocobo1
ba32525b45
Fix errors from using strict mode 2018-12-12 12:09:55 +08:00
Chocobo1
1cb065edc6
Use Javascript strict mode 2018-12-12 12:07:31 +08:00
Thomas Piccirello
7f349732ee Send numeric status without translation 2018-12-11 01:37:33 -05:00
Thomas Piccirello
718f66e6a2 Remove condition for unsupported libtorrent version 2018-12-11 01:37:32 -05:00
Thomas Piccirello
9e1f7a72b7 Simplify map initialization 2018-12-11 01:37:32 -05:00
Thomas Piccirello
33351e3d8d Add WebUI Trackers context menu 2018-12-11 01:37:32 -05:00
Thomas Piccirello
4947b0a44f Add DHT, PeX, and LSD to WebUI Tracker list 2018-12-11 01:37:32 -05:00
Thomas Piccirello
b8e4c6b0be Add additional Tracker columns to WebUI 2018-12-11 00:41:18 -05:00
Thomas Piccirello
dd790d94c9 Use const where appropriate 2018-12-11 00:41:18 -05:00
Thomas Piccirello
c89e9d4354 Reorder and rename Tracker list context menu option
Adds an ellipses to indicate that the Edit option opens a dialog. Also moves Edit to top of the list to convey action's prominence.
2018-12-11 00:41:18 -05:00
Thomas Piccirello
b481787574 Rename Tracker List columns
"Received" renamed to "Peers", "Peers" renamed to "Leeches".
2018-12-11 00:41:18 -05:00
sledgehammer999
cd2c448e6d Bump Web API version 2018-12-11 00:41:18 -05:00
Mike Tzou
cf9d903ba9
Merge pull request #9541 from Piccirello/webui-file-priority
Set priority for multiple files in one WebAPI request
2018-12-11 13:32:53 +08:00
Thomas Piccirello
57e625494b Update Copyright email address 2018-12-10 23:21:09 -05:00
Thomas Piccirello
66015164d7 Fix display bugs in WebUI Files tab. Remove <IE9 support
Priority select boxes would frequently go blank due to an unexpected priority value. On first load, the torrent-scoped file checkbox's state was inconsistent with the state of the torrent's files.
2018-12-10 23:21:09 -05:00
Thomas Piccirello
a44ed9cfd3 Fix incorrect priority value sent from WebUI
Closes #9070.
2018-12-10 23:21:09 -05:00
Thomas Piccirello
c5b8f62780 Set priority for multiple files in one WebAPI request
Closes #6259.
2018-12-10 23:21:09 -05:00
Thomas Piccirello
f27dc977e9 Replace prio namespace with FilePriority enum class 2018-12-10 23:21:09 -05:00
Chocobo1
7fd30fa90f
Enforce referrer-policy in WebUI
This stops leaking private data to other websites via Referrer header.
2018-12-10 22:17:04 +08:00
Mike Tzou
e1f19b7c75
Merge pull request #9986 from Piccirello/webui-peers-columns
Match WebUI Peers table column order to GUI
2018-12-10 12:34:11 +08:00
Mike Tzou
3ff7d16cfc
Merge pull request #9982 from Chocobo1/fixes
Fix TravisCI linux builds
2018-12-10 12:33:51 +08:00
Thomas Piccirello
66f6823965 Add torrent name filtering to WebUI
Closes #721
2018-12-09 11:30:56 -05:00
Vladimir Golovnev
fc08091765
Merge pull request #9940 from glassez/error-msg
Show error message when Session failed to start
2018-12-09 11:16:17 +03:00
Mike Tzou
2eb213e2f9
Merge pull request #9758 from Piccirello/new-search-webui-2
Add Search feature to WebUI
2018-12-09 16:01:21 +08:00
Mike Tzou
c093561532
Merge pull request #9980 from Chocobo1/opensslVersion
Add OpenSSL version to GUI & stackdump
2018-12-09 15:57:33 +08:00
Mike Tzou
0418401ddd
Merge pull request #9976 from Piccirello/fix-js-error
Fix JavaScript error
2018-12-09 15:56:38 +08:00
Thomas Piccirello
f3c1e82199 Match WebUI Peers table column order to GUI 2018-12-09 00:36:43 -05:00
Chocobo1
f13bcbd772
Add OpenSSL version to GUI & stackdump 2018-12-08 12:46:50 +08:00
Thomas Piccirello
a8d5b146be Fetch data less frequently when torrents tab isn't visible 2018-12-07 23:33:15 -05:00
Thomas Piccirello
b7ad751ec3 Add Search tab to WebUI
Closes #859, #8107.
2018-12-07 23:33:15 -05:00
Chocobo1
a137f1493e
Use correct locale to display date 2018-12-08 12:19:56 +08:00
Chocobo1
de437b905b
Fix MSVC C4267 warning
The warning was: "warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of
data"
2018-12-08 12:19:56 +08:00
Tom Piccirello
adcfbf0b8c
Fix JavaScript error
Fixes a JavaScript error caused by the element lookup returning null
2018-12-07 18:41:32 -05:00
Thomas Piccirello
3aeaf6a054 Disallow setting a blank alternative WebUI location 2018-12-07 00:57:59 -05:00
Thomas Piccirello
402715004c Add slow torrent options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
2ebc6a056e Add "Use alternative Web UI" option 2018-12-07 00:55:29 -05:00
Thomas Piccirello
c237accf82 Add "Apply rate limit to peers on LAN" option 2018-12-07 00:55:29 -05:00
Thomas Piccirello
e499e1ba85 Add email "From" option 2018-12-07 00:55:29 -05:00
Thomas Piccirello
abf43b695b Set WebUI download options using set preferences
"Start torrent" and "Create subfolder" are now set depending on the user's set preferences, which matches the behavior exhibited by the GUI.
2018-12-07 00:55:29 -05:00
Thomas Piccirello
7151d6babd Show list of categories on WebUI download page 2018-12-07 00:55:29 -05:00
Thomas Piccirello
a7c2ee3ce6 Hide WebUI text input for custom monitor save locations 2018-12-07 00:55:29 -05:00
Thomas Piccirello
19ccd8c7d3 Add "When adding a torrent" options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
d05cf47169 Add WebUI Auto TMM options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
bf4df54fb8 Replace all line breaks and fix legend code style. 2018-12-07 00:55:29 -05:00
Thomas Piccirello
127e4acb24 Add speed limit icons to WebUI Speed options 2018-12-07 00:55:29 -05:00
Thomas Piccirello
b9229babfc Add WebUI Random port button and proxy unencrypted password notice 2018-12-07 00:55:29 -05:00
Thomas Piccirello
66e3be1579 Replace WebUI Options fixed-width labels
This allows the labels to auto-expand based on the language used, and also removes unnecessary whitespace. Additionally, this results in a look more consistent with the GUI which right-aligns labels.
2018-12-07 00:55:29 -05:00
Thomas Piccirello
99ca872011 Reorder WebUI options to match GUI 2018-12-07 00:52:50 -05:00
Mike Tzou
6bb4eb825b
Merge pull request #9942 from Chocobo1/pbkdf2
Do password hashing properly
2018-12-06 16:22:22 +08:00
Mike Tzou
1eef5b6876
Merge pull request #9373 from FranciscoPombal/checking_mem_usage_adv_settings
Add checking_mem_usage option to AdvancedSettings
2018-12-06 16:20:02 +08:00
Mike Tzou
0ab5b8fcba
Merge pull request #9824 from thalieht/style
Convert all foreach() to range-based for()
2018-12-06 16:19:17 +08:00
FranciscoPombal
74be5d9030
Add checking_mem_usage option to AdvancedSettings 2018-12-06 03:10:24 +08:00
Vladimir Golovnev
de9067d6a3
Merge pull request #9967 from thalieht/mac-start-minimized
Save option to start minimized in Mac
2018-12-05 20:30:51 +03:00
Vladimir Golovnev (Glassez)
89deccd9b5
Show error message when Session failed to start 2018-12-05 19:57:44 +03:00
Chocobo1
593052dd93
Revise startup message in nox version
Only print the WebUI username when password is still the default.
2018-12-05 13:28:43 +08:00
Chocobo1
2c8890bd06
Apply PBKDF2 to GUI lock 2018-12-05 13:28:42 +08:00
Chocobo1
05d6a29416
Apply PBKDF2 when storing passwords 2018-12-05 13:28:42 +08:00
Chocobo1
8a6cac8338
Make OpenSSL a direct dependency 2018-12-05 13:28:42 +08:00
Mike Tzou
eb957bb790
Merge pull request #9953 from Chocobo1/announce
Use ip parameter from tracker request if provided
2018-12-05 11:13:03 +08:00
thalieht
6a21acbf1a Save option to start minimized in Mac 2018-12-04 11:43:32 +02:00
Chocobo1
ede9b1a7c4
Fix typo 2018-12-03 12:06:32 +08:00
Chocobo1
b4564f5f4e
Use ip parameter from tracker request if provided
Closes #9949.
2018-12-03 00:14:15 +08:00
Chocobo1
b56937f5fa
Use QHostAddress for storing IP 2018-12-02 14:18:18 +08:00
Chocobo1
36429887dc
Fix wrong locale used in log message 2018-12-01 20:39:20 +08:00
Chocobo1
297ef52dcb
Fix weekday names translations
Closes #9933.
2018-12-01 20:32:35 +08:00
Chocobo1
0ad831e48a
Fix strings not translated
Closes #9934.
2018-12-01 20:32:34 +08:00
thalieht
1f36b8b89f Combine qAsConst() with copyAsConst() to asConst() 2018-11-28 23:41:23 +02:00
thalieht
6b1d26d555 Convert all foreach() to range-based for() 2018-11-28 23:40:12 +02:00
thalieht
d668a4fe6d Fix coding style for various things 2018-11-28 23:37:35 +02:00
Mike Tzou
5efdd211cc
Merge pull request #9892 from Chocobo1/progress
Code cleanup
2018-11-29 01:16:07 +08:00
Thomas Piccirello
4d3a894bcb Allow tables to be added without a parent panel 2018-11-28 00:21:56 -05:00
Thomas Piccirello
881b692c58 Simplify implementation 2018-11-28 00:21:56 -05:00
Thomas Piccirello
b2f454399c Add ability to pass urls to the webui download page 2018-11-28 00:21:56 -05:00
Chocobo1
0339e6ee35
Clean up code 2018-11-27 22:01:27 +08:00
Vladimir Golovnev (Glassez)
68508ba657
Save torrents queue in separate file 2018-11-27 16:55:45 +03:00
Vladimir Golovnev (Glassez)
e146c2f227
Fix signed/unsigned integers comparison warning 2018-11-27 16:55:44 +03:00
Mike Tzou
a97543d258
Merge pull request #9919 from Piccirello/webui-sidebar
Show ellipsis when WebUI sidebar is too narrow
2018-11-27 21:02:21 +08:00
Mike Tzou
a7c6e873d4
Merge pull request #9889 from Piccirello/instantiate-search
Only instantiate SearchPluginManager as needed
2018-11-27 21:00:46 +08:00
Thomas Piccirello
64c20bf6b2 Allow WebUI sidebar to be collapsed 2018-11-25 15:05:31 -05:00
Thomas Piccirello
2ef16f669b Show ellipsis when WebUI sidebar is too narrow 2018-11-25 14:57:49 -05:00
Vladimir Golovnev
0e8323659e
Merge pull request #9869 from Piccirello/download-bug
Fix WebUI bug on override of Start Torrent option
2018-11-25 06:40:22 +03:00
Mike Tzou
45cfac6c00
Merge pull request #9891 from Chocobo1/i18n
Fix missing words in WebUI
2018-11-24 10:55:13 +08:00
Chocobo1
b79a231d2e
Fix missing words in WebUI
This is because Qt translator returns empty string when the translation
is not provided, now we fallback to the original string from source code.

Closes #9868.
2018-11-23 23:42:20 +08:00
Mike Tzou
70707a2664
Merge pull request #9884 from Piccirello/webui-cookie-samesite
Add SameSite attribute to WebUI session cookie
2018-11-22 10:40:37 +08:00
Thomas Piccirello
4885fe6b4c Only instantiate SearchPluginManager as needed 2018-11-21 16:59:38 -05:00
Thomas Piccirello
cd47380b85 Add SameSite attribute to WebUI session cookie
This attribute prevents the cookie from being submitted on any cross-site request, strongly limiting CSRF.

Closes #9877.
2018-11-20 22:12:24 -05:00
Mike Tzou
d05897c89a
Merge pull request #9859 from Chocobo1/host
Add option for WebUI Host header validation
2018-11-20 12:37:55 +08:00
Mike Tzou
9826aec4cf
Merge pull request #9820 from Piccirello/webui-col-icon
Show icon in WebUI sorted column
2018-11-19 15:06:01 +08:00
Tom Piccirello
2d7138839d Fix WebUI bug on override of Start Download option
Disabled form values aren't submitted, causing the add_paused value not to be sent when Start Torrent was checked. qBittorrent would then fall back to the global Start Download preference.

Closes #9855.
2018-11-18 22:46:19 -05:00
Chocobo1
58be2d4bc2
Put WebUI security related options into a groupbox 2018-11-19 11:05:04 +08:00
Chocobo1
344e47dcfb
Add option for WebUI Host header validation
Closes #9743.
2018-11-19 11:05:04 +08:00
Mike Tzou
39ee27785c
Merge pull request #9835 from Chocobo1/cppver
Implement proper C++11 mode detection
2018-11-19 10:53:32 +08:00
sledgehammer999
45878fb7dd
Sync translations from Transifex and run lupdate 2018-11-19 01:35:31 +02:00
Mike Tzou
d3e012148e
Merge pull request #9858 from Chocobo1/clamp
Clamp values properly
2018-11-18 19:43:34 +08:00
Chocobo1
d866033a8e
Fix divide-by-zero crash
Previously here was using a cheap method to avoid divisor becoming < 0, but from
the crash stacktrace it seems this is not enough, now the divisor is properly
clamped to have 1 as the minimum.
Also it will now display "Unknown" for invalid calculation results.

Closes #9857.
2018-11-18 13:50:23 +08:00
Vladimir Golovnev
4f565d9f09
Merge pull request #9844 from glassez/fix-rss
Improve RSS Feed updating. Closes #9833
2018-11-17 11:32:04 +03:00
Vladimir Golovnev (Glassez)
64d7cf4794
Improve RSS Feed updating
Don't process "out-of-limit" articles.
Closes #9833.
2018-11-16 10:30:24 +03:00
Mike Tzou
9090f2d321
Merge pull request #9832 from thalieht/fieldwidth
Allow qBt to resize the search filter in search job
2018-11-14 03:58:37 +08:00
Chocobo1
819a84eb7a
Implement proper C++11 mode detection
Newer compilers have C++14 mode as default and package maintainers tend
to not specifying a C++ version when building a package, this causes
compatibility issues when (for example) qbt is compiled in C++11 and
dependency lib is in C++14. See issue #9485.

What this commit does:
1. Checks if compiler supports at least C++11
2. Checks if compiler is set in at least C++11 mode
2018-11-13 23:06:41 +08:00
thalieht
59fcfdc13b Allow resizing search filter in search job
Allow qBt to resize the search filter in search job because it causes
qBt's width to exceed the screen's width for laptop users.
2018-11-13 11:20:29 +02:00
Thomas Piccirello
555382779c Show icon in WebUI sorted column 2018-11-12 19:37:54 -05:00
sledgehammer999
ceb4a0d5fe
Change FossHub RSS url for updates
The new RSS format is compatible with our current parser. FossHub will
redirect old URL to the new one so older clients will not be affected.
2018-11-11 18:30:00 +02:00
Mike Tzou
547140ec46
Merge pull request #9822 from Chocobo1/fixCrash
Don't double delete a pointer
2018-11-09 00:11:09 +08:00
Chocobo1
626b9eb380
Don't double delete a pointer
`m_searchFilterAction` is owned by Qt, so we shouldn't delete it
manually.
2018-11-08 21:02:44 +08:00
Eugene Shalygin
019da6a98c
Merge pull request #9509 from zeule/cmake-cxx14
cmake: use C++14 when available
2018-11-07 14:07:16 +01:00
Mike Tzou
2ce57b97be
Merge pull request #9799 from Chocobo1/removeCheckbox
Remove speed limit checkbox in Options dialog
2018-11-07 13:40:43 +08:00
dzmat
6fa64c81b7
Fix speed graph "high speeds" bug 2018-11-06 15:53:20 +03:00
Vladimir Golovnev
54e4806e3d
Merge pull request #9817 from Piccirello/torrent-dl-success
Handle downloading .torrent file as success
2018-11-06 15:39:51 +03:00
Vladimir Golovnev
46ec72f688
Merge pull request #9580 from glassez/start_paused
Improve handling of torrent startup/recheck
2018-11-06 15:34:21 +03:00
Chocobo1
266ce1d226
Clean up SpeedLimitDialog class 2018-11-05 11:07:52 +08:00
Chocobo1
3fa5358c3f
Remove speed limit checkbox in Options dialog
This unifies speed limit UI elements throughout the program.
2018-11-05 11:07:52 +08:00
Tom Piccirello
1b81356a67 Handle downloading .torrent file as success
We don't know whether the download will be successful, so default to success. Closes #9811.
2018-11-04 14:43:33 -05:00
Chocobo1
c1c28ce195
Improve parser for search engine versions.txt
The parse could fail when there is an extra empty line at the end of
file, this patch fixes it.
2018-11-03 01:01:46 +08:00
Chocobo1
ee030cc4eb
Fix wrong type passed to arg() 2018-11-03 00:34:25 +08:00
Chocobo1
d52c6230e9
Fix defects found by lgtm.com 2018-11-03 00:34:25 +08:00
Vladimir Golovnev (Glassez)
1214cf0fa1
Don't update torrent status unnecessarily 2018-11-02 19:25:39 +03:00