mirror of
https://github.com/mozilla/pdf.js.git
synced 2025-04-22 16:18:08 +02:00
Merge pull request #8222 from tjgrathwell/ios-fake-cancel-animation-frame
ios: Patch cancelAnimationFrame whenever fakeRequestAnimationFrame is used
This commit is contained in:
commit
b665b0319a
1 changed files with 12 additions and 5 deletions
|
@ -643,8 +643,13 @@ PDFJS.compatibilityChecked = true;
|
|||
|
||||
// Support: IE<10, Android<4.0, iOS
|
||||
(function checkRequestAnimationFrame() {
|
||||
function fakeRequestAnimationFrame(callback) {
|
||||
window.setTimeout(callback, 20);
|
||||
function installFakeAnimationFrameFunctions() {
|
||||
window.requestAnimationFrame = function (callback) {
|
||||
return window.setTimeout(callback, 20);
|
||||
};
|
||||
window.cancelAnimationFrame = function (timeoutID) {
|
||||
window.clearTimeout(timeoutID);
|
||||
};
|
||||
}
|
||||
|
||||
if (!hasDOM) {
|
||||
|
@ -652,7 +657,7 @@ PDFJS.compatibilityChecked = true;
|
|||
}
|
||||
if (isIOS) {
|
||||
// requestAnimationFrame on iOS is broken, replacing with fake one.
|
||||
window.requestAnimationFrame = fakeRequestAnimationFrame;
|
||||
installFakeAnimationFrameFunctions();
|
||||
return;
|
||||
}
|
||||
if ('requestAnimationFrame' in window) {
|
||||
|
@ -660,8 +665,10 @@ PDFJS.compatibilityChecked = true;
|
|||
}
|
||||
window.requestAnimationFrame =
|
||||
window.mozRequestAnimationFrame ||
|
||||
window.webkitRequestAnimationFrame ||
|
||||
fakeRequestAnimationFrame;
|
||||
window.webkitRequestAnimationFrame;
|
||||
if (!('requestAnimationFrame' in window)) {
|
||||
installFakeAnimationFrameFunctions();
|
||||
}
|
||||
})();
|
||||
|
||||
// Support: Android, iOS
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue