Fix bug such that search is updated one a new page arrives + make the search update happen only very 250ms
This commit is contained in:
parent
c9fb5637c3
commit
12b27044aa
@ -576,21 +576,34 @@ var PDFView = {
|
||||
|
||||
if (pdfTitle)
|
||||
document.title = pdfTitle + ' - ' + document.title;
|
||||
|
||||
pdf.textExtracted = (function pdfTextExtracted(pageIdx, content) {
|
||||
this.search();
|
||||
}).bind(this);
|
||||
},
|
||||
|
||||
startTextExtraction: function pdfViewStartTextExtraction(pdf) {
|
||||
var searchResults = document.getElementById('searchResults');
|
||||
searchResults.textContent = '';
|
||||
|
||||
pdf.textExtracted = (function pdfTextExtracted(pageIdx, content) {
|
||||
this.search();
|
||||
}).bind(this);
|
||||
pdf.extractText();
|
||||
|
||||
this.pdfDoc = pdf;
|
||||
this.pdfDoc.extractText();
|
||||
},
|
||||
|
||||
search: function pdfViewStartSearch() {
|
||||
// Limit this function to run every <SEARCH_TIMEOUT>ms.
|
||||
var SEARCH_TIMEOUT = 250;
|
||||
var lastSeach = this.lastSearch;
|
||||
var now = Date.now();
|
||||
if (lastSeach && (now - lastSeach) < SEARCH_TIMEOUT) {
|
||||
if (!this.searchTimer)
|
||||
this.searchTimer =
|
||||
setTimeout(this.search, SEARCH_TIMEOUT - (now - lastSeach));
|
||||
|
||||
return;
|
||||
}
|
||||
this.searchTimer = null;
|
||||
this.lastSearch = now;
|
||||
|
||||
function bindLink(link, pageNumber) {
|
||||
link.href = '#' + pageNumber;
|
||||
link.onclick = function searchBindLink() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user