brvphoenix
9fde5634f1
Fix JS memory leak
...
The memory leak can be reproduced easily by opening two web pages of qbittorrent so that the WebUI pages are updated with full_update = true. If you have a large number of torrents, such as 100 torrents, you can observe a rapid increase in memory usage.
This is caused by the incorrect usage of dispose and empty methods in the js codes and none of them garbage collect the elements. If event listeners are added to the DOM elements, those DOM elements will not be garbage collected at all event if they are not referenced or out of the scope, which will cause memory leaks. If some elements are expected to be removed, the correct way is to use destroy method instead.
https://github.com/mootools/mootools-core/blob/master/Docs/Element/Element.md#element-method-dispose-elementdispose
https://github.com/mootools/mootools-core/blob/master/Docs/Element/Element.md#element-method-empty-elementempty
https://github.com/mootools/mootools-core/blob/master/Docs/Element/Element.md#element-method-destroy-elementdestroy
Closes #19034 .
PR #19969 .
2023-11-25 13:50:45 +08:00
Chocobo1
b67da4bebe
Use natural sort for categories
...
PR #19920 .
2023-11-12 17:11:39 +08:00
thalieht
30d9978c97
Add copy comment functionality to the torrent list's context menu
...
PR #19846 .
Closes #18890 .
2023-11-07 12:42:31 +03:00
xavier2k6
f067ab1692
WebUI: Add "Moving" filter to side panel
...
PR #19870 .
2023-11-06 16:23:59 +03:00
Bartu Özen
5db2c2c2be
WebUI: Fix incorrect subcategory sorting
...
PR #19833 .
Closes #19756 .
2023-11-02 11:35:42 +03:00
tearfur
2e87e6e0df
Use hostname instead of domain name in tracker filter list
...
Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com >
PR #19062 .
Closes #19035 .
2023-06-05 14:57:37 +03:00
Chocobo1
83e6afcb71
Merge pull request #19069 from Chocobo1/sort
...
WebUI: use natural sort on tracker list
2023-06-04 12:52:29 +08:00
Raymond Ha
3ef8726083
WebUI: Set Connection status and Speed limits tooltips
...
PR #19052 .
Fixes #18958 .
2023-06-03 17:39:58 +03:00
Chocobo1
dad9157d84
Don't overwrite original variable
2023-06-02 18:12:01 +08:00
Chocobo1
5cea69472f
Use natural sort
2023-06-02 17:44:17 +08:00
ttys3
b1492bcd7d
WebUI: Show only hosts in tracker filter list
...
PR #18190 .
2023-06-02 17:36:33 +08:00
Bartu Özen
b55d4b1733
WebUI: Implement subcategories
...
PR #18740 .
2023-04-02 11:02:22 +03:00
Chocobo1
6a4bb5c1b7
Migrate away from unsafe function
...
MooTools More has CVE-2021-20088 and qbt is affected by it by using the
unsafe function call `String.parseQueryString()`, so migrate away from
it.
PR #18554 .
2023-02-15 13:59:21 +08:00
brvphoenix
0d376e7fd6
WebUI: Add log viewer
...
The javascript implementation of multi-select menu is from the source
https://github.com/PhilippeMarcMeyer/vanillaSelectBox . It is licensed
under the MIT License. Some minor fixes is made to pass the lint.
Co-authored-by: brvphoenix <30111323+brvphoenix@users.noreply.github.com >
Co-authored-by: ttyS3 <ttys3.rust@gmail.com >
PR #18290 .
2023-01-16 14:55:44 +03:00
Fidel Selva
61dbb211c0
WebUI: Improve hotkeys
...
PR #18326 .
Fixes #18325 .
Fixes #14033 .
2023-01-06 22:17:15 +03:00
Chocobo1
3b9d68f344
WebUI: handle drag and drop events
...
This allows user to drag and drop .torrent files and URL links onto the
main window and will open the respective dialog.
Dropping folders are not supported due to technical reasons.
Closes #6038 .
2022-10-14 14:30:26 +08:00
Chocobo1
ca274635d5
Make WebUI images self-contained
2022-08-27 13:55:04 +08:00
Nowshed H. Imran
199d770e15
Implement new icon/color theme
...
Co-authored-by: xavier2k6 <42386382+xavier2k6@users.noreply.github.com >
2022-06-09 18:18:14 +06:00
Chocobo1
dbfd6a2368
WebUI: enforce coding style
...
Actually, not all of them but some that can be enforced by eslint.
The changes are made by eslint with minor manual tweaking.
PR #17046 .
2022-05-18 11:37:05 +08:00
An0n
11cfe38d1c
Fix WebUI crash due to missing tags from config
...
Tags can be missing from config but set inside .fastresume. May happen due to corrupted/deleted config.
Closes #11906 .
PR #16711 .
2022-03-26 11:56:18 +08:00
AbeniMatteo
baa8d2c326
Add option to toggle filters sidebar
...
PR #15409 .
2022-03-21 12:41:06 +08:00
Kevin Cox
37e6a9ebc2
Fix UI crash when torrent is in non-existent category.
...
This checks that `category_list[categoryHash].torrents` is truthy before dereferencing it. In some cases the API response will have a torrent in a category that doesn't exist resulting in the check to return `undefined` which is not `null`. This broadens the check so that it will create the category even if null.
PR #16432 .
2022-02-17 12:20:54 +08:00
Chocobo1
7c8eadfddf
Revert "WebUI: group trackers by hostname"
...
This functionality wasn't ever correctly implemented and couldn't be
done without considerable effort, so revert it for now.
This reverts commit 4ac25a50ed .
PR #15542 .
2021-10-10 11:00:21 +08:00
Chocobo1
97a8d865dc
WebUI: revise hash function
...
In benchmark, using `Math.imul()` is about ~20% faster than floating
point multiplication.
PR #15475 .
2021-09-27 13:54:28 +08:00
Chocobo1
08f33d7e9e
Fix WebUI crash when tracker URL is invalid
...
Closes #15391 .
PR #15395 .
2021-08-31 11:53:42 +08:00
Mengyang Li
4ac25a50ed
WebUI: group trackers by hostname ( #15264 )
...
Closes #13608 .
2021-08-07 12:25:07 +08:00
AbeniMatteo
e5943b64c1
Add filter "Checking" to side panel ( #15166 )
2021-07-16 14:08:10 +03:00
Vladimir Golovnev
37f227ae74
Provide v1 and v2 infohashes in UI ( #15097 )
2021-06-25 20:44:23 +03:00
brvphoenix
bb9ca7f418
WebUI: Fix magnet url from the browser
2021-04-03 19:26:17 +08:00
Chocobo1
121ff2b7be
Apply code formatting
2021-03-26 00:27:52 +08:00
Chocobo1
5fe0e9395f
Don't use Object.prototypes builtins directly
...
See: https://eslint.org/docs/rules/no-prototype-builtins
2021-03-26 00:27:52 +08:00
Chocobo1
d46343fb9c
Add ability to use 'shift+delete' to delete torrents in WebUI
...
Closes #13827 .
2020-11-26 15:52:47 +08:00
Sepro
2b3c92a4a8
WebUI: Add RSS functionality
...
Implemented RSS Reader and AutoDownloader in reference WebUI.
2020-05-22 14:21:45 +02:00
Chocobo1
02c25dbe2a
Move WebUI icons to its own folder
...
After this change: "http://<server>/icons" will point to "src/icons"
folder and "http://<server>/images" points to the real "images" folder
in the relative path.
2020-05-19 14:58:49 +08:00
jagannatharjun
ab91d546e5
Move all icon resources to icon folder root
2020-05-18 20:30:51 +05:30
Thomas Piccirello
ad4d8d28ec
Add Trackers section to Web UI sidebar
...
Closes #7601 .
2020-05-07 19:10:55 -07: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
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
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
Chocobo1
c34883f9af
Add explicit semicolon
2020-01-07 02:07:55 +08:00
FranciscoPombal
8be804b6ff
WebUI: fix populating statistics window
...
Closes #11665
2019-12-27 12:10:12 +00: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
nl6720
5f5385d4dd
Fix quoting of alert() in client.js
...
Fix alert() I broke in #11615 .
2019-12-10 12:45:55 +02: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
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
Thomas Piccirello
7047974132
Extract WebUI localStorage access into class
2019-08-18 23:58:11 -07:00
Thomas Piccirello
085ae05f19
Move WebUI views into separate folder
2019-08-10 22:14:08 -07:00
Thomas Piccirello
f214dd233b
Rename WebUI content files
2019-08-10 22:14:01 -07:00
Thomas Piccirello
b3f9b9e9b2
Rename WebUI toolbar files
2019-08-10 22:13:56 -07:00
Mike Tzou
733da5ffdb
Merge pull request #10153 from Piccirello/webui-files-table
...
Display files hierarchically in Web UI content tab
2019-08-06 10:15:22 +08:00