diff --git a/web/kvm/index.html b/web/kvm/index.html index 87414671..803223ac 100644 --- a/web/kvm/index.html +++ b/web/kvm/index.html @@ -318,6 +318,15 @@ + + Ask page close confirmation: + +
+ + +
+ +
diff --git a/web/kvm/navbar-system.pug b/web/kvm/navbar-system.pug index c415c8e9..4bf4ea77 100644 --- a/web/kvm/navbar-system.pug +++ b/web/kvm/navbar-system.pug @@ -96,6 +96,8 @@ li(class="right") label(for="gpio-switch-__v3_usb_breaker__") span(class="switch-inner") span(class="switch") + tr + +menu_switch_notable("page-close-ask-switch", "Ask page close confirmation", true, true) hr div(class="buttons buttons-row") button(data-force-hide-menu data-show-window="keyboard-window" class="row50") • Show keyboard diff --git a/web/share/js/kvm/main.js b/web/share/js/kvm/main.js index 85fcb5db..3717f71d 100644 --- a/web/share/js/kvm/main.js +++ b/web/share/js/kvm/main.js @@ -32,11 +32,17 @@ import {Session} from "./session.js"; export function main() { if (checkBrowser()) { - window.onbeforeunload = function(event) { - let text = "Are you sure you want to close PiKVM session?"; - event.returnValue = text; - return text; - }; + tools.storage.bindSimpleSwitch($("page-close-ask-switch"), "page.close.ask", true, function(value) { + if (value) { + window.onbeforeunload = function(event) { + let text = "Are you sure you want to close PiKVM session?"; + event.returnValue = text; + return text; + }; + } else { + window.onbeforeunload = null; + } + }); initWindowManager();