diff --git a/lib/docs/main.js b/lib/docs/main.js index 504c708b45..bca4d6c84e 100644 --- a/lib/docs/main.js +++ b/lib/docs/main.js @@ -127,16 +127,20 @@ const NAV_MODES = { window.guideSearch = guidesSearchIndex; parseGuides(); - + // identifiers can contain '?' so we want to allow typing + // the question mark when the search is focused instead of toggling the help modal + let canToggleHelpModal = true; domSearch.disabled = false; domSearch.addEventListener("keydown", onSearchKeyDown, false); domSearch.addEventListener("focus", ev => { domSearchPlaceholder.classList.add("hidden"); + canToggleHelpModal = false; }); domSearch.addEventListener("blur", ev => { if (domSearch.value.length == 0) domSearchPlaceholder.classList.remove("hidden"); + canToggleHelpModal = true; }); domSectSearchAllResultsLink.addEventListener('click', onClickSearchShowAllResults, false); function onClickSearchShowAllResults(ev) { @@ -4044,6 +4048,8 @@ function addDeclToSearchResults(decl, declIndex, modNames, item, list, stack) { } break; case "?": + if (!canToggleHelpModal) break; + // toggle the help modal if (!domHelpModal.classList.contains("hidden")) { onEscape(ev);