Commit Graph

367 Commits

Author SHA1 Message Date
Chocobo1
130c0d8487 Revise cookie 'secure flag' enable condition
The localhost is 'potentially trustworthy' and RFC 6265 allows setting secure flag in this case.
Also check `X-Forwarded-Proto` header value to support reverse proxy usage.

Note: for reverse proxy users, now the `X-Forwarded-Proto` header is expected to be sent to qbt
otherwise the `secure` flag might be set erroneously.

https://datatracker.ietf.org/doc/html/rfc6265#section-4.1.2.5
https://w3c.github.io/webappsec-secure-contexts/#is-origin-trustworthy

Closes #21250.
PR #21260.
2024-09-07 21:38:27 +08:00
skomerko
9d0fa213be WebUI: Allow to display only hostname in the Tracker column
It is now possible to display only hostname in the Tracker column.
Closes #11357.
PR #21243.
2024-09-01 16:34:49 +08:00
skomerko
7ab4758279 WebUI: Provide 'Use Category paths in Manual Mode' option
This PR adds 'Use Category paths in Manual Mode' option to WebUI.

PR #21223.
2024-08-25 14:51:59 +08:00
skomerko
5b7c9d5725 WebUI: Filter list improvements
A couple of tweaks to make them a little bit better:
1. Make highlighting functions more consistent (this also fixes minuscule bug when no filter item in tracker list is highlighted due to a type mismatch)
2. Use [event delegation](https://javascript.info/event-delegation) to handle filter toggling & item selection
3. Other minor improvements (everything should work like it was previously)

PR #21191.
2024-08-25 14:23:35 +08:00
skomerko
39dd415d43 WebUI: Improve torrent deletion dialog
This PR improves torrent deletion dialog.

1. Now shows different message depending on the number of selected torrents
2. Visually pretty much inline with the GUI
3. Adjusts to content on load
4. Now uses XHR load method. Panels / windows loaded using this method become part of the current document so there is no need to import styles or scripts (they should load marginally faster now).

PR #21185.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
2024-08-25 14:11:36 +08:00
skomerko
fda797cb76 WebUI: Improve properties panel
It is now possible to expand & collapse it by clicking directly on tabs, just like in GUI.
In addition, collapse state is saved and applied on page load.
Fixed one minor bug and now files search input is properly hidden even when panel is collapsed.

PR #21209.
2024-08-24 14:09:10 +08:00
Chocobo1
a91bac8aa0 Add link to 'List of alternative WebUI' wiki page in Options
PR #21224.
2024-08-23 02:27:24 +08:00
Chocobo1
29379232aa WebUI: implement debounce behavior for resize events 2024-08-17 14:02:15 +08:00
Chocobo1
1179fc3de3 WebUI: prevent passing wrong parameter
The `event` object will be passed as the first parameter to the event handler. So wrap the
event handler with a closure to prevent `event` leaking to other functions.
2024-08-17 14:02:13 +08:00
skomerko
e069fbc37f WebUI: Add missing icons
This adds missing icons to WebUI (in tabs, buttons, etc.).

PR #21162.
2024-08-17 13:38:44 +08:00
Chocobo1
3e18b1d30c WebUI: remove outdated CSS property
WebUI already has the standard counterparts.
2024-08-10 14:26:10 +08:00
Chocobo1
9df3ee0de8 WebUI: use native property to set styles 2024-08-10 14:26:10 +08:00
skomerko
62c5f41f39 WebUI: Implement 'Auto hide zero status filters'
PR #21145.
2024-08-09 14:38:53 +08:00
Chocobo1
2d9e3b3330 WebUI: use native functions for event handling
PR #21147.
2024-08-07 22:00:54 +08:00
Chocobo1
7b2886e477 Revise label text
PR #21118.
2024-08-05 21:01:49 +08:00
Chocobo1
49507ad670 Merge pull request #21123 from skomerko/webui-use-alternating-row-colors
WebUI: Add ability to toggle alternating row colors in tables
2024-08-04 17:16:01 +08:00
skomerko
aed103d06e WebUI: Improve visibility of unread RSS articles 2024-07-28 11:35:01 +02:00
skomerko
b67495464d WebUI: Add ability to toggle alternating row colors in tables 2024-07-28 11:34:52 +02:00
Chocobo1
6b52a04ff1 WebUI: avoid queuing up requests
`setInterval()` will always fire a new timeout regardless previous `updateRssFeedList()` has
completed or not. This patch will now wait for previous request to complete before another
timeout.
2024-07-25 14:20:57 +08:00
Chocobo1
b75c42f850 WebUI: associate label to input fields 2024-07-19 17:47:34 +08:00
Chocobo1
7df98e1c9a WebUI: specify scope of table header
This may help screen readers.
2024-07-15 18:26:59 +08:00
Chocobo1
c3b7dfa918 WebUI: omit closing on HTML void elements
https://developer.mozilla.org/en-US/docs/Glossary/Void_element#self-closing_tags :
>Self-closing tags (<tag />) do not exist in HTML.
2024-07-15 17:46:33 +08:00
Chocobo1
0fd24358ce WebUI: check buttons to have valid text (or assistive text)
It helps people using assistive technology.
https://stackoverflow.com/a/22040485
2024-07-15 17:25:27 +08:00
Chocobo1
25dd6c72f7 WebUI: use the correct property for accessing text
In these instances we don't need the rendered result. So use the most efficient
property to access it: `.textContent`.
2024-07-15 17:09:16 +08:00
Chocobo1
adde3c3f65 WebUI: check headings to have textual content 2024-07-15 17:03:21 +08:00
Chocobo1
7119de9b8d WebUI: provide semantic information of table body
From https://developer.mozilla.org/en-US/docs/Web/HTML/Element/tbody#usage_notes :
>Specifying such table content groups also provides valuable contextual
>information for assistive technologies
2024-07-15 16:59:05 +08:00
Chocobo1
9feefc8144 WebUI: avoid redundant re-initialization
PR #21012.
2024-07-12 15:00:36 +08:00
Chocobo1
9c26e5d4d6 WebUI: access attribute/property natively
It is now clearer to see what property is being accessed.
Previously mootools library would re-map attribute/property to another.

PR #21007.
2024-07-12 14:06:59 +08:00
Vladimir Golovnev
eba5cbb803 WebUI: Correctly apply changed "save path" of RSS rules
PR #21030.
Closes #20141.
2024-07-08 10:08:28 +03:00
ManiMatter
87a202c71e Add ability to display torrent "privateness" in UI
PR #20951.

---------

Co-authored-by: Chocobo1 <Chocobo1@users.noreply.github.com>
Co-authored-by: Vladimir Golovnev <glassez@yandex.ru>
Co-authored-by: thalieht <thalieht@users.noreply.github.com>
2024-07-07 19:09:57 +03:00
Hanabishi
b52fa98a02 WebUI: Implement double-click behavior controls
PR #21000.
2024-07-05 14:34:05 +08:00
Paweł Kotiuk
d87533bf4c WebUI: Implement path autocompletion
PR #20906.
2024-07-05 14:24:02 +08:00
Vladimir Golovnev
4e27e88f6a Allow to move content files to Trash instead of deleting them
PR #20252.
2024-06-29 08:21:35 +03:00
Chocobo1
648dd9988d WebUI: unify comment format 2024-06-11 02:17:10 +08:00
Chocobo1
bf4e0df386 WebUI: unify curly bracket usage 2024-06-07 02:51:35 +08:00
Chocobo1
c54750469e WebUI: don't auto infer radix parameter 2024-05-27 23:00:51 +08:00
Chocobo1
64dfb7e122 WebUI: iterate over own properties only 2024-05-27 23:00:03 +08:00
Chocobo1
24a1537cdd WebUI: prefer arrow function in callbacks 2024-05-27 22:57:28 +08:00
Chocobo1
55bff4f07a WebUI: enforce usage of const whenever possible 2024-05-27 22:56:51 +08:00
Chocobo1
cb90b6769c WebUI: enforce string quotes coding style 2024-05-27 22:50:17 +08:00
Thomas Piccirello
6d073771ca WebUI: Restore previously used tab on load
This PR restores the users previously used tab (Transfer, Search, RSS, etc.) when the WebUI is reloaded.

PR #20705.
2024-05-27 20:51:02 +08:00
ducalex
42b87963fd Add date column to the built-in search engine
Adds a date column to the built-in search engine to show when a torrent was published/uploaded on the engine site.
When a plugin wants to show a date, it can now add a `pub_date` entry to its result dict. The value format is a unix timestamp (an integer representing seconds since epoch).
Plugins with no date support will keep working.

PR #20703.
2024-04-29 21:10:24 +03:00
Chocobo1
d65d8558d6 Merge pull request #20728 from Chocobo1/webui_state
WebUI: clean up code
2024-04-29 12:58:14 +08:00
Chocobo1
321d7e5b17 Adjust tracker tier when adding additional trackers
Closes #20102.
PR #20729.
2024-04-25 12:18:30 +08:00
Chocobo1
4945ed576a WebUI: enforce strict comparison operators 2024-04-21 16:44:15 +08:00
Chocobo1
d7cded54e4 WebUI: enforce parentheses around operators
PR #20696.
2024-04-15 12:50:07 +08:00
Thomas Piccirello
29f0adf215 WebUI: Restore search tabs on load
This PR restores searches previously performed in the same browser (via local storage).

PR #20637.
2024-04-15 12:07:15 +08:00
Aliaksei Urbanski
f37d0c486c Add the Popularity metric
PR #20180.
2024-04-01 21:23:08 +03:00
Thomas Piccirello
eb9e98a4b3 WebUI: Add support for running concurrent searches
This PR adds support for running multiple concurrent searches in the Web UI. This is already supported in the GUI as well as by the Web API. Behavior mimics the GUI as closely as possible.

All filters and sorting are preserved per-tab, allowing you to apply unique filters and sorts to each of your searches. Row selection is also preserved across tab navigation.

Closes #12840.
PR #20593.
2024-03-29 15:05:43 +08:00
thalieht
5d1c249606 Use Start/Stop instead of Resume/Pause
PR #20532.

---------

Co-authored-by: Vladimir Golovnev (Glassez) <glassez@yandex.ru>
2024-03-25 19:11:04 +03:00