mirror of
https://github.com/rust-lang/rust.git
synced 2025-02-06 03:52:53 +00:00
Rollup merge of #85506 - GuillaumeGomez:reset-focusedByTab, r=jsha
Reset "focusedByTab" field when doing another search Fixes https://github.com/rust-lang/rust/issues/85467. The problem was simply that we forget to reset the `focusedByTab` field, which was still referring to removed DOM elements. r? ``@jsha``
This commit is contained in:
commit
51a99eb603
@ -885,12 +885,12 @@ window.initSearch = function(rawSearchIndex) {
|
||||
focusSearchResult();
|
||||
}
|
||||
|
||||
// focus the first search result on the active tab, or the result that
|
||||
// Focus the first search result on the active tab, or the result that
|
||||
// was focused last time this tab was active.
|
||||
function focusSearchResult() {
|
||||
var target = searchState.focusedByTab[searchState.currentTab] ||
|
||||
document.querySelectorAll(".search-results.active a").item(0) ||
|
||||
document.querySelectorAll("#titles > button").item(searchState.currentTab);
|
||||
document.querySelectorAll(".search-results.active a").item(0) ||
|
||||
document.querySelectorAll("#titles > button").item(searchState.currentTab);
|
||||
if (target) {
|
||||
target.focus();
|
||||
}
|
||||
@ -1076,6 +1076,8 @@ window.initSearch = function(rawSearchIndex) {
|
||||
ret_others[0] + ret_in_args[0] + ret_returned[0] + "</div>";
|
||||
|
||||
search.innerHTML = output;
|
||||
// Reset focused elements.
|
||||
searchState.focusedByTab = [null, null, null];
|
||||
searchState.showResults(search);
|
||||
var elems = document.getElementById("titles").childNodes;
|
||||
elems[0].onclick = function() { printTab(0); };
|
||||
@ -1365,7 +1367,6 @@ window.initSearch = function(rawSearchIndex) {
|
||||
if (e.which === 38) { // up
|
||||
var previous = document.activeElement.previousElementSibling;
|
||||
if (previous) {
|
||||
console.log("previousElementSibling", previous);
|
||||
previous.focus();
|
||||
} else {
|
||||
searchState.focus();
|
||||
|
Loading…
Reference in New Issue
Block a user