No context sharing when layer opacity is set
This commit is contained in:
@@ -17,7 +17,6 @@ import {
|
||||
getTopRight,
|
||||
} from '../../extent.js';
|
||||
import {createCanvasContext2D} from '../../dom.js';
|
||||
import {cssOpacity} from '../../css.js';
|
||||
|
||||
/**
|
||||
* @abstract
|
||||
@@ -95,8 +94,9 @@ class CanvasLayerRenderer extends LayerRenderer {
|
||||
let container, context;
|
||||
if (
|
||||
target &&
|
||||
target.style.opacity === cssOpacity(opacity) &&
|
||||
target.className === layerClassName
|
||||
target.className === layerClassName &&
|
||||
target.style.opacity === '' &&
|
||||
opacity === 1
|
||||
) {
|
||||
const canvas = target.firstElementChild;
|
||||
if (canvas instanceof HTMLCanvasElement) {
|
||||
|
||||
@@ -150,19 +150,6 @@ class CanvasVectorLayerRenderer extends CanvasLayerRenderer {
|
||||
this.clipping = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Get a rendering container from an existing target, if compatible.
|
||||
* @param {HTMLElement} target Potential render target.
|
||||
* @param {string} transform CSS Transform.
|
||||
* @param {number} opacity Opacity.
|
||||
*/
|
||||
useContainer(target, transform, opacity) {
|
||||
if (opacity < 1) {
|
||||
target = null;
|
||||
}
|
||||
super.useContainer(target, transform, opacity);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param {ExecutorGroup} executorGroup Executor group.
|
||||
* @param {import("../../PluggableMap.js").FrameState} frameState Frame state.
|
||||
|
||||
Reference in New Issue
Block a user