@@ -81,6 +81,7 @@ function getSearchElement() {
81
81
82
82
var disableShortcuts = getCurrentValue ( "rustdoc-disable-shortcuts" ) === "true" ;
83
83
var search_input = getSearchInput ( ) ;
84
+ var searchTimeout = null ;
84
85
85
86
// On the search screen, so you remain on the last tab you opened.
86
87
//
@@ -344,6 +345,10 @@ function getSearchElement() {
344
345
if ( hasClass ( help , "hidden" ) === false ) {
345
346
displayHelp ( false , ev , help ) ;
346
347
} else if ( hasClass ( search , "hidden" ) === false ) {
348
+ if ( searchTimeout !== null ) {
349
+ clearTimeout ( searchTimeout ) ;
350
+ searchTimeout = null ;
351
+ }
347
352
ev . preventDefault ( ) ;
348
353
hideSearchResults ( search ) ;
349
354
document . title = titleBeforeSearch ;
@@ -1799,7 +1804,6 @@ function getSearchElement() {
1799
1804
}
1800
1805
1801
1806
function startSearch ( ) {
1802
- var searchTimeout ;
1803
1807
var callback = function ( ) {
1804
1808
clearTimeout ( searchTimeout ) ;
1805
1809
if ( search_input . value . length === 0 ) {
@@ -1815,7 +1819,10 @@ function getSearchElement() {
1815
1819
search_input . oninput = callback ;
1816
1820
document . getElementsByClassName ( "search-form" ) [ 0 ] . onsubmit = function ( e ) {
1817
1821
e . preventDefault ( ) ;
1818
- clearTimeout ( searchTimeout ) ;
1822
+ if ( searchTimeout !== null ) {
1823
+ clearTimeout ( searchTimeout ) ;
1824
+ searchTimeout = null ;
1825
+ }
1819
1826
search ( ) ;
1820
1827
} ;
1821
1828
search_input . onchange = function ( e ) {
@@ -1824,7 +1831,10 @@ function getSearchElement() {
1824
1831
return ;
1825
1832
}
1826
1833
// Do NOT e.preventDefault() here. It will prevent pasting.
1827
- clearTimeout ( searchTimeout ) ;
1834
+ if ( searchTimeout !== null ) {
1835
+ clearTimeout ( searchTimeout ) ;
1836
+ searchTimeout = null ;
1837
+ }
1828
1838
// zero-timeout necessary here because at the time of event handler execution the
1829
1839
// pasted content is not in the input field yet. Shouldn’t make any difference for
1830
1840
// change, though.
0 commit comments