diff --git a/packages/serveradmin/serveradmin/servershell/static/js/servershell/search.js b/packages/serveradmin/serveradmin/servershell/static/js/servershell/search.js index 1a69c5ce..818f5d9a 100644 --- a/packages/serveradmin/serveradmin/servershell/static/js/servershell/search.js +++ b/packages/serveradmin/serveradmin/servershell/static/js/servershell/search.js @@ -195,4 +195,16 @@ $(document).ready(function() { servershell.term = url.searchParams.get('term'); servershell.submit_search(false, false); }) + + $(document).on('keypress', (event) => { + if (event.key === '/') { + // We want to skip the cases where a user is typing / inside a textfield + // But we still want it to work in cases where the user just ticked a checkbox + if ($('input:focus:not([type=checkbox]), textarea:focus').length !== 0) { + return; + } + event.preventDefault(); // Prevent i.e. Firefox's quick search + $('#term').focus(); + } + }); }); diff --git a/packages/serveradmin/serveradmin/servershell/templates/servershell/index.html b/packages/serveradmin/serveradmin/servershell/templates/servershell/index.html index 2e807758..cd2f4461 100644 --- a/packages/serveradmin/serveradmin/servershell/templates/servershell/index.html +++ b/packages/serveradmin/serveradmin/servershell/templates/servershell/index.html @@ -95,6 +95,7 @@