aboutsummaryrefslogtreecommitdiffstats
path: root/src/ng/animate.js
diff options
context:
space:
mode:
authorMatias Niemelä2014-02-24 19:43:57 -0500
committerMatias Niemelä2014-02-24 21:23:18 -0500
commit4c4537e65e6cf911c9659b562d89e3330ce3ffae (patch)
tree3f9e6736a314073b5516beab3c86d7709e887b6b /src/ng/animate.js
parent62761428eff3a53e69367449eb81869e59e75e39 (diff)
downloadangular.js-4c4537e65e6cf911c9659b562d89e3330ce3ffae.tar.bz2
perf($animate): use rAF instead of timeouts to issue animation callbacks
Diffstat (limited to 'src/ng/animate.js')
-rw-r--r--src/ng/animate.js16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/ng/animate.js b/src/ng/animate.js
index 130e61e7..d90f086b 100644
--- a/src/ng/animate.js
+++ b/src/ng/animate.js
@@ -81,7 +81,11 @@ var $AnimateProvider = ['$provide', function($provide) {
return this.$$classNameFilter;
};
- this.$get = ['$timeout', function($timeout) {
+ this.$get = ['$timeout', '$$asyncCallback', function($timeout, $$asyncCallback) {
+
+ function async(fn) {
+ fn && $$asyncCallback(fn);
+ }
/**
*
@@ -126,7 +130,7 @@ var $AnimateProvider = ['$provide', function($provide) {
}
parent.append(element);
}
- done && $timeout(done, 0, false);
+ async(done);
},
/**
@@ -142,7 +146,7 @@ var $AnimateProvider = ['$provide', function($provide) {
*/
leave : function(element, done) {
element.remove();
- done && $timeout(done, 0, false);
+ async(done);
},
/**
@@ -189,7 +193,7 @@ var $AnimateProvider = ['$provide', function($provide) {
forEach(element, function (element) {
jqLiteAddClass(element, className);
});
- done && $timeout(done, 0, false);
+ async(done);
},
/**
@@ -212,7 +216,7 @@ var $AnimateProvider = ['$provide', function($provide) {
forEach(element, function (element) {
jqLiteRemoveClass(element, className);
});
- done && $timeout(done, 0, false);
+ async(done);
},
/**
@@ -234,7 +238,7 @@ var $AnimateProvider = ['$provide', function($provide) {
jqLiteAddClass(element, add);
jqLiteRemoveClass(element, remove);
});
- done && $timeout(done, 0, false);
+ async(done);
},
enabled : noop