Fix an issue with the setTimeout method used for waiting for fonts to load
This commit is contained in:
parent
b0ee046b31
commit
2692222152
12
test.js
12
test.js
@ -1,7 +1,7 @@
|
|||||||
/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- /
|
/* -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- /
|
||||||
/* vim: set shiftwidth=4 tabstop=8 autoindent cindent expandtab: */
|
/* vim: set shiftwidth=4 tabstop=8 autoindent cindent expandtab: */
|
||||||
|
|
||||||
var pdfDocument, canvas, pageDisplay, pageNum;
|
var pdfDocument, canvas, pageDisplay, pageNum, pageTimeout;
|
||||||
function load() {
|
function load() {
|
||||||
canvas = document.getElementById("canvas");
|
canvas = document.getElementById("canvas");
|
||||||
canvas.mozOpaque = true;
|
canvas.mozOpaque = true;
|
||||||
@ -47,6 +47,9 @@ function gotoPage(num) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function displayPage(num) {
|
function displayPage(num) {
|
||||||
|
if (pageNum != num)
|
||||||
|
window.clearTimeout(pageTimeout);
|
||||||
|
|
||||||
document.getElementById("pageNumber").value = num;
|
document.getElementById("pageNumber").value = num;
|
||||||
|
|
||||||
var t0 = Date.now();
|
var t0 = Date.now();
|
||||||
@ -104,8 +107,11 @@ function displayPage(num) {
|
|||||||
// If everything is ready do not delayed the page loading any more
|
// If everything is ready do not delayed the page loading any more
|
||||||
if (fontsReady)
|
if (fontsReady)
|
||||||
display();
|
display();
|
||||||
else
|
else {
|
||||||
setTimeout(displayPage, 150, num);
|
// FIXME Relying on an event seems much more cleaner here instead
|
||||||
|
// of a setTimeout...
|
||||||
|
pageTimeout = window.setTimeout(displayPage, 150, num);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function nextPage() {
|
function nextPage() {
|
||||||
|
Loading…
Reference in New Issue
Block a user