summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/canvas/offscreen/layers/2d.layer.global-filter.html
blob: 2388a06a964222700dd1f71b57ad0b7004becfbb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<!DOCTYPE html>
<!-- DO NOT EDIT! This test has been generated by /html/canvas/tools/gentest.py. -->
<link rel="match" href="2d.layer.global-filter-expected.html">
<title>Canvas test: 2d.layer.global-filter</title>
<h1>2d.layer.global-filter</h1>
<p class="desc">Tests that layers ignore the global context filter.</p>
<canvas id="canvas" width="150" height="100">
  <p class="fallback">FAIL (fallback content)</p>
</canvas>
<script>
  const canvas = new OffscreenCanvas(150, 100);
  const ctx = canvas.getContext('2d');

  ctx.filter = 'blur(5px)'

  ctx.beginLayer();
  ctx.fillRect(10, 10, 30, 30);  // `ctx.filter` applied to draw call.
  ctx.endLayer();

  ctx.beginLayer();
  ctx.filter = 'none';
  ctx.fillRect(60, 10, 30, 30);  // Should not be filted by the layer.
  ctx.endLayer();

  ctx.fillRect(110, 10, 30, 30);  // `ctx.filter` is still set.

  const outputCanvas = document.getElementById("canvas");
  outputCanvas.getContext('2d').drawImage(canvas, 0, 0);
</script>