diff --git a/mkdocs/contrib/search/templates/search/main.js b/mkdocs/contrib/search/templates/search/main.js index 1782f203..abad951f 100644 --- a/mkdocs/contrib/search/templates/search/main.js +++ b/mkdocs/contrib/search/templates/search/main.js @@ -70,7 +70,9 @@ if (!window.Worker) { $.getScript(base_url + "/search/worker.js").done(function () { console.log('Loaded worker'); init(); - window.postMessage = initSearch; + window.postMessage = function (msg) { + onWorkerMessage({data: msg}); + }; }).fail(function (jqxhr, settings, exception) { console.error('Could not load worker.js'); }); diff --git a/mkdocs/contrib/search/templates/search/worker.js b/mkdocs/contrib/search/templates/search/worker.js index 1ba07860..a3ccc07f 100644 --- a/mkdocs/contrib/search/templates/search/worker.js +++ b/mkdocs/contrib/search/templates/search/worker.js @@ -84,7 +84,7 @@ function onScriptsLoaded () { console.log('Lunr index built, search ready'); } allowSearch = true; - postMessage({allowSearch: true}); + postMessage({allowSearch: allowSearch}); } function init () { diff --git a/mkdocs/themes/readthedocs/css/theme_extra.css b/mkdocs/themes/readthedocs/css/theme_extra.css index cf8123e3..ab107ba6 100644 --- a/mkdocs/themes/readthedocs/css/theme_extra.css +++ b/mkdocs/themes/readthedocs/css/theme_extra.css @@ -128,8 +128,11 @@ pre .cs, pre .c { * Additions specific to the search functionality provided by MkDocs */ -.search-results article { +.search-results { margin-top: 23px; +} + +.search-results article { border-top: 1px solid #E1E4E5; padding-top: 24px; } diff --git a/mkdocs/themes/readthedocs/js/theme.js b/mkdocs/themes/readthedocs/js/theme.js index c3801dc4..aecbb861 100644 --- a/mkdocs/themes/readthedocs/js/theme.js +++ b/mkdocs/themes/readthedocs/js/theme.js @@ -13,19 +13,27 @@ $( document ).ready(function() { // Keyboard navigation document.addEventListener("keydown", function(e) { - if ($(e.target).is(':input')) return true; - var key = e.which || e.keyCode || window.event && window.event.keyCode; - var page; - switch (key) { - case 78: // n - page = $('[role="navigation"] a:contains(Next):first').prop('href'); - break; - case 80: // p - page = $('[role="navigation"] a:contains(Previous):first').prop('href'); - break; - default: break; - } - if (page) window.location.href = page; + var key = e.which || e.keyCode || window.event && window.event.keyCode; + var page; + switch (key) { + case 78: // n + page = $('[role="navigation"] a:contains(Next):first').prop('href'); + break; + case 80: // p + page = $('[role="navigation"] a:contains(Previous):first').prop('href'); + break; + case 13: // enter + if (e.target === document.getElementById('mkdocs-search-query')) { + e.preventDefault(); + } + break; + default: break; + } + if ($(e.target).is(':input')) { + return true; + } else if (page) { + window.location.href = page; + } }); $(document).on('click', "[data-toggle='rst-current-version']", function() {