Make ol.renderer.Map behave like a null renderer, fixes #82
With this patch, creating a new ol.renderer.Map will return a map renderer that does nothing. Previously, it could cause assertion failures.
This commit is contained in:
@@ -228,7 +228,15 @@ ol.renderer.dom.Map.prototype.render = function() {
|
|||||||
this.renderedRotation_ = mapRotation;
|
this.renderedRotation_ = mapRotation;
|
||||||
this.renderedSize_ = mapSize;
|
this.renderedSize_ = mapSize;
|
||||||
|
|
||||||
return goog.base(this, 'render');
|
var animate = false;
|
||||||
|
this.forEachReadyVisibleLayer(function(layer, layerRenderer) {
|
||||||
|
if (layerRenderer.render()) {
|
||||||
|
animate = true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return animate;
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -115,7 +115,9 @@ ol.renderer.Map.prototype.canRotate = goog.functions.FALSE;
|
|||||||
* @protected
|
* @protected
|
||||||
* @return {ol.renderer.Layer} layerRenderer Layer renderer.
|
* @return {ol.renderer.Layer} layerRenderer Layer renderer.
|
||||||
*/
|
*/
|
||||||
ol.renderer.Map.prototype.createLayerRenderer = goog.abstractMethod;
|
ol.renderer.Map.prototype.createLayerRenderer = function(layer) {
|
||||||
|
return null;
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -310,15 +312,7 @@ ol.renderer.Map.prototype.removeLayerRenderer = function(layer) {
|
|||||||
/**
|
/**
|
||||||
* @return {boolean} Animating.
|
* @return {boolean} Animating.
|
||||||
*/
|
*/
|
||||||
ol.renderer.Map.prototype.render = function() {
|
ol.renderer.Map.prototype.render = goog.functions.FALSE;
|
||||||
var animate = false;
|
|
||||||
this.forEachReadyVisibleLayer(function(layer, layerRenderer) {
|
|
||||||
if (layerRenderer.render()) {
|
|
||||||
animate = true;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
return animate;
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -562,7 +562,12 @@ ol.renderer.webgl.Map.prototype.render = function() {
|
|||||||
this.canvasSize_ = size;
|
this.canvasSize_ = size;
|
||||||
}
|
}
|
||||||
|
|
||||||
var animate = goog.base(this, 'render');
|
var animate = false;
|
||||||
|
this.forEachReadyVisibleLayer(function(layer, layerRenderer) {
|
||||||
|
if (layerRenderer.render()) {
|
||||||
|
animate = true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
var gl = this.getGL();
|
var gl = this.getGL();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user