Add 'rendercomplete' event
This commit is contained in:
@@ -332,6 +332,13 @@ function expireIconCache(map, frameState) {
|
||||
MapRenderer.prototype.renderFrame = VOID;
|
||||
|
||||
|
||||
/**
|
||||
* @param {module:ol/render/EventType} type Event type.
|
||||
* @param {module:ol/PluggableMap~FrameState} frameState Frame state.
|
||||
*/
|
||||
MapRenderer.prototype.dispatchRenderEvent = VOID;
|
||||
|
||||
|
||||
/**
|
||||
* @param {module:ol/layer/Layer~State} state1 First layer state.
|
||||
* @param {module:ol/layer/Layer~State} state2 Second layer state.
|
||||
|
||||
@@ -69,9 +69,8 @@ class CanvasMapRenderer extends MapRenderer {
|
||||
/**
|
||||
* @param {module:ol/render/EventType} type Event type.
|
||||
* @param {module:ol/PluggableMap~FrameState} frameState Frame state.
|
||||
* @private
|
||||
*/
|
||||
dispatchComposeEvent_(type, frameState) {
|
||||
dispatchRenderEvent(type, frameState) {
|
||||
const map = this.getMap();
|
||||
const context = this.context_;
|
||||
if (map.hasListener(type)) {
|
||||
@@ -135,7 +134,7 @@ class CanvasMapRenderer extends MapRenderer {
|
||||
|
||||
this.calculateMatrices2D(frameState);
|
||||
|
||||
this.dispatchComposeEvent_(RenderEventType.PRECOMPOSE, frameState);
|
||||
this.dispatchRenderEvent(RenderEventType.PRECOMPOSE, frameState);
|
||||
|
||||
const layerStatesArray = frameState.layerStatesArray;
|
||||
stableSort(layerStatesArray, sortByZIndex);
|
||||
@@ -164,7 +163,7 @@ class CanvasMapRenderer extends MapRenderer {
|
||||
context.restore();
|
||||
}
|
||||
|
||||
this.dispatchComposeEvent_(RenderEventType.POSTCOMPOSE, frameState);
|
||||
this.dispatchRenderEvent(RenderEventType.POSTCOMPOSE, frameState);
|
||||
|
||||
if (!this.renderedVisible_) {
|
||||
this.canvas_.style.display = '';
|
||||
|
||||
@@ -249,9 +249,8 @@ class WebGLMapRenderer extends MapRenderer {
|
||||
/**
|
||||
* @param {module:ol/render/EventType} type Event type.
|
||||
* @param {module:ol/PluggableMap~FrameState} frameState Frame state.
|
||||
* @private
|
||||
*/
|
||||
dispatchComposeEvent_(type, frameState) {
|
||||
dispatchRenderEvent(type, frameState) {
|
||||
const map = this.getMap();
|
||||
if (map.hasListener(type)) {
|
||||
const context = this.context_;
|
||||
@@ -411,7 +410,7 @@ class WebGLMapRenderer extends MapRenderer {
|
||||
this.textureCache_.set((-frameState.index).toString(), null);
|
||||
++this.textureCacheFrameMarkerCount_;
|
||||
|
||||
this.dispatchComposeEvent_(RenderEventType.PRECOMPOSE, frameState);
|
||||
this.dispatchRenderEvent(RenderEventType.PRECOMPOSE, frameState);
|
||||
|
||||
/** @type {Array<module:ol/layer/Layer~State>} */
|
||||
const layerStatesToDraw = [];
|
||||
@@ -470,7 +469,7 @@ class WebGLMapRenderer extends MapRenderer {
|
||||
frameState.animate = true;
|
||||
}
|
||||
|
||||
this.dispatchComposeEvent_(RenderEventType.POSTCOMPOSE, frameState);
|
||||
this.dispatchRenderEvent(RenderEventType.POSTCOMPOSE, frameState);
|
||||
|
||||
this.scheduleRemoveUnusedLayerRenderers(frameState);
|
||||
this.scheduleExpireIconCache(frameState);
|
||||
|
||||
Reference in New Issue
Block a user