mirror of
https://github.com/Polymer/polymer.git
synced 2025-02-25 18:55:30 -06:00
change after render method to Polymer.RenderStatus.afterNextRender
This commit is contained in:
parent
c52090780a
commit
8949c0470b
@ -49,33 +49,34 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
||||
});
|
||||
},
|
||||
|
||||
_afterFirstRenderQueue: [],
|
||||
_afterNextRenderQueue: [],
|
||||
|
||||
_waitingAfterFirstRender: false,
|
||||
_waitingNextRender: false,
|
||||
|
||||
afterFirstRender: function(element, fn, args) {
|
||||
if (!this._waitingAfterFirstRender) {
|
||||
this._waitingAfterFirstRender = true;
|
||||
this.whenReady(this._flushAfterFirstRender);
|
||||
afterNextRender: function(element, fn, args) {
|
||||
if (!this._waitingNextRender) {
|
||||
this._waitingNextRender = true;
|
||||
this.whenReady(this._flushAfterNextRender);
|
||||
}
|
||||
this._afterFirstRenderQueue.push([element, fn, args]);
|
||||
this._afterNextRenderQueue.push([element, fn, args]);
|
||||
},
|
||||
|
||||
_flushAfterFirstRender: function() {
|
||||
_flushAfterNextRender: function() {
|
||||
// we want to defer flush until just after the next paint.
|
||||
requestAnimationFrame(function() {
|
||||
setTimeout(Polymer.RenderStatus.__flushAfterFirstRender);
|
||||
setTimeout(Polymer.RenderStatus.__flushAfterNextRender);
|
||||
});
|
||||
},
|
||||
|
||||
__flushAfterFirstRender: function() {
|
||||
__flushAfterNextRender: function() {
|
||||
// called without context so force here.
|
||||
var self = Polymer.RenderStatus;
|
||||
self._waitingAfterFirstRender = false;
|
||||
for (var i=0, h; i < self._afterFirstRenderQueue.length; i++) {
|
||||
h = self._afterFirstRenderQueue[i];
|
||||
self._waitingNextRender = false;
|
||||
for (var i=0, h; i < self._afterNextRenderQueue.length; i++) {
|
||||
h = self._afterNextRenderQueue[i];
|
||||
h[1].apply(h[0], h[2] || Polymer.nar);
|
||||
};
|
||||
self._afterFirstRenderQueue = [];
|
||||
self._afterNextRenderQueue = [];
|
||||
}
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user