fix(rAF): move rAF to web-animations polyfill

RequestAnimationFrame polyfill is required for Android 4.3 and below,
and it must be written to the window object for Angular to work
correctly. Related #794
This commit is contained in:
Adam Bradley
2016-01-04 14:18:54 -06:00
parent 6bfdfddf73
commit faee5fcdba
5 changed files with 23 additions and 34 deletions

View File

@ -87,6 +87,21 @@ module.exports = function(grunt) {
config.wrap[target] = {
source: source,
preamble: '(function() {\n' +
' // RequestAnimationFrame Polyfill (Android 4.1, 4.2, 4.3)\n' +
' /*! @author Paul Irish */\n' +
' /*! @source https://gist.github.com/paulirish/1579671 */\n' +
' var rafLastTime = 0;\n' +
' if (!window.requestAnimationFrame)\n' +
' window.requestAnimationFrame = function(callback, element) {\n' +
' var currTime = Date.now();\n' +
' var timeToCall = Math.max(0, 16 - (currTime - rafLastTime));\n' +
' var id = window.setTimeout(function() { callback(currTime + timeToCall); }, timeToCall);\n' +
' rafLastTime = currTime + timeToCall;\n' +
' return id;\n' +
' };\n' +
' if (!window.cancelAnimationFrame) window.cancelAnimationFrame = function(id) { clearTimeout(id); };\n' +
' \n' +
' // Web Animations Polyfill\n' +
' if (document.documentElement.animate) {\n' +
' var player = document.documentElement.animate([], 0);\n' +
' var load = true;\n' +

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long