Commit graph

1350 commits

Author SHA1 Message Date
Chocobo1
60faba60ea
Add availability column
Closes #1632.
2019-07-25 13:17:14 +08:00
Vasiliy Halimonchuk
7fb1e07b39 Remove unused variables 2019-07-23 13:31:50 +03:00
Vasiliy Halimonchuk
80d1c48f0d Fix typos 2019-07-23 13:31:49 +03:00
Vasiliy Halimonchuk
fe0fb3a251 Refactor var to let/const or this 2019-07-23 13:31:43 +03:00
Vasiliy Halimonchuk
b530e19a44 Implement tag management for WebUI 2019-07-23 13:30:11 +03: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
Vladimir Golovnev (Glassez)
60ffa3030e
Don't use deprecated libtorrent features 2019-07-21 19:28:28 +03:00
Mike Tzou
937c5be4a9
Merge pull request #10931 from Piccirello/webui-mobile-longpress
Add WebUI support for triggering context menus on mobile
2019-07-18 14:01:44 +08:00
Chocobo1
7a5e883cd2
Revise inline keyword usage
And let compiler decide whether to inline functions.
2019-07-16 18:42:55 +08:00
Thomas Piccirello
6af01cfcbe Add WebUI support for triggering context menus on mobile 2019-07-16 02:21:36 -07:00
Thomas Piccirello
f441d561a2 Refactor duplicate code 2019-07-16 01:37:35 -07:00
Mike Tzou
7071c5bda0
Merge pull request #10927 from Piccirello/webui-right-click
Move WebUI copy actions under a submenu
2019-07-16 11:17:55 +08:00
Mike Tzou
a887e1c295
Merge pull request #10926 from Piccirello/webui-protocol-handler
Move registering WebUI magnet handler behind toolbar option
2019-07-16 11:17:24 +08:00
Thomas Piccirello
ba40719d76 Move WebUI copy actions under a submenu 2019-07-14 20:25:11 -07:00
Mike Tzou
e1d073bc6d
Merge pull request #10877 from jerrymakesjelly/advanced-preferences
Add advanced options in WebUI
2019-07-15 10:11:09 +08:00
Mike Tzou
94e2c44840
Merge pull request #10918 from Chocobo1/trackers
Various code clean up
2019-07-15 09:59:45 +08:00
Thomas Piccirello
1c3c81db99 Fix missing parenthesis
Introduced in #9995.
2019-07-14 17:41:11 -07:00
Thomas Piccirello
324d20d42c Move registering WebUI magnet handler behind toolbar option
Alert the user if the operation fails due to lack of browser support
2019-07-14 17:40:42 -07:00
Chocobo1
7b568b07e6
Clean up CMakeLists.txt 2019-07-13 19:55:13 +08:00
thalieht
e917c371d9 Use camelCase for a few WebUI vars 2019-07-13 14:04:16 +03:00
thalieht
7b31868e3c Rename priority to queue in the context of torrents 2019-07-13 14:04:16 +03:00
Zhaoyu Gan
07649f713e Add advanced options in WebUI 2019-07-13 14:41:26 +08:00
airium
b389650465
Avoid word wrap in webui footer 2019-06-29 01:15:59 +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
Tom Piccirello
368fbd9e7d
Fix encoding of special characters
Special characters would get html encoded (& -> &amp;). This has been tested against several payloads (e.g. <script>alert(0)</script>) to ensure it's not vulnerable to XSS.
2019-06-20 22:15:32 -07:00
Chocobo1
4880dc812c
Use appropriate type 2019-06-19 18:52:24 +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
89124bdcc8
Add WebAPI session timeout settings
Raise default timeout to 1 hour.
2019-06-15 18:57:19 +08:00
silverqx
4f4f435e76
Add zlib version to GUI & stackdump 2019-06-12 08:02:24 +02:00
Chocobo1
5b9ff4a015
Avoid double lookup 2019-06-09 18:56:52 +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
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
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
jerrymakesjelly
4b9f0a87cd Change the speed unit from Bytes/s to KiB/s
Updated the adding torrent dialogs in WebUI. Closes #10017.
2019-05-11 12:25:07 +08:00
Chocobo1
bd8d70bf60
Refactor HTTP query parsing 2019-05-09 12:41:30 +08:00
Chocobo1
69d29af097
Fix '+' char not decoded to space correctly
Closes #10606.
2019-05-09 11:17:41 +08:00
Mike Tzou
412b51fb3c
Merge pull request #10552 from CoryG89/webui-magnet-handler
Register protocol handler in WebUI for magnet links
2019-05-07 11:12:55 +08:00
Cory
d49379789a Register protocol handler in WebUI for magnet links 2019-05-05 11:26:17 -07:00
Chocobo1
8aa8b19f37
Fix "Create subfolder" option is not working in WebUI
Closes #10392.
2019-05-02 20:55:50 +08:00
Chocobo1
375de4f8a6
Replace QMap with QHash when sensible 2019-05-01 11:09:25 +08:00
Chocobo1
49b57904f9
Use a random number for WebUI cache busting
Also fetch qbt version info via WebAPI properly.
2019-04-18 12:31:23 +08:00
Chocobo1
d022457e0c
Use force refresh on WebUI logout
Regardless of the cache header settings, the logout action should never be
allowed to load from cache.
2019-04-17 20:17:26 +08:00
Chocobo1
6e1e7a45a1
Align WebUI login button to the right 2019-04-17 13:34:32 +08:00
Mike Tzou
18be4732b3
Merge pull request #10476 from Piccirello/webui-table-cell-hover
Set title attribute for all WebUI table cells
2019-04-17 13:13:45 +08:00
Thomas Piccirello
238ca03936 Set title attribute for all WebUI table cells
Except the Progress Bar
2019-04-15 22:44:28 -07:00
CzBiX
d254a98662 Always use index.html as default page 2019-04-13 18:41:29 +08:00
Mike Tzou
460b73ebda
Merge pull request #10438 from Chocobo1/timer
Work around the crash occurred in QTimer
2019-04-09 13:53:48 +08:00
Chocobo1
94aeeed95f
Work around the crash occurred in QTimer
See Qt commit:
https://code.qt.io/cgit/qt/qtbase.git/commit/src/corelib/kernel/qtimer.cpp?id=a623fe8d2a60ff333d5779f877e3b20f0e141ff1

Fixes #9985.
2019-04-07 15:13:33 +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
7e99ce6d7f
Document current WebUI browser compatibility 2019-03-23 12:32:20 +08: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
20f2c86d25
Merge pull request #10214 from AceLewis/master
Remove autocorrect/autocapitalise in WebUI
2019-03-17 15:05:19 +08:00
thalieht
bcfa62cc76 Rename "#" column to "Tier" in the tracker list 2019-03-13 21:08:40 +02:00
sledgehammer999
c2d1af9853
Merge pull request #10338 from sledgehammer999/raise_qt5_ver
Raise minimum Qt version to 5.9.0
2019-03-08 00:42:26 +02:00
Chocobo1
adbd34c795
Move helper functions to Utils::Gui namespace 2019-03-05 14:55:22 +08:00
sledgehammer999
5c63ad3b95
Raise minimum Qt version to 5.9.0 2019-03-04 16:48:49 +02:00
thalieht
ce437817de Make various minor changes 2019-02-25 17:05:15 +02:00
thalieht
8a19a0d4a0 Remove const in declarations' arguments that are passed by value 2019-02-25 17:05:15 +02:00
thalieht
70f1537d9f Add const to almost all remaining vars and arguments that qualify 2019-02-25 17:05:15 +02:00
thalieht
8c944bd4e1 Avoid repeating the return type 2019-02-16 18:54:18 +02:00
thalieht
92a290895b Convert vars into refs to avoid copy construction from const refs 2019-02-16 18:54:17 +02:00
thalieht
d8cbc9266a Use 'auto' to avoid duplicating the type name 2019-02-16 18:54:17 +02:00
thalieht
947c7e1d64 Convert to range-based for loop 2019-02-16 16:53:26 +02:00
Mike Tzou
78ab0e4ba9
Merge pull request #10220 from thalieht/const
Add const to many vars and arguments
2019-02-13 12:11:00 +08:00
thalieht
ca3ce87e06 Add const to many vars and arguments
Also remove const in declarations' arguments that are passed by value
2019-02-11 20:19:41 +02:00
Mike Tzou
efed3fc78c
Merge pull request #10256 from Chocobo1/license
Add license header
2019-02-08 12:07:08 +08:00
Mike Tzou
c540e57f55
Merge pull request #10227 from Chocobo1/login
Prevent login credential appearing in URL
2019-02-07 13:16:24 +08:00
Chocobo1
6d29a3af60
Make use of std algorithms 2019-02-05 13:35:54 +08:00
Chocobo1
f789df7edf
Add license header 2019-02-04 17:28:55 +08:00
AceLewis
bfdd674054 Remove autocorrect/autocapitalise from filepaths on WebUI 2019-02-02 13:50:02 +01:00
Chocobo1
4483b72bfd
Move JavaScript code to its own file 2019-02-02 15:00:53 +08:00
Chocobo1
8096e49c24
Display warning when Javascript is disabled 2019-02-02 14:55:08 +08:00
Chocobo1
32474b05c5
Remove mootools lib from login page 2019-02-01 13:38:14 +08:00
Chocobo1
0738b3860b
Prevent login credential appearing in URL
Closes #10221.
2019-02-01 13:38:12 +08:00
Mike Tzou
40eb8a1f4a
Merge pull request #10175 from Chocobo1/cert
Load WebUI certificate & key from file path
2019-02-01 13:37:13 +08:00
Mike Tzou
0facdf3dfb
Merge pull request #10190 from Piccirello/webui-sorted-icon
Fix direction of Web UI sorted column icon
2019-02-01 13:20:54 +08:00
Mike Tzou
899b0c1104
Merge pull request #10096 from Piccirello/webui-libtorrent-version
Match WebUI About page to GUI
2019-01-31 13:14:46 +08:00
Chocobo1
5cdb3b6a2d
Load WebUI certificate & key from file path
This allow users to update certificate & key more easily, i.e. without the need to import them
into qbt.

Closes #6675, #7547, #8315, #8564.
2019-01-28 16:33:48 +08:00
Vladimir Golovnev (Glassez)
b0446380c6
Separate URL components before percent-decoding
Allow special characters in query string parameters.
Closes #9116.
2019-01-27 15:33:19 +03:00
Mike Tzou
b8def07cd8
Merge pull request #10146 from Piccirello/webui-escape-key
Add Web UI support for escape key
2019-01-22 11:30:50 +08:00
Thomas Piccirello
d1dc9a39ae Match WebUI About page to GUI 2019-01-20 18:40:25 -08:00
Thomas Piccirello
86c21baf40 Simplify tab logic 2019-01-20 18:39:15 -08:00
Thomas Piccirello
ece27b84cc Fix wrong element id being used 2019-01-20 16:00:29 -08:00
Thomas Piccirello
81943fb3b0 Fix direction of Web UI sorted column icon 2019-01-20 15:52:38 -08:00
Tom Piccirello
972b8d11fe
Fix broken image link 2019-01-18 17:49:55 -08:00
sledgehammer999
2ac7f2defe
Update copyright year 2019-01-17 01:08:51 +02:00
Mike Tzou
ec90b69c9e
Merge pull request #10061 from Piccirello/webui-cache-bust
Include application version in css/js url for cache busting
2019-01-16 12:32:04 +08:00
Thomas Piccirello
dbaebf4f33 Rename parametrics.js to speedslider.js 2019-01-14 02:00:08 -08:00
Thomas Piccirello
851c02acb0 Capitalize event name 2019-01-14 00:57:24 -08:00
Thomas Piccirello
2f33ecf37b Fix bug where input wouldn't always be focused 2019-01-14 00:57:24 -08:00
Thomas Piccirello
74a772aafb Add Web UI support for escape key 2019-01-14 00:57:24 -08:00
Mike Tzou
2e5c09aeba
Merge pull request #10130 from Chocobo1/svg
Fix icon issues
2019-01-14 10:52:45 +08:00
Vladimir Golovnev
7e98035df5
Merge pull request #10136 from glassez/drop-old-libtorrent
Drop support of libtorrent < 1.1.10
2019-01-12 09:44:24 +03:00
Vladimir Golovnev
198034f976
Merge pull request #10145 from glassez/drop-legacy-webapi
Drop legacy WebAPI support
2019-01-11 17:41:53 +03:00
Vladimir Golovnev (Glassez)
302c99d7d5
Drop support of libtorrent < 1.1.10 2019-01-11 15:13:17 +03:00
Mike Tzou
b7091cf9a4
Merge pull request #10006 from Piccirello/webui-tables
Allow WebUI Trackers and Content tables to be manipulated
2019-01-11 14:10:27 +08:00
Chocobo1
a8ba5bda79
Update WebUI img to use svg images 2019-01-11 13:53:32 +08:00
Chocobo1
6f34afce21
Fix speed limit icon too large on WebUI
Closes #10127.
2019-01-11 13:51:46 +08:00
Vladimir Golovnev (Glassez)
2ce3aa9731
Drop legacy WebAPI support 2019-01-10 20:16:06 +03:00
Thomas Piccirello
f0e67cbb53 Remove excanvas from WebUI
Excanvas adds Canvas support to IE 8 and lower, which we no longer support.
2019-01-04 23:48:17 -08:00
Mike Tzou
d7c561df6b
Merge pull request #10106 from Chocobo1/js
Various fixes in WebUI
2019-01-05 10:45:15 +08:00
Bert Verhelst
9f8f9b6702
Converted remaining icons to svg 2019-01-04 00:24:30 +02:00
Chocobo1
a0f3678163
Fix only the first newline char is replaced
Must use regex to replace all instances of newline chars.
2019-01-04 00:56:54 +08:00
Chocobo1
9289b009b6
Fix missing semicolon in WebUI 2019-01-04 00:56:43 +08:00
Thomas Piccirello
28fa5a895c Allow WebUI Content tab to be sorted 2019-01-03 00:34:59 -08:00
Thomas Piccirello
06edabb9be Encode torrent name before passing in URL 2019-01-03 00:34:59 -08:00
Thomas Piccirello
26a9af850b Move WebUI Peers code to separate file 2019-01-03 00:34:59 -08:00
Thomas Piccirello
a5266c7018 Prevent WebUI tables from being highlighted 2019-01-03 00:34:59 -08:00
Thomas Piccirello
5d114614bb Allow WebUI Trackers table to be manipulated 2019-01-03 00:34:59 -08:00
Mike Tzou
f3c65f34b6
Merge pull request #10075 from Chocobo1/login
Add autocomplete attribute to WebUI
2019-01-03 14:15:11 +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
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
sledgehammer999
7c172edd50
Sync translations from Transifex and run lupdate 2018-12-24 18:44:53 +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
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
b69dd05216
Update WebUI .ts files 2018-12-17 01:16:23 +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
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
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
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
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
Thomas Piccirello
66f6823965 Add torrent name filtering to WebUI
Closes #721
2018-12-09 11:30:56 -05: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
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