mirror of
https://github.com/qbittorrent/qBittorrent
synced 2025-08-20 21:33:27 -07:00
WebUI: Allow closing dialogs with Escape key
Tested on the following WebUI Modals: 1. Delete 2. Rename files 3. Settings 4. About 5. Statistics 6. Add torrent PR #22920. Closes #13891.
This commit is contained in:
parent
163f683186
commit
e3141ce449
7 changed files with 72 additions and 0 deletions
|
@ -11,6 +11,15 @@
|
|||
"use strict";
|
||||
|
||||
window.addEventListener("DOMContentLoaded", (event) => {
|
||||
window.addEventListener("keydown", (event) => {
|
||||
switch (event.key) {
|
||||
case "Escape":
|
||||
event.preventDefault();
|
||||
window.parent.qBittorrent.Client.closeFrameWindow(window);
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
document.getElementById("cancelBtn").focus();
|
||||
document.getElementById("cancelBtn").addEventListener("click", (e) => {
|
||||
e.preventDefault();
|
||||
|
|
|
@ -11,6 +11,15 @@
|
|||
"use strict";
|
||||
|
||||
window.addEventListener("DOMContentLoaded", (event) => {
|
||||
window.addEventListener("keydown", (event) => {
|
||||
switch (event.key) {
|
||||
case "Escape":
|
||||
event.preventDefault();
|
||||
window.parent.qBittorrent.Client.closeFrameWindow(window);
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
document.getElementById("cancelBtn").focus();
|
||||
document.getElementById("cancelBtn").addEventListener("click", (e) => {
|
||||
e.preventDefault();
|
||||
|
|
|
@ -11,6 +11,15 @@
|
|||
"use strict";
|
||||
|
||||
window.addEventListener("DOMContentLoaded", (event) => {
|
||||
window.addEventListener("keydown", (event) => {
|
||||
switch (event.key) {
|
||||
case "Escape":
|
||||
event.preventDefault();
|
||||
window.parent.qBittorrent.Client.closeFrameWindow(window);
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
document.getElementById("cancelBtn").focus();
|
||||
document.getElementById("cancelBtn").addEventListener("click", (e) => {
|
||||
e.preventDefault();
|
||||
|
|
|
@ -11,6 +11,15 @@
|
|||
"use strict";
|
||||
|
||||
window.addEventListener("DOMContentLoaded", (event) => {
|
||||
window.addEventListener("keydown", (event) => {
|
||||
switch (event.key) {
|
||||
case "Escape":
|
||||
event.preventDefault();
|
||||
window.parent.qBittorrent.Client.closeFrameWindow(window);
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
const searchParams = new URLSearchParams(window.location.search);
|
||||
const host = searchParams.get("host");
|
||||
|
||||
|
|
|
@ -14,6 +14,15 @@
|
|||
"use strict";
|
||||
|
||||
window.addEventListener("DOMContentLoaded", (event) => {
|
||||
window.addEventListener("keydown", (event) => {
|
||||
switch (event.key) {
|
||||
case "Escape":
|
||||
event.preventDefault();
|
||||
window.parent.qBittorrent.Client.closeFrameWindow(window);
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
const encodedUrls = new URLSearchParams(window.location.search).get("urls");
|
||||
if (encodedUrls !== null) {
|
||||
const urls = encodedUrls.split("|").map(decodeURIComponent);
|
||||
|
|
|
@ -1778,6 +1778,24 @@ window.addEventListener("DOMContentLoaded", (event) => {
|
|||
deleteSelectedTorrentsFN(event.shiftKey);
|
||||
break;
|
||||
|
||||
case "Escape": {
|
||||
if (event.target.isContentEditable)
|
||||
return;
|
||||
|
||||
event.preventDefault();
|
||||
const modalInstances = Object.values(MochaUI.Windows.instances);
|
||||
if (modalInstances.length <= 0)
|
||||
return;
|
||||
|
||||
// MochaUI.currentModal does not update after a modal is closed
|
||||
const focusedModal = modalInstances.find((modal) => {
|
||||
return modal.windowEl.hasClass("isFocused");
|
||||
});
|
||||
if (focusedModal !== undefined)
|
||||
focusedModal.close();
|
||||
break;
|
||||
}
|
||||
|
||||
case "f":
|
||||
case "F":
|
||||
if (event.ctrlKey || event.metaKey) {
|
||||
|
|
|
@ -14,6 +14,15 @@
|
|||
"use strict";
|
||||
|
||||
window.addEventListener("DOMContentLoaded", (event) => {
|
||||
window.addEventListener("keydown", (event) => {
|
||||
switch (event.key) {
|
||||
case "Escape":
|
||||
event.preventDefault();
|
||||
window.parent.qBittorrent.Client.closeFrameWindow(window);
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
let submitted = false;
|
||||
|
||||
document.getElementById("uploadForm").addEventListener("submit", (event) => {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue