X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/88e076a12a4d9e88092e128bdeb8d72e471c95a5..d6456e961afde217e045140fdf8cf88921897536:/resources/assets/js/components/dropdown.js diff --git a/resources/assets/js/components/dropdown.js b/resources/assets/js/components/dropdown.js index d2fca0556..4de1e239b 100644 --- a/resources/assets/js/components/dropdown.js +++ b/resources/assets/js/components/dropdown.js @@ -118,8 +118,8 @@ class DropDown { } }); - // Arrow navigation - this.container.addEventListener('keydown', event => { + // Keyboard navigation + const keyboardNavigation = event => { if (event.key === 'ArrowDown' || event.key === 'ArrowRight') { this.focusNext(); event.preventDefault(); @@ -128,9 +128,14 @@ class DropDown { event.preventDefault(); } else if (event.key === 'Escape') { this.hide(); + this.toggle.focus(); event.stopPropagation(); } - }); + }; + this.container.addEventListener('keydown', keyboardNavigation); + if (this.moveMenu) { + this.menu.addEventListener('keydown', keyboardNavigation); + } // Hide menu on enter press or escape this.menu.addEventListener('keydown ', event => {