| Index: lib/dom/templates/html/frog/impl_Window.darttemplate
|
| diff --git a/lib/dom/templates/html/frog/impl_Window.darttemplate b/lib/dom/templates/html/frog/impl_Window.darttemplate
|
| index b3ca664746afac404de9fa8c480f116276d135d8..78335ee8d057cfc33755ccefcb7eb6afed36cd74 100644
|
| --- a/lib/dom/templates/html/frog/impl_Window.darttemplate
|
| +++ b/lib/dom/templates/html/frog/impl_Window.darttemplate
|
| @@ -16,37 +16,22 @@ class $CLASSNAME$EXTENDS$IMPLEMENTS native "@*DOMWindow" {
|
| }
|
|
|
| /** @domName DOMWindow.requestAnimationFrame */
|
| - int requestAnimationFrame(RequestAnimationFrameCallback callback) {
|
| - _ensureRequestAnimationFrame();
|
| - return _requestAnimationFrame(callback);
|
| - }
|
| -
|
| - void cancelAnimationFrame(id) {
|
| - _ensureRequestAnimationFrame();
|
| - _cancelAnimationFrame(id);
|
| - }
|
| -
|
| - int _requestAnimationFrame(RequestAnimationFrameCallback callback)
|
| - native 'requestAnimationFrame';
|
| -
|
| - void _cancelAnimationFrame(int id)
|
| - native 'cancelAnimationFrame';
|
| -
|
| - _ensureRequestAnimationFrame() native '''
|
| - if (this.requestAnimationFrame && this.cancelAnimationFrame) return;
|
| - vendors = ['ms', 'moz', 'webkit', 'o', ''];
|
| - for (var i = 0; i < vendors.length && !this.requestAnimationFrame; ++i) {
|
| - this.requestAnimationFrame = this[vendors[i] + 'RequestAnimationFrame'];
|
| - this.cancelAnimationFrame =
|
| - this[vendors[i]+'CancelAnimationFrame'] ||
|
| - this[vendors[i]+'CancelRequestAnimationFrame'];
|
| - }
|
| - if (this.requestAnimationFrame && this.cancelAnimationFrame) return;
|
| - this.requestAnimationFrame = function(callback) {
|
| - window.setTimeout(callback, 16 /* 16ms ~= 60fps */);
|
| - };
|
| - this.cancelAnimationFrame = function(id) { clearTimeout(id); }
|
| + int requestAnimationFrame(RequestAnimationFrameCallback callback) native '''
|
| + if (!window.requestAnimationFrame) {
|
| + window.requestAnimationFrame =
|
| + window.webkitRequestAnimationFrame ||
|
| + window.mozRequestAnimationFrame ||
|
| + window.msRequestAnimationFrame ||
|
| + window.oRequestAnimationFrame ||
|
| + function (callback) {
|
| + window.setTimeout(callback, 16 /* 16ms ~= 60fps */);
|
| + };
|
| + }
|
| + return window.requestAnimationFrame(callback);
|
| ''';
|
|
|
| + // Protect member 'requestAnimationFrame'.
|
| + _requestAnimationFrame() native 'requestAnimationFrame';
|
| +
|
| $!MEMBERS
|
| }
|
|
|