WebUI: Focus on filter field using Ctrl+F
Some checks are pending
CI - File health / Check (push) Waiting to run
CI - macOS / Build (push) Waiting to run
CI - Python / Check (push) Waiting to run
CI - Ubuntu / Build (push) Waiting to run
CI - WebUI / Check (push) Waiting to run
CI - Windows / Build (push) Waiting to run

This supports the filters on the Transfers, Search, and Execution Log tabs.

Closes #15482.
PR #22946.
This commit is contained in:
Thomas Piccirello 2025-07-07 14:01:51 -04:00 committed by GitHub
commit 399707fdc5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1755,7 +1755,7 @@ window.addEventListener("DOMContentLoaded", (event) => {
switch (event.key) { switch (event.key) {
case "a": case "a":
case "A": case "A":
if (event.ctrlKey) { if (event.ctrlKey || event.metaKey) {
if ((event.target.nodeName === "INPUT") || (event.target.nodeName === "TEXTAREA")) if ((event.target.nodeName === "INPUT") || (event.target.nodeName === "TEXTAREA"))
return; return;
if (event.target.isContentEditable) if (event.target.isContentEditable)
@ -1773,6 +1773,32 @@ window.addEventListener("DOMContentLoaded", (event) => {
event.preventDefault(); event.preventDefault();
deleteSelectedTorrentsFN(event.shiftKey); deleteSelectedTorrentsFN(event.shiftKey);
break; break;
case "f":
case "F":
if (event.ctrlKey || event.metaKey) {
if ((event.target.nodeName === "INPUT") || (event.target.nodeName === "TEXTAREA"))
return;
if (event.target.isContentEditable)
return;
const logsFilterElem = document.getElementById("filterTextInput");
const searchFilterElem = document.getElementById("searchInNameFilter");
const torrentsFilterElem = document.getElementById("torrentsFilterInput");
if (logsFilterElem?.isVisible()) {
event.preventDefault();
logsFilterElem.focus();
}
else if (searchFilterElem?.isVisible()) {
event.preventDefault();
searchFilterElem.focus();
}
else if (torrentsFilterElem?.isVisible()) {
event.preventDefault();
torrentsFilterElem.focus();
}
}
break;
} }
}); });