No composeFrame if prepareFrame returns false

This commit is contained in:
Éric Lemoine
2014-08-22 18:08:26 +02:00
parent 7a2bad543f
commit def1af4492
10 changed files with 22 additions and 15 deletions
@@ -143,4 +143,5 @@ ol.renderer.canvas.ImageLayer.prototype.prepareFrame =
this.updateLogos(frameState, imageSource);
}
return true;
};
+3 -2
View File
@@ -188,8 +188,9 @@ ol.renderer.canvas.Map.prototype.renderFrame = function(frameState) {
layerState.sourceState != ol.source.State.READY) {
continue;
}
layerRenderer.prepareFrame(frameState, layerState);
layerRenderer.composeFrame(frameState, layerState, context);
if (layerRenderer.prepareFrame(frameState, layerState)) {
layerRenderer.composeFrame(frameState, layerState, context);
}
}
this.dispatchComposeEvent_(ol.render.EventType.POSTCOMPOSE, frameState);
@@ -415,4 +415,5 @@ ol.renderer.canvas.TileLayer.prototype.prepareFrame =
(origin[0] - center[0]) / tilePixelResolution,
(center[1] - origin[1]) / tilePixelResolution);
return true;
};
@@ -176,7 +176,7 @@ ol.renderer.canvas.VectorLayer.prototype.prepareFrame =
if (!this.dirty_ && (frameState.viewHints[ol.ViewHint.ANIMATING] ||
frameState.viewHints[ol.ViewHint.INTERACTING])) {
return;
return true;
}
var frameStateExtent = frameState.extent;
@@ -195,7 +195,7 @@ ol.renderer.canvas.VectorLayer.prototype.prepareFrame =
this.renderedRevision_ == vectorLayerRevision &&
this.renderedRenderOrder_ == vectorLayerRenderOrder &&
ol.extent.containsExtent(this.renderedExtent_, frameStateExtent)) {
return;
return true;
}
var extent = this.renderedExtent_;
@@ -258,6 +258,7 @@ ol.renderer.canvas.VectorLayer.prototype.prepareFrame =
this.renderedRenderOrder_ = vectorLayerRenderOrder;
this.replayGroup_ = replayGroup;
return true;
};