Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(23)

Unified Diff: LayoutTests/fast/canvas/canvas-createImageBitmap-out-of-bounds-src-expected.html

Issue 19393004: Allow eviction of ImageBitmaps that are created from ImageElements. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Fix drawImage out of bounds src rect. Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: LayoutTests/fast/canvas/canvas-createImageBitmap-out-of-bounds-src-expected.html
diff --git a/LayoutTests/fast/canvas/canvas-createImageBitmap-out-of-bounds-src-expected.html b/LayoutTests/fast/canvas/canvas-createImageBitmap-out-of-bounds-src-expected.html
new file mode 100644
index 0000000000000000000000000000000000000000..b13fc41b7d62761afdd5ce97f2aa4136757778a6
--- /dev/null
+++ b/LayoutTests/fast/canvas/canvas-createImageBitmap-out-of-bounds-src-expected.html
@@ -0,0 +1,64 @@
+<html>
+<body>
+<canvas id="c1" width="250" height="250"></canvas>
Stephen White 2013/07/25 18:01:07 These could probably be smaller too (to accommodat
+<canvas id="c2" width="250" height="250"></canvas>
+<br>
+<canvas id="c3" width="250" height="250"></canvas>
+<canvas id="c4" width="250" height="250"></canvas>
+<script type="text/javascript">
+var canvas1 = document.getElementById('c1');
+var canvas2 = document.getElementById('c2');
+var canvas3 = document.getElementById('c3');
+var canvas4 = document.getElementById('c4');
+var bgcanvas = document.createElement('canvas');
+bgcanvas.width = 100;
+bgcanvas.height = 100;
+var bgctx = bgcanvas.getContext('2d');
+bgctx.fillStyle = 'green';
+bgctx.fillRect(0, 0, bgcanvas.width, bgcanvas.height);
+
+var bgcanvasLowerRight = document.createElement('canvas');
+bgcanvasLowerRight.width = 100;
+bgcanvasLowerRight.height = 100;
+var bgctxLowerRight = bgcanvasLowerRight.getContext('2d');
+bgctxLowerRight.fillStyle = 'green';
+bgctxLowerRight.fillRect(bgcanvasLowerRight.width/2, bgcanvasLowerRight.height/2, bgcanvasLowerRight.width/2, bgcanvasLowerRight.height/2);
+
+var bgcanvasUpperLeft = document.createElement('canvas');
+bgcanvasUpperLeft.width = 100;
+bgcanvasUpperLeft.height = 100;
+var bgctxUpperLeft = bgcanvasUpperLeft.getContext('2d');
+bgctxUpperLeft.fillStyle = 'green';
+bgctxUpperLeft.fillRect(0, 0, bgcanvasUpperLeft.width/2, bgcanvasUpperLeft.height/2);
+
+var bgcanvasCenter = document.createElement('canvas');
+bgcanvasCenter.width = 300;
+bgcanvasCenter.height = 300;
+var bgctxCenter = bgcanvasCenter.getContext('2d');
+bgctxCenter.fillStyle = 'green';
+bgctxCenter.fillRect(100, 100, 100, 100);
+
+var ctx1 = canvas1.getContext('2d');
+var ctx2 = canvas2.getContext('2d');
+var ctx3 = canvas3.getContext('2d');
+var ctx4 = canvas4.getContext('2d');
+
+var srcCanvases = [bgcanvas, bgcanvasLowerRight, bgcanvasUpperLeft, bgcanvasCenter];
+var dstCtxs = [ctx1, ctx2, ctx3, ctx4];
+
+for (var i = 0; i < dstCtxs.length; ++i) {
+ var srcCanvas = srcCanvases[i];
+ var ctx = dstCtxs[i];
+ ctx.drawImage(srcCanvas, -100, -100, 300, 300, -25, -25, 300, 300);
+ ctx.drawImage(srcCanvas, -100, -100, 200, 200, -25, -25, 100, 100);
+ ctx.drawImage(srcCanvas, 0, -100, 100, 200, 75, -25, 100, 100);
+ ctx.drawImage(srcCanvas, 0, -100, 200, 200, 175, -25, 100, 100);
+ ctx.drawImage(srcCanvas, -100, 0, 200, 100, -25, 75, 100, 100);
+ ctx.drawImage(srcCanvas, 0, 0, 200, 100, 175, 75, 100, 100);
+ ctx.drawImage(srcCanvas, -100, 0, 200, 200, -25, 175, 100, 100);
+ ctx.drawImage(srcCanvas, 0, 0, 100, 200, 75, 175, 100, 100);
+ ctx.drawImage(srcCanvas, 0, 0, 200, 200, 175, 175, 100, 100);
+}
+
+</script>
+</body></html>

Powered by Google App Engine
This is Rietveld 408576698