Title: [119591] trunk
Revision
119591
Author
[email protected]
Date
2012-06-06 08:17:20 -0700 (Wed, 06 Jun 2012)

Log Message

[Chromium] imageSmoothingEnabled should apply to patterns
https://bugs.webkit.org/show_bug.cgi?id=88103

Patch by Keyar Hood <[email protected]> on 2012-06-06
Reviewed by Stephen White.

Source/WebCore:

Test: fast/canvas/canvas-imageSmoothingEnabled-patterns.html

When drawing patterns on a Canvas, the imageSmoothingEnabled flag is
respected.
* platform/graphics/skia/PlatformContextSkia.cpp:
(WebCore::PlatformContextSkia::setupShader):

LayoutTests:

Added tests for imageSmoothingEnabled flag applying to patterns.

Modified the TestExpectations file as tests are failing due to the new
change. It makes the pictures prettier (and it agrees with other
browsers) so we have decided that the new results are to be considered
correct.
* fast/canvas/canvas-imageSmoothingEnabled-patterns.html: Added.
* platform/chromium-linux/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.png: Added.
* platform/chromium-linux/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.txt: Added.
* platform/chromium/TestExpectations:

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (119590 => 119591)


--- trunk/LayoutTests/ChangeLog	2012-06-06 14:57:42 UTC (rev 119590)
+++ trunk/LayoutTests/ChangeLog	2012-06-06 15:17:20 UTC (rev 119591)
@@ -1,3 +1,21 @@
+2012-06-06  Keyar Hood  <[email protected]>
+
+        [Chromium] imageSmoothingEnabled should apply to patterns
+        https://bugs.webkit.org/show_bug.cgi?id=88103
+
+        Reviewed by Stephen White.
+
+        Added tests for imageSmoothingEnabled flag applying to patterns.
+
+        Modified the TestExpectations file as tests are failing due to the new
+        change. It makes the pictures prettier (and it agrees with other
+        browsers) so we have decided that the new results are to be considered
+        correct.
+        * fast/canvas/canvas-imageSmoothingEnabled-patterns.html: Added.
+        * platform/chromium-linux/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.png: Added.
+        * platform/chromium-linux/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.txt: Added.
+        * platform/chromium/TestExpectations:
+
 2012-06-06  Mikhail Pozdnyakov  <[email protected]>
 
         [EFL][DRT] http/tests/globalhistory testcases do not pass

Added: trunk/LayoutTests/fast/canvas/canvas-imageSmoothingEnabled-patterns.html (0 => 119591)


--- trunk/LayoutTests/fast/canvas/canvas-imageSmoothingEnabled-patterns.html	                        (rev 0)
+++ trunk/LayoutTests/fast/canvas/canvas-imageSmoothingEnabled-patterns.html	2012-06-06 15:17:20 UTC (rev 119591)
@@ -0,0 +1,99 @@
+<html>
+ <head>
+ <script type="application/x-_javascript_">
+    function createImage() {
+        var image = document.createElement('canvas');
+        image.height = 2;
+        image.width = 2;
+        // We use this to colour the individual pixels
+        var dotter = image.getContext('2d').createImageData(1, 1);
+
+        // Colour the black pixesl.
+        dotter.data[0] = 0;
+        dotter.data[1] = 0;
+        dotter.data[2] = 0;
+        dotter.data[3] = 255;
+        image.getContext('2d').putImageData(dotter, 0, 0);
+        image.getContext('2d').putImageData(dotter, 1, 1);
+
+        // Colour the white pixels.
+        dotter.data[0] = 255;
+        dotter.data[1] = 255;
+        dotter.data[2] = 255;
+        dotter.data[3] = 255;
+        image.getContext('2d').putImageData(dotter, 1, 0);
+        image.getContext('2d').putImageData(dotter, 0, 1);
+        return image;
+    }
+
+    function drawFillRect(canvas, image, smoothing) {
+        var ctx = canvas.getContext('2d');
+        var pattern = ctx.createPattern(image, "repeat");
+        ctx.fillStyle = pattern;
+        ctx.webkitImageSmoothingEnabled = smoothing;
+        ctx.scale(10, 10);
+        ctx.fillRect(0, 0, canvas.width, canvas.height);
+    }
+
+    function drawFill(canvas, image, smoothing) {
+        var ctx = canvas.getContext('2d');
+        var pattern = ctx.createPattern(image, "repeat");
+        ctx.fillStyle = pattern;
+        ctx.webkitImageSmoothingEnabled = smoothing;
+        ctx.scale(10, 10);
+        ctx.beginPath();
+        ctx.moveTo(0,0);
+        ctx.lineTo(10, 10);
+        ctx.lineTo(0, 10);
+        ctx.fill();
+    }
+
+    function drawStroke(canvas, image, smoothing) {
+        var ctx = canvas.getContext('2d');
+        var pattern = ctx.createPattern(image, "repeat");
+        ctx.strokeStyle = pattern;
+        ctx.lineWidth = 5;
+        ctx.webkitImageSmoothingEnabled = smoothing;
+        ctx.scale(10, 10);
+        ctx.beginPath();
+        ctx.moveTo(0,0);
+        ctx.lineTo(10, 10);
+        ctx.stroke();
+    }
+
+    function draw() {
+        if (window.layoutTestController)
+            layoutTestController.dumpAsText(true);
+
+        var image = createImage();
+        drawFillRect(document.getElementById('unsmoothedFillRect'), image,
+            false);
+        drawFillRect(document.getElementById('smoothedFillRect'), image,
+            true);
+        drawFill(document.getElementById('unsmoothedFill'), image,
+            false);
+        drawFill(document.getElementById('smoothedFill'), image,
+            true);
+        drawStroke(document.getElementById('unsmoothedStroke'), image,
+            false);
+        drawStroke(document.getElementById('smoothedStroke'), image,
+            true);
+    }
+
+  </script>
+ </head>
+ <body _onload_="draw()">
+   <div>
+     <canvas id="unsmoothedFillRect" width="100" height="100"></canvas>
+     <canvas id="smoothedFillRect" width = "100" height="100"></canvas>
+   </div>
+   <div>
+     <canvas id="unsmoothedFill" width="100" height="100"></canvas>
+     <canvas id="smoothedFill" width = "100" height="100"></canvas>
+   </div>
+   <div>
+     <canvas id="unsmoothedStroke" width="100" height="100"></canvas>
+     <canvas id="smoothedStroke" width = "100" height="100"></canvas>
+   </div>
+ </body>
+</html>

Modified: trunk/LayoutTests/platform/chromium/TestExpectations (119590 => 119591)


--- trunk/LayoutTests/platform/chromium/TestExpectations	2012-06-06 14:57:42 UTC (rev 119590)
+++ trunk/LayoutTests/platform/chromium/TestExpectations	2012-06-06 15:17:20 UTC (rev 119591)
@@ -3788,3 +3788,18 @@
 //BUGCR84157 WIN : platform/chromium/virtual/gpu/fast/canvas/canvas-currentColor.html = TEXT
 BUGCR131187 : platform/chromium/virtual/gpu/canvas/philip/tests/2d.gradient.radial.cone.cylinder.html = TEXT
 BUGCR131187 : platform/chromium/virtual/gpu/fast/canvas/canvas-currentColor.html = TEXT
+// Needs rebaselining for changes that fix BUGWK88103
+BUGWK88253 : fast/canvas/image-object-in-canvas.html = IMAGE
+BUGWK88253 : fast/canvas/image-pattern-rotate.html = IMAGE
+BUGWK88253 : svg/custom/nested-pattern-boundingBoxModeContent.svg = IMAGE
+BUGWK88253 : svg/custom/non-scaling-stroke.svg = IMAGE
+BUGWK88253 : svg/custom/oversized-pattern-scale.svg = IMAGE
+BUGWK88253 : svg/custom/pattern-in-defs.svg = IMAGE
+BUGWK88253 : svg/custom/pattern-rotate.svg = IMAGE
+BUGWK88253 : svg/custom/pattern-skew-transformed.svg = IMAGE
+BUGWK88253 : svg/transforms/text-with-pattern-inside-transformed-html.xhtml = IMAGE
+BUGWK88253 : svg/W3C-SVG-1.1/pservers-grad-06-b.svg = IMAGE
+BUGWK88253 : svg/custom/pattern-with-transformation.svg = IMAGE
+BUGWK88253 : fast/canvas/canvas-imageSmoothingEnabled-patterns.html = FAIL
+BUGWK88253 : platform/chromium/virtual/gpu/fast/canvas/canvas-imageSmoothingEnabled-patterns.html = FAIL
+

Added: trunk/LayoutTests/platform/chromium-linux/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.png (0 => 119591)


--- trunk/LayoutTests/platform/chromium-linux/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.png	                        (rev 0)
+++ trunk/LayoutTests/platform/chromium-linux/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.png	2012-06-06 15:17:20 UTC (rev 119591)
@@ -0,0 +1,38 @@
+\x89PNG
+
+
+IHDR X')tEXtchecksum18611efba8851f0bed8dc2737c7b2829\xD39\xB02IDATx\x9C\xED\xDD?\x8F\W\xFD\xC7\xF1\xEB\xD1\xC8\xAF\xAD\xD5l\x90\x9E<\x80\xA41E\x85+\x84"]
+\x94\x82?M\x8D\x90P\xA4HT\x92)@\x8A\xB0"\xAAt L\xC1@Ȃ%\xD9b\xBC\xB1Wc3\x9A\xFC\x8A\xF3c\xB8\xECzvwf\xBE\xF7\xDEsϼ^\xC5J\xC6{\xC8z\xB7\x98\x8F\xCE\\xBF}\xE5\xD3O?\xAD\x883\xE8\xFA(\x8D\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`\xC3U\xBFq\xE5ʕs\x8E\x9D_\xCFڵ\xB3u\x93\xC9䒟\x89\xEF\xA5Z9\xB0\xD8\xD8l6\x9B\xCDf\xF3\xF9<}\x8DF\xA3\xD1h8.?\xD6y\xEA\x93w\xEAl\xD7?(h\x8A\x81o6\x9BM\xA7\xD3\xE5\xC7\xF1x<\x8FӼH;#\xFD2}\x9CN\xA7\xE9\xD3\xE6\xF3y\x9A\xBBs\xB6\xEB4\xC5\xC0\x8A\x976\xC7\xC9\xC9\xC9\xF1\xF1\xF1\xC9\xC9I\x83\xC1`\xB1XTU\x95~\xB9\xB7\xB7\xB7\xBF\xBF\xBF\xB7\xB7\x97>y\xB1X\x83<E2\xB0⥻\x9C\xE3\xE3\xE3G\x8F\xCF\xE7\xF3\xE1p\xB8X,\xC6\xE3qUU\xE9.g\xFF\xF6\xED\xDB\xFB\xFB\xFB\xC3\xE1p>\x9F\x83\xE9t\xBA\x83g\xA0Hn\xE2\xD5ot?~\xFC\xE4ɓ\xD9l\xF6\xFC\xF9\xF3\xB37:\xE3\xF1\xF8\xE6͛\xA3\xD1\xE8\xEAիgo\x83v\xE1,\xC9
+V\xBCtg\x93\xAEj\xC6\xE3\xF1\xC1\xC1A\xC3\xE1\xB0\xFA\xCF}O\xBA\xE6\x99N\xA7\x87\x87\x87\xD3\xE9\xF4ɓ'除];E2\xB0\xE2-\xE8Ni\xAE\xFE\xD0wU{>\xFD\x85\xBBS}\xEF\xDAY(\x92\x81\xAF\xFE\x94\xF7h4z\xE1j\xE9)\xEF\xD9l\xF6\xC27\xD4v\xE7,\xC9\xC0\x8A\x97.o\xD2Sދ\xC5"\xD5
+\x83\xC1\xF2Fg\xF9\x94\xF7`0H\xA5\x83\xC5b\xB1\xBC
+ک\xB3P\xA4\x95+\xCFfz/Φ\x85\xB1\xEA\x93\xD3\xC2X\xF5\xBB\xBBv\x8A\xE4+^\x86\xCD\xF4<\xCFv\xFD\x83\x80\xA6X\xF1ꞗw\xB6\xEB4ŋ\\xBCac\xDD\xF3\xF2\xCE@\x91\xACx\xA3,\x9B\xE9y\x9E\x80"\xA9iǫ\xDF\xE8\xE4\xD3L\xCF\xF3,\xC9
+V\xBCY\x96\xCD\xF4<\xCF@\x91\xBC\xC8\xC5k\xAE{^\xDEY(\x92\xB9x\xF5\xA7\xBC϶\xCB\xEBOy\xAF\xDB=/\xEF,\xC9\xC0\x8A7˲\x99\x9E\xE7Y(\xD2\xCA\xB9^4\xD339{JZ\xAB~w\x9B\xEEyyg\xA0H^\xF9\xE2e\xD8L\xCF\xF3l\xD7?(h\x8A\x81\xAF\xA1\xEEyyg\xBB\xFEA@S\xACx\xF3ƺ\xE7\xE5\x9D\x80"X\xF1fY6\xD3\xF3<Er\x8B\xAF~\xA3\x93O3=ϳP$7X\xF1FY6\xD3\xF3<E2\xB0\xE25\xD7=/\xEF,\xC9\xC0\x8AW\xCA\xFBl\xBB\xBC\xFE\x94\xF7\xBA\xDD\xF3\xF2\xCE@\x91\xACx\xA3,\x9B\xE9y\x9E\x80"\xADXy6\xD3{q6-\x8CU\x9F\xBCM\x{1FCF33}P$7X\xF12l\xA6\xE7y\xB6\xEB4\xC5\xC0\x8A\xD7P\x{1FCF33}]\xFF\xA0\xA0)^\xE4\xE2
+랗w\x8Ad`\xC5e\xD9L\xCF\xF3,IM;^\xFDF'\x9Ffz\x9Eg\xA0Hn\xB0\xE2Ͳl\xA6\xE7y\x8A\xE4E.^s\xDD\xF3\xF2\xCE@\x91\xBC\xC8ū?\xE5}\xB6]^\xCA{\xDD\xEEyyg\xA0HV\xBCY\x96\xCD\xF4<\xCF@\x91V\xBE\xC8\x{16265E}\xC9\xD9S\xD2\xC2X\xF5\xBB\xDBt\xCF\xCB;E\xF2\xCA/\xC3fz\x9Eg\xBB\xFEA@S\xACx
+u\xCF\xCB;\xDB\xF5
+\x9Ab`ś7\xD6=/\xEF,\xC9\xC0\x8A7˲\x99\x9E\xE7Y(\x92[\x84x\xF5\x9D|\x9A\xE9y\x9E\x80"\xB9\xC1\x8A7ʲ\x99\x9E\xE7Y(\x92\x81\xAF\xB9\xEEyyg\xA0HV\xBC\xFAS\xDEg\xDB\xE5\xF5\xA7\xBC\xD7힗w\x8Ad`\xC5e\xD9L\xCF\xF3,i\xE5\xC0ʳ\x99ދ\xB3ia\xAC\xFA\xE4m\xBA\xE7\xE5\x9D\x80"\xB9\xC1\x8A\x97a3=ϳ]\xFF\xA0\xA0)V\xBC\x86\xBA\xE7\xE5\x9D\xED\xFAM\xF1"o\xD8X\x{1FCF33}P$+\xDE(\xCBfz\x9Eg\xA0Hj\xDA\xF1\xEA7:\xF94\xD3\xF3<Er\x83o\x96e3=ϳP$/r\xF1\x9A랗w\x8A\xE4E.^\xFD)\xEF\xB3\xED\xF2\xFAS\xDE\xEBv\xCF\xCB;E2\xB0\xE2Ͳl\xA6\xE7y\x8A\xB4\xF2E\xAE\xCD\xF4LΞ\x92ƪ\xDFݦ{^\xDEY(\x92W\xBEx6\xD3\xF3<\xDB\xF5
+\x9Ab`\xC5k\xA8{^\xDEٮP\xD0+޼\xB1\xEEyyg\xA0HV\xBCY\x96\xCD\xF4<\xCF@\x91\xDC"ī\xDF\xE8\xE4\xD3L\xCF\xF3,\xC9
+V\xBCQ\x96\xCD\xF4<\xCF@\x91\xACx\xCDu\xCF\xCB;E2\xB0\xE2՟\xF2>\xDB.\xAF?\xE5\xBDn\x{1FCF33}P$+\xDE(\xCBfz\x9Eg\xA0H+V\x9E\xCD\xF4^\x9CMc\xD5'o\xD3=/\xEF,\xC9
+V\xBC\x9B\xE9y\x9E\xED\xFAM1\xB0\xE25\xD4=/\xEFl\xD7?(h\x8A\xB9x\xC3ƺ\xE7\xE5\x9D\x80"X\xF1FY6\xD3\xF3<ERӎW\xBF\xD1ɧ\x99\x9E\xE7Y(\x92\xACx\xB3,\x9B\xE9y\x9E\x80"y\x91\x8B\xD7\\x{1FCF33}P$/r\xF1\xEAOy\x9Fm\x97ן\xF2^\xB7{^\xDEY(\x92\x81o\x96e3=ϳP\xA4\x95/r\xBDh\xA6gr\xF6\x94\xB40V\xFD\xEE6\xDD\xF3\xF2\xCE@\x91\xBC\xF2\xC5˰\x99\x9E\xE7ٮP\xD0+^C\xDD\xF3\xF2\xCEv\xFD\x83\x80\xA6X\xF1\xE6\x8Du\xCF\xCB;E2\xB0\xE2Ͳl\xA6\xE7y\x8A\xE4!^\xFDF'\x9Ffz\x9Eg\xA0Hn\xB0⍲l\xA6\xE7y\x8Ad`\xC5k\xAE{^\xDEY(\x92\x81\xAF\xFE\x94\xF7\xD9vy\xFD)\xEFu\xBB\xE7\xE5\x9D\x80"X\xF1FY6\xD3\xF3<EZ9\xB0\xF2l\xA6\xF7\xE2lZ\xAB>y\x9B\xEEyyg\xA0Hn\xB0\xE2e\xD8L\xCF\xF3l\xD7?(h\x8A\x81\xAF\xA1\xEEyyg\xBB\xFEA@S\xBC\xC8\xC56\xD6=/\xEF,\xC9\xC0\x8A7ʲ\x99\x9E\xE7Y(\x92\x9Av\xBC\xFA\x8DN>\xCD\xF4<\xCF@\x91\xDC`śe\xD9L\xCF\xF3,ɋ\\xBC\xE6\xBA\xE7\xE5\x9D\x80"y\x91\x8BW\xCA\xFBl\xBB\xBC\xFE\x94\xF7\xBA\xDD\xF3\xF2\xCE@\x91\xACx\xB3,\x9B\xE9y\x9E\x80"]9\xBF`\xC0\xBA\xBCM\xCC\xC0f`3\xB0\x82\xADX\xAF\xBD\xF6Z\x9B_G1~\xFB\xDB\xDFv\xFD%[9\xB0\xDE}\xF7]k>\xFC\xF5\xAF\xDD\xF5Wt鼷m\xAC\xCD|\xF8\xE1\x87?\xFB\xD9Ϻ\xFE*\x80\xCE\\xF0\x96\x8D\xB5\x81\xF9|\xFE\xFB\xDF\xFF\xFE\xC7?\xFEq\xD7_Ѝ\x8Br\xB7\xB1֕\xFEm\xBE_\xFD\xEAW\xDF\xF9\xCEw\xBA\xFEZ\x80\\xEAo\xDAXkI\xFF6\xDF\xC9\xC9\xC9O\xFAS\xDF7\xD8A\x97\xCD4\xD8X\x977\x8D\xC6\xE3\xF1\xAD[\xB7n߾\xFD\xC1ܻw\xAF\xEB\xAFh\xD5,\xEB\x92\xEA\xEB\xF3\x9F\xFF\xFC\x9F\xFE\xF4'ϼ\xC0N\xAE\xF5\xD9\xEF\xBE\xFBnUU\xE6\xC2\xF9\x86\xC3\xE1h4\x8B\xC5b4ݼy\xF3\x8F\xFC\xE3\xF5\xEB׿\xF6\xB5\xAFu\xFD\xA5mXo`U6\xD6%\x8CF\xA3\xE1p\xB8X,\xC6\xE3\xF1b\xB1\x87\xC3\xE1\xF0\xAF\xFD\xEBo~\xF3\x9B\xAF~\xF5\xAB]u@\xE3V\xACO?\xFD\xF4\x9Cc\xAF\xBD\x{19A375}JZTg\xFF\xF7\xBF\xFC\xE5/W\xAE\\xF9\xCAW\xBE\xD2\xFE\x97\xB4i\xED\xAC\xC4=\xD69F\xA3Q\xBA\xC4Jg\xB3\xD9l6K\xB5\xF0\xE1Ç\xFF\xFE\xF7\xBF\xEF޽\xDB\xF5\xD74hÁU\xD9X\xAB\xA5\x87ܗ\xA7\xD3\xE9t:Mk>\x9F\xF8ᇏ?\xF6\xD7\xA0`\x9B\xAC\xCA\xC6Z!\xDD]\xED\xED\xED\xED\xEF\xEF\xEF\xED\x{D97B}\xAB\xC5b1\xAA\xFFtޟ>}\xFA\xEDo\xBB\xEB\xAFh\xC4V\xAB\xB2\xB1^$\xDD]\xED\xEF\xEF߾}{8\xCE\xE7\xF3\xC1`0\x9DN\xABZ\xE7\xFD\xEF\xFF\xFB\xDBo\xBF\xDD\xF5\xC4[\xA3\x83\xB5\x8A>\xD6)\xF5\xAC\xF1x|\xF3\xE6\xCD\xD1ht\xF5\xEA\xD5\xE5
+\x96\xCE;\x94-``U6\xD6\xFFJwTGGG\x8F=\xFA\xDB\xDF\xFEvxx8\x9DN\x9F<y2\x9F\xCF+\x9Dw\xD8۾E\xB8\xE4\xBD¥4\xB0\xD2S\xED\xA7r\xAFj\x8F\xC0\xA7\xBF`\x98:\xEF\xE6)\x94$l`U6\xD6ԟj\x9F\xCDfO\x9E<\x99\xCDfϟ?_,\x95\xCE;\xEC\x80ȁU\xD9XUUUU\xBA\xACJO\xB5\x83TgX,\xCB,\x9Dw(\xDBʁu\xE5ʕs\x8E鼟#-\xAAU\xBF\xAB\xF3\xC5\xBE\xC1Jv\xFC\xAB\x9EnO\x8Fa\xD5\xC3\xEE:\xEFP\xBCFV\xB5\xDBk\xF9\x90{\xFA8\x8F\x97O\xB5\xA7]\xA5\xF3ekj`U;\xBC\xB1\x96\xA5\xAB\xE3\xE3㓓\x93\xFAS\xED\x95\xCE;\xEC\x80V\xB5\xAB+\xDD]?z\xF4\xE8\xF8\xF8x>\x9F/\x9Fj\xAFt\xDE`ĄFϱ\x83
+\xD2\xFA
+\xD6\xE3Ǐ_\x98i\xD0y\x80\x825{\x83\x95\xEC\xDA=V\xBA\xA3JWS\xE3\xF1\xF8\xE0\xE0 
+\xA9\xF4\x97\xD3U\xBA֚N\xA7/켧\xB3\xA9\xF3\xFE\xE6\x9Bov\xFD\xD6\xD3\xC6\xC0\xAAvlc\x9Dj\xB5\xD7r\xAFt\xDE`\xB44\xB0\xAA]\xDAXg[\xEDg\xDF\xD4y\x80\x82\xB57\xB0\xAA\x9D\xD9X/l\xB5\x83\xE5
+\x96\xCE;\x94m\xE5\xC0:\xBFծ\xF3~\x8EU\xAD\xF6D\xE7\x8A\xD7\xEA
+VR\xFC=\xD69\xAD\xF6\xF4Q\xE7\xCA\xD6\xC1\xC0\xAAJ\xDFX\xE7\xB7\xDAu\xDE\xA0x\xDD\xAC\xAA\xE8\x8Dua\xAB]\xE7\xCA\xD6\xD9\xC0\xAA\xCA\xDDX\x97i\xB5\xEB\xBC@\xC1/\xB9\x9F\xAF\xC8\xCE\xFB%[\xED:\xEFP\xAA.o\xB0\x92\xF2\xEE\xB1.\xDFj\xD7y\x80"u?\xB0\xAA\xE26\xD6Z\xADv\x9Dw(O\xAB*kc\xAD\xDBj\xD7y\x80\xC2\xE42\xB0\xAA\x826\xD6\xADv\x9Dw(\xC9ʁ\xB5M\xAB}\xC7;ڷ9\xAB\xF3Y\xC9\xE8+)\xE0k\xE3V\xBB\xCE;\x94!\xBB\x81U\xF5cm\xD3j\xD7y\x80\xE48\xB0\xAA\x9Eo\xAC-[\xED:\xEF\xD0w\x99\xAC\xAA\xCFk\xFBV\xBB\xCE;\xF4Z\xC7%\xF7\xF3\xF5\xB4\xF3\xD2j\xD7y\x80\xFE\xCA\xF7+\xE9\xE3=VT\xAB]\xE7z*\xF7\x81U\xF5pc\xB6\xDAu\xDE\xA0\x8Fz0\xB0\xAA\xBEm\xAC\xD8V\xBB\xCE;\xF4ΕU\xD9ϮB\xA3\xE7\x9C\xFDַ\xBE\x95\xFFƚL&\xF5\xFC\xFA\xA9V{\xFAX\xFF\xE5\xA9On\xE2엾\xF4%\x9Dwh\xD3\xCA\xACN&ԅg{\xD1yo\xA2վ\xCDY\x9DwhY?\xDE"\\xEA\xC5{\x85
+\xB5\xDAu\xDE\xA0/z6\xB0\xAA>l\xAC\xE6Z\xED:\xEF\xD0\xFDXU\xF6\xAB\xD1V\xBB\xCE;䯗\xAB\xCA{c5\xDDj\xD7y\x80\xCCe]r?_\xB6\x9D\xF7Z\xED:\xEF\x90\xB3\xBE\xDE`%y\xDEc\xB5\xD3j\xD7y\x80l\xF5{`UYn\xAC\xD6Z\xED:\xEF\x90\xA7\xDE\xAC*\xBF\x8D\xD5f\xAB]\xE72\xB4\xB2\xE4~\xC11\x9D\xF7&\x93I\xFB\xADv\x9Dw\xC8\xCA\xCA\xAC'ԅg3鼷\xDFj\xDF\xE6\xAC\xCE;\x84+\xE1-¥L\xDE+\xEC\xA4ծ\xF3\xF9(j`Uyl\xAC\xAEZ\xED:\xEF\x90\x89\xD2V\x95\xC1\xC6\xEA\xB0ծ\xF39(p`U]o\xACn[\xED:\xEFй\x97\xDC\xCF\xD7a\xE7\xBD\xF3V\xBB\xCE;t\xAB\xCC\xAC\xA4\xAB{\xACZ\xED:\xEFС\x92V\xD5\xD1\xC6ʤծ\xF3])|`U]l\xAC|Z\xED:\xEFЉ\x95%\xF7>\x86Fs\xE8\xBCO&\x93\xDCZ\xED:\xEFв\x957X\xBD\x9BP\x9Em\xAD\xF3\x9E[\xAB}\x9B\xB3:\xEF\xB0\x81\xF2\xDF"\j\xED\xBD\xC2[\xED:\xEFЦXU[+\xCFV\xBB\xCE;\xB4f\xB7V\xD5\xCA\xC6ʶծ\xF3\xEDع\x81U5\xBF\xB1rn\xB5\xEB\xBC@\x8A-\xB9\x9F\xAF\xD1\xCE{\xE6\xADv\x9Dwh\xDA.\xDE`%\xCD\xDDc\xE5\xDFj\xD7y\x80F\xED\xEE\xC0\xAA\xDBX\xBDh\xB5\xEB\xBC@svz`U\xCDl\xAC\xBE\xB4\xDAu\xDE\xA0!+K\xEE\xEBah\xB4\x9D\xCE\xFBd2\xE9W\xAB]\xE7­\xBC\xC1\xCAp5z6\xB0\xF3ޯV\xFB6gu\xDE\xE0\x85v\xFD-¥\xC0\xF7
+{\xD7j\xDF\xE6\xAC\xCE;\x9Ce`\xFDW\xD4\xC6\xEAc\xAB]\xE7X\xFF#dcu\xD8[\xD7y\x80X\xA7m\xBF\xB1\xFA\xDBj\xD7y\x80;Zr?ߖ\x9D\xF7y׽u\x9Dw\xE8\x96\xAC\xDB\xE6+\x87޺\xCE;t\xC8\xC0Zi㍕Io]\xE7\xBAb`\x9Dg\xB3\x8D5̦\xB7\xAE\xF3\x9DXYr\xEFc,4\x87\xCE\xFBd2ɭ\xB7\xDE\xD5Y\x9Dwv\xD6\xCA\xAC\xDE͠FϮ\xD5y_\xD5=O6k\xA6\xF7\xF1\xAC\xCE;;\xCB[\x84\x97\xB2\xD6{\x85\xF6ֻ:\xAB\xF3\xC0n2\xB0.\xEB\xF2+\xCF޺\xCE;\xB4\xC6\xC0Z\xC3%7\xD60\xD7޺\xCE;\xB4\xC3\xC0Z\xCFe6Vνu\x9Dwh\x81\x92\xFB\xDA.\xEC\xBC/\xD7=\xEFc\xAB]\xE7.\xC3
+\xD6&ο\xC7ʿ\xB7\xAE\xF3\x8D2\xB06t\xCE\xC6\xEAEo]\xE7\x9Ac`mn\xD5ƚ\xAF\xD9=\xEFc\xAB]\xE7α\xB2\xE4~\xC1\xB1\xC6B\xDB\xE9\xBCO&\x93\xF6\x9B\xE9}<\xAB\xF3@\xC16X\xAC\xE2o3\xB0\x82X\xC1,\x80`+3
+]\xFD}\xBD\xBE\x9BL&\xED\xFC\x87^z\xE9\xA5o|\xE3\xA3Ѩ\x9D\xFFpy:X\xF1f\xB3Y\xCAl.ۛ)\xB3\xB9\xFCX\xFF\xE5\xA9O^\xEB\xEC{\xEF\xBD\xF7ꫯ^\xBBv\xAD\xEB?1\xF0?\xACx˲y\xFAXm\x94~\x99>ֻ\xE7iW\xADu\xF6\xFD\xF7߿s\xE7\xCEիW\xBB\xFEC\xFF\xE5\xACx\xF59\xFD\xAB|\x9B\xFD\xB3ʗ9{rr\xF2\xE0\xC1\x83gϞu\xFCgj\xB2\xBB\xC1\x9AN\xA7\xE3\xF1\xB8\xEB\xAFb+\xE9\xFE\xE9\xF8\xF8\xF8ѣG\xC7\xC7\xC7\xE9_A^,\xE9ϕ\xEE\x9F\xF6\xF7\xF7o߾\xBD\xBF\xBF\x9F\xFE\xE4\xC1`0\x9DN7;{|||\xFF\xFE\xFD\xBBw\xEFz2\x91\xDD
+\xD6+\xAF\xBC\x92\xA6F\xD5o\xA1?~\xBC\xF1
+\xD6\xE5\xCF\xFD\xE2\xBF899\xE9\xF8OTU\x95\xE1
+֟\xFF\xFC\xE7W^y\xE5\x83>\xE8\xEF=V\xBAgJ\xD7K\xE3\xF1\xF8\xE0\xE0 \x8D\xA1\xE1pX\xFD\xE7\x8E*]MM\xA7\xD3\xC3\xC3\xC3\xF4V\xE0|>\xDF\xE6\xEC?\xFF\xF9\xCFw\xDEy\xE7\x8D7޸q\xE3F\xC7~\xD8y\xD9
+\xAC\xAA\xFFk\xF9z\xFAK\x82\xF5ի\xDA#\xF0\xE9/	\xD6r\xDF\xF2\xEC\xC7\xFC\xA3\xFD\xE8{\xDF\xFB\x9E\x8D\xDD\xCA\xEE-\xC2$m\xAC\x9E\xBEW\xFB\xFBZg\xFF\xF5\xAF\xBD\xFD\xF6\xDBO\x9F>\xED\xF6;;\xEEʪ\xECgW\xA1\xD1\xFA\xD9/~񋽻ǚL&)\xB8\xB0X,\xD2\xC7TXˏ\xF5_\x9E\xFA䐳\x9F\xFD\xECg_\xFD\xF5\xEBׯw\xFD\xCD\x80\xB5\xF2-\xC2v&Ժg{!͠U\xBF\x9BfP\xA3g?\xF9\xE4\x93_\xFE\xF2\x97:\xEFЕ\x9F\xC1\xEA\xBB\xC0V\xBB\xCE;\xF4\x91\x81/\xB6ծ\xF3\xBDc`ū?\xA8\xBE\xB7\xB7\x97\x86\xD1b\xB18\xFB\xA0\xFA\xC9\xC9I\xFA\xE4\xC1`p\xF6!\xF7\xED\xCF=x\xF0\xE0Ν;\xEE\xB1\xA0M=X\xBD輇\xB7\xDAu\xDE\xA0_2\xCD4\xACҋvC\xADv\x9Dw葞\xDD`\xF5\xA2A\xDAP\xAB}\x9B\xB3:\xEFЦ\x9E
+\xAC\xAA\xAB\xB9V\xBB\xCE;\xF4B\xCF\xDE"L2\xEF\xBC7\xDAj\xD7y\x80\xFC\xAD,\xB9_pL\xE7}\x85\xC9d\xD2B\xAB]\xE7r\x96\xF5?\x95\xB3\xEE\xD9L&\x93\xAE\xBF\x84\x8B\xBD\xF4\xD2K:\xEFМ\xFE=\x83\x95\xBF\xD6Z\xED:\xEF\x90'+^\x9B\xADv\x9DwȐ\x81\xAF\xCDV\xBB\xCE;d\xA8\xA8\x81\x95I\xE7\xBD\xE5V\xBB\xCE;䦗\x99\x86U2i7\xB4\xDFj\xD7y\x80\xACu\x83\x95I\x83\xB4\x93V\xFB6gu\xDE VQ\xAB\xCAccu\xD5j\xD7y\x80L\xF5a\xD2y\xE7\xBD\xC3V\xBB\xCE;䠨\xD0h\x9D\xF7\xC9d\xD2y\xAB]\xE7\xBA\xD5\xE3*gݳ\xED\xE8E\xC9\xFD|:\xEF\xB0\xA5Ҟ\xC1\xCAA&\xADv\x9Dw芁/\x9FV\xBB\xCE;t\xC2\xC0\x8A\x97O\xAB]\xE7:\xB1C\xAB\xB5\xCE{V\xADv\x9Dwh_\x81\x99\x86U\xDAi7\xE4\xD6j\xD7y\x80\x96\xED\xD0
+V;
+\xD2o~\xF3\x9B\xEF\xBD\xF7^n\xAD\xF6m\xCE\xEA\xBC\xC0\xBAvh`U\xADl\xAC\xD1h\xF4ꫯ\xBE\xFF\xFE\xFBGGGY\xB5\xDAu\xDE\xA05;\xF4a\xD2B\xE7\xFDڵkw\xEE\xDC\x8DF\xB9\xB5\xDAu\xDE\xA0;m\xB9\xF3\xFE\xECٳ\xFB\xF7\xEF\xA7{\xAC\xACZ\xED:\xEFдK
+\xAC\xE9t\xFA\xF2\xCB/?|\xF8p\xF9\xBF\xE4?\xA1\xD6=ۄ\xD9l\xF6\xF3\x9F\xFF\xFC\xF0\xF0\xB0\xE5\xFFn\xA3t\xDE\xE0B\x97\xBD\xC1:\xB5\xB1\xF2I\xB9
+\xAC\xAA\xAANNN\xDEy睏?\xFE8\xB7V\xFB6go޼\xA9\xF3\xE7X\xE3-\xC2\xFA\xC6\xCAs$e8\xB0\xAA\xAAz\xFA\xF4\xE9\xF8Ï>\xFAh\x99Jao}\xF9\xF1\x85\xBD\xF5\xDC\xCE\x9DwXe\x8D\x87\xDC\xC7\xE3\xF1\xFE\xF0\x87/|\xE1\xCD}5E\xBAq\xE3\xC6\xF7\xBF\xFF\xFD\x83\x83\x83\xE5\xE3\x8BŢw\xB9\x9F:{rr\xF2\xE0\xC1\x83gϞu\xF8\x8D\x80l\xAD\x97iH\xEB\xE5\x97_n\xE8\xAB\xE9P\xA3\x9D\xF77n|\xF7\xBB\xDF\xFD\xC9O~\xF2\xC9'\x9F\x8CF\xA3\xCF}\xEEs\x99\xB4\xDAu\xDE\xA0	kg\xD2\xC6j\xE2K\xE9V\xD3\xED\x867n\xBC\xFE\xFA\xEB\xA9\xF3>\x9B\xCD\xEA\xB7A\xF5\x9B\xA4\xD1h\xA4\xF3\xBD\xB6Ih\xB4\x9Dѯe-4H\xAF_\xBF\x9E:\xEFUU-\x9B采\x87\xF5\xDEzUU\xB7n\xDD\xD2y\x80\xFEڭ\x92\xFB\xF9t\xDEu\xDE \xC4Ε\xDCϧ\xF3\xAE\xF3\xDB۰\xE4~\xC1\xFFi3
+:\xEF:\xEF%``\xE9\xBCoF\xE7Js\x83\xA5\xF3\xBE\x9Dw(R\xD8[\x84:\xEF\x9B\xD1y\x80\xF2\x84=\xE4\xAE󾙳\x9D\xF7>>\xE4\xAE\xF3u\x91\x99\x9D\xF7͜\xEA\xBC\x83[\xB7n-\x9B\xE9{{{\x8F=Z\xF6\xD6\x8B\xC5\xD1\xD1Ѳ\xB7~rrr\xFB\xF6\xEDeo\xFD\xFC\xB3:\xEFЎ\xE0L\x83\xCE\xFBf\xEA\x9D\xF7\xCF|\xE63\xF5۠\xE7ϟ\xD7o\x92>\xFA\xE8\xA3zo\xFD\xEAի\xF5\x9B\xA4\xF3\xCF\xEA\xBC@;\xE2C\xA3:\xEF\x9BYv\xDEsk\xB5osV\xE7\x80ݤ\xE4~Y:\xEF:\xEFpIJ\xEEk\xD0y\xD7y\x80\xCBh\xA4\xE4~\xC1\xB2\x87\x99\x86;\xEFg3\xEB\xCB_\xBE0\xB3\xBE\xFC\xE5\x85gu\xDE\xA0!\x8D,\x9D\xF7\xCD\xE8\xBC@\xB5q\x83\xA5\xF3\xBE\x9Dw詖\xDE"\xD4yߌ\xCE;\xF4QK\xB9\xEB\xBCoF\xE7\xFA\xA8\xBDLC\xC1\x9D\xF7F\xDCy\xFF\xFA׿\xDE\xE5w\xD3j\xA6\xA1\xD4\xCE{\xD3J\xED\xBCw\xF9=\x80&\xB5-\xB2\xF3ނ";\xEF]~C\xA0IJ\xEE\xBDQd\xE7\x8Ad`\xF5I\xEA\xBC\xFF\xEEw\xBF;>>\x9E\xCDf/|3n0,\x8B\xD1h\xF4\xC27\xF2\x8B\xC5`0\xC8\xE7,\xA9\x83\x92\xFB\xF9d.TL\xE7\xFD\xAD\xB7\xDE\xEA\xFA{	\x8D\xE8x`\xE9\xBCo\xA6\x8C\xCE\xFBd2\xE9\xFAK\x80Ft\x83\xA5\xF3\xBE\x99:\xEF\xF7\xEE\xDDk\xFF\xFB-\xE8\xFE\xACe\xAB~\x8FŅ\xF6\xF6\xF6\xDEx\xE3\x8D\xD4yOo\xC3\xD5\xE3\xE9\xA7'O\xFB慽\xF5\xCFv\xFD-\x80\xA6\xB4\xDA\xC1ZE\xE7}3t\xDE\xA0H\xB9\xDC"\xE8\xBCo\xE6T\xE7=\xB6\xB7\xDE\xC2Y(R7X\x89\xCE\xFBf\xEA\x9D\xF7\xF0\xDEz\xD3g\xA0H\xB9\xDC`%n56\xD3\xDF\xCE;ɋ\!^\xD8yOa\xCF\xE5\xD0988\x98N\xA7\xCB\xDEz\x8A\x82.G\xD2\xE1\xE1\xE1x<n\xF9,ɋ\9\xCEvޟ<yR#\xAF\xAA\xAA\xBD\xBD\xBDeo\xFD\xE6͛\xF57\xF2\xAA\xAA:99Y\xF6\xD6\xDB9E꾃\xB5\xAC\xD5;\xEF!\xBD\xF5\xE6\xCE\xFE\xE0?\xE8\xFA\xBB\x8D\xC8\xFA\xAB/\x9D\xF7\xAC\\xBBv\xED\xEEݻg;\xEFi٬:\x95fЪ\xDFm\xEE,)\xF7\xAC^t\xDE3ԋ\xCE\xFB\x9Bo\xBE\xD9\xF5\xF7	\x91\xFBՂ\xCE\xFBf^\xD8yO\xA1o\xD9[_\xFE\xED\xBF\xE5HZFؗe\xF6F\xCFv\xFDM\x80\xA6\xF4\xE0Ac\x9D\xF7͜\x{DF0F}\xC7\xE3z\xAD\xAA\xAA\xAA\xFA\x83\xEA\xD3\xE9\xB4\xDE[\xAF\xAA\xAA\xFE\xA0zCg\xA0H\xB9\xDF`%:\xEF\x9Bɿ\xF3E\xEA\xCD-\x82\xCE\xFBf2\xEF\xBC@\x91\xFAq\x83\x95\xE8\xBCo&\xE7\xCE;\xA9O\x8B\x8De\xDBy\x80"X\xBB"\xCF\xCE;)\xF7\xD6Zt\xB0.\x94U\xE7\xFD\xAD\xB7\xDE\xEA\xFA\xFB\x8D\xE8\xF1
+\x96\xCE\xFBr\xEB\xBC@\x91\xFA}\x83\xA5\xF3\xBE\x99L:\xEF\xF7\xEE\xDD\xEB\xFA;\x8D\xE8\xF1
+V\xA5\xF3\xBE\xA9L:\xEF]\xA0)\xBDo\xE9\xBCo&\x93\xCE;\xA9\x84[\x9D\xF7\xCD\xE4\xD0y\x80"\xF5\xFE+\xD1y\xDFL\xE7\x9Dw(R	7X\x89\x91\xCDt\xDBy\x80"y\x91\xA3\xCB\xCE;ɋU\xD5]\xE7\x8Ad`\xF1\xFF\xAE^\xBD\xFA\xE5/\xF9\xFE\xFD\xFB\xFF\xF8\xC7?\xEA\xBD\xF5\xAA\xAAR\xB9*=\x99~\xAA\xD5^UU
+\\xA5\xA7\xDAO\xB5\xDA/<E\xEAwh Cަf`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0f`3\xB0\x82X\xC1,\x80`@0 \x98\x81\xCC\xC0\xF6f\xDA2\xAF\x92IEND\xAEB`\x82
\ No newline at end of file

Added: trunk/LayoutTests/platform/chromium-linux/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.txt (0 => 119591)


--- trunk/LayoutTests/platform/chromium-linux/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/platform/chromium-linux/fast/canvas/canvas-imageSmoothingEnabled-patterns-expected.txt	2012-06-06 15:17:20 UTC (rev 119591)
@@ -0,0 +1,3 @@
+ 
+ 
+ 

Modified: trunk/Source/WebCore/ChangeLog (119590 => 119591)


--- trunk/Source/WebCore/ChangeLog	2012-06-06 14:57:42 UTC (rev 119590)
+++ trunk/Source/WebCore/ChangeLog	2012-06-06 15:17:20 UTC (rev 119591)
@@ -1,3 +1,17 @@
+2012-06-06  Keyar Hood  <[email protected]>
+
+        [Chromium] imageSmoothingEnabled should apply to patterns
+        https://bugs.webkit.org/show_bug.cgi?id=88103
+
+        Reviewed by Stephen White.
+
+        Test: fast/canvas/canvas-imageSmoothingEnabled-patterns.html
+
+        When drawing patterns on a Canvas, the imageSmoothingEnabled flag is
+        respected.
+        * platform/graphics/skia/PlatformContextSkia.cpp:
+        (WebCore::PlatformContextSkia::setupShader):
+
 2012-06-06  Andrey Adaikin  <[email protected]>
 
         Web Inspector: [JSC] Add WebGL instrumentation support

Modified: trunk/Source/WebCore/platform/graphics/skia/PlatformContextSkia.cpp (119590 => 119591)


--- trunk/Source/WebCore/platform/graphics/skia/PlatformContextSkia.cpp	2012-06-06 14:57:42 UTC (rev 119590)
+++ trunk/Source/WebCore/platform/graphics/skia/PlatformContextSkia.cpp	2012-06-06 15:17:20 UTC (rev 119591)
@@ -372,6 +372,7 @@
     } else if (pat) {
         shader = pat->platformPattern(m_gc->getCTM());
         color = SK_ColorBLACK;
+        paint->setFilterBitmap(interpolationQuality() != InterpolationNone);
     }
 
     paint->setColor(m_state->applyAlpha(color));
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to