diff --git a/src/web/Manager.mjs b/src/web/Manager.mjs index 2e87210c..a70434c5 100755 --- a/src/web/Manager.mjs +++ b/src/web/Manager.mjs @@ -129,6 +129,7 @@ class Manager { // Controls document.getElementById("bake").addEventListener("click", this.controls.bakeClick.bind(this.controls)); document.getElementById("auto-bake").addEventListener("change", this.controls.autoBakeChange.bind(this.controls)); + document.getElementById("auto-bake").addEventListener("keydown", this.controls.autoBakeKeyboardHandler.bind(this.controls)); document.getElementById("step").addEventListener("click", this.controls.stepClick.bind(this.controls)); document.getElementById("clr-recipe").addEventListener("click", this.controls.clearRecipeClick.bind(this.controls)); document.getElementById("save").addEventListener("click", this.controls.saveClick.bind(this.controls)); diff --git a/src/web/waiters/ControlsWaiter.mjs b/src/web/waiters/ControlsWaiter.mjs index b57940a3..d281fb89 100755 --- a/src/web/waiters/ControlsWaiter.mjs +++ b/src/web/waiters/ControlsWaiter.mjs @@ -57,6 +57,18 @@ class ControlsWaiter { } } + /** + * Checks or unchecks the Auto Bake checkbox with "Enter" + * @param {Event} ev + */ + autoBakeKeyboardHandler(ev) { + const checkBox = document.getElementById("auto-bake"); + ev.preventDefault(); + if (ev.key === "Enter" || ev.key === " ") { + checkBox.checked = !checkBox.checked; + } + } + /** * Handler to trigger baking.