Merge pull request #452 from twpayne/limit-post-renderer-set-timeout
Don't schedule a new post render delay if one is already active
This commit is contained in:
@@ -9,6 +9,7 @@ goog.provide('ol.RendererHints');
|
|||||||
|
|
||||||
goog.require('goog.Uri.QueryData');
|
goog.require('goog.Uri.QueryData');
|
||||||
goog.require('goog.async.AnimationDelay');
|
goog.require('goog.async.AnimationDelay');
|
||||||
|
goog.require('goog.async.Delay');
|
||||||
goog.require('goog.debug.Logger');
|
goog.require('goog.debug.Logger');
|
||||||
goog.require('goog.dom');
|
goog.require('goog.dom');
|
||||||
goog.require('goog.dom.ViewportSizeMonitor');
|
goog.require('goog.dom.ViewportSizeMonitor');
|
||||||
@@ -264,9 +265,9 @@ ol.Map = function(mapOptions) {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @private
|
* @private
|
||||||
* @type {function(this: ol.Map)}
|
* @type {goog.async.Delay}
|
||||||
*/
|
*/
|
||||||
this.handlePostRender_ = goog.bind(this.handlePostRender, this);
|
this.postRenderDelay_ = new goog.async.Delay(this.handlePostRender, 0, this);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @private
|
* @private
|
||||||
@@ -346,6 +347,7 @@ ol.Map.prototype.removePreRenderFunction = function(preRenderFunction) {
|
|||||||
*/
|
*/
|
||||||
ol.Map.prototype.disposeInternal = function() {
|
ol.Map.prototype.disposeInternal = function() {
|
||||||
goog.dom.removeNode(this.viewport_);
|
goog.dom.removeNode(this.viewport_);
|
||||||
|
goog.dispose(this.postRenderDelay_);
|
||||||
goog.base(this, 'disposeInternal');
|
goog.base(this, 'disposeInternal');
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -762,7 +764,9 @@ ol.Map.prototype.renderFrame_ = function(time) {
|
|||||||
this.dispatchEvent(
|
this.dispatchEvent(
|
||||||
new ol.MapEvent(ol.MapEventType.POSTRENDER, this, frameState));
|
new ol.MapEvent(ol.MapEventType.POSTRENDER, this, frameState));
|
||||||
|
|
||||||
goog.global.setTimeout(this.handlePostRender_, 0);
|
if (!this.postRenderDelay_.isActive()) {
|
||||||
|
this.postRenderDelay_.start();
|
||||||
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user