Title: [148949] trunk
Revision
148949
Author
[email protected]
Date
2013-04-23 01:17:05 -0700 (Tue, 23 Apr 2013)

Log Message

Respect image-rendering setting for determing image-rendering quality
https://bugs.webkit.org/show_bug.cgi?id=113405

Reviewed by Benjamin Poulain.

Source/WebCore:

Remove the CSS4 values as they are not ready for implementation yet.
We still parse the -webkit-crisp-edges and SVG compatibility values to
be closer to the the partial support in Gecko and Presto.

Tests: fast/css/image-rendering-canvas.html
       fast/css/image-rendering-parsing.html
       fast/css/image-rendering.html
       fast/css/optimize-contrast-image.html

* css/CSSParser.cpp:
(WebCore::isValidKeywordPropertyAndValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EImageRendering):
* css/CSSValueKeywords.in:
* css/SVGCSSParser.cpp:
(WebCore::CSSParser::parseSVGValue):
* rendering/RenderBoxModelObject.cpp:
(WebCore::ImageQualityController::shouldPaintAtLowQuality):
* rendering/RenderHTMLCanvas.cpp:
(WebCore::RenderHTMLCanvas::paintReplaced):
* rendering/style/RenderStyleConstants.h:

Tools:

Remove CSS4 Images option. It is not ready for implementation.

* Scripts/webkitperl/FeatureList.pm:

LayoutTests:

Moved the two tests of image-rendering out of CSS3 since it was removed from the final recommendation.
Added tests of the supported values, and upgraded one test to a reference test so that it now tests
that -webkit-optimize-contrast gets converted to and treated as -webkit-crisp-edges.

Baselines for fast/css/image-rendering.html will be uploaded later when the bots have generated them.

* css3/images/optimize-contrast-image-expected.png: Removed.
* css3/images/optimize-contrast-image-expected.txt: Removed.
* fast/css/image-rendering-canvas-expected.png: Renamed from LayoutTests/css3/images/optimize-contrast-canvas-expected.png.
* fast/css/image-rendering-canvas-expected.txt: Renamed from LayoutTests/css3/images/optimize-contrast-canvas-expected.txt.
* fast/css/image-rendering-canvas.html: Renamed from LayoutTests/css3/images/optimize-contrast-canvas.html.
* fast/css/image-rendering-expected.txt: Added.
* fast/css/image-rendering-parsing-expected.txt: Added.
* fast/css/image-rendering-parsing.html: Renamed from LayoutTests/fast/css/image-set-parsing.html.
* fast/css/image-rendering.html: Added.
* fast/css/optimize-contrast-image-expected.html: Added.
* fast/css/optimize-contrast-image.html: Renamed from LayoutTests/css3/images/optimize-contrast-image.html.
* fast/css/script-tests/image-rendering-parsing.js: Added.
(testImageRendering):

Modified Paths

Added Paths

Removed Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (148948 => 148949)


--- trunk/LayoutTests/ChangeLog	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/LayoutTests/ChangeLog	2013-04-23 08:17:05 UTC (rev 148949)
@@ -1,3 +1,30 @@
+2013-04-23  Allan Sandfeld Jensen  <[email protected]>
+
+        Respect image-rendering setting for determing image-rendering quality
+        https://bugs.webkit.org/show_bug.cgi?id=113405
+
+        Reviewed by Benjamin Poulain.
+
+        Moved the two tests of image-rendering out of CSS3 since it was removed from the final recommendation.
+        Added tests of the supported values, and upgraded one test to a reference test so that it now tests
+        that -webkit-optimize-contrast gets converted to and treated as -webkit-crisp-edges.
+
+        Baselines for fast/css/image-rendering.html will be uploaded later when the bots have generated them.
+
+        * css3/images/optimize-contrast-image-expected.png: Removed.
+        * css3/images/optimize-contrast-image-expected.txt: Removed.
+        * fast/css/image-rendering-canvas-expected.png: Renamed from LayoutTests/css3/images/optimize-contrast-canvas-expected.png.
+        * fast/css/image-rendering-canvas-expected.txt: Renamed from LayoutTests/css3/images/optimize-contrast-canvas-expected.txt.
+        * fast/css/image-rendering-canvas.html: Renamed from LayoutTests/css3/images/optimize-contrast-canvas.html.
+        * fast/css/image-rendering-expected.txt: Added.
+        * fast/css/image-rendering-parsing-expected.txt: Added.
+        * fast/css/image-rendering-parsing.html: Renamed from LayoutTests/fast/css/image-set-parsing.html.
+        * fast/css/image-rendering.html: Added.
+        * fast/css/optimize-contrast-image-expected.html: Added.
+        * fast/css/optimize-contrast-image.html: Renamed from LayoutTests/css3/images/optimize-contrast-image.html.
+        * fast/css/script-tests/image-rendering-parsing.js: Added.
+        (testImageRendering):
+
 2013-04-23  Zoltan Arvai  <[email protected]>
 
         [Qt] Unreviewed gardening.

Deleted: trunk/LayoutTests/css3/images/optimize-contrast-canvas-expected.png


(Binary files differ)

Deleted: trunk/LayoutTests/css3/images/optimize-contrast-canvas-expected.txt (148948 => 148949)


--- trunk/LayoutTests/css3/images/optimize-contrast-canvas-expected.txt	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/LayoutTests/css3/images/optimize-contrast-canvas-expected.txt	2013-04-23 08:17:05 UTC (rev 148949)
@@ -1 +0,0 @@
-

Deleted: trunk/LayoutTests/css3/images/optimize-contrast-canvas.html (148948 => 148949)


--- trunk/LayoutTests/css3/images/optimize-contrast-canvas.html	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/LayoutTests/css3/images/optimize-contrast-canvas.html	2013-04-23 08:17:05 UTC (rev 148949)
@@ -1,57 +0,0 @@
-<!DOCTYPE html> 
-<style> 
-	canvas {
-		display: block;
-		position: fixed;
-		left: 0px;
-		top: 0px;
-		right: 0px;
-		bottom: 0px;
-		border: none;
-		width: 100px;
-		height: 100px;
-		margin: 0px;
-		padding: 0px;
-		image-rendering: -webkit-optimize-contrast;
-	}
-</style> 
-<body> 
-    <!-- The resulting image should be 100x100, consisting of 4 50x50 blocks of solid color, with no blurring of edges -->
-	<canvas width="2" height="2"></canvas> 
-</body> 
-<script> 
-    if (window.testRunner)
-        testRunner.dumpAsText(true);
-        
-	var canvas;
-	var imageHandle;
-	canvas = document.getElementsByTagName("canvas")[0].getContext("2d");
-	canvas.width = 2;
-	canvas.height = 2;
-	imageHandle = canvas.createImageData(2, 2);
-
-	var index = 0;
-	var length = imageHandle.data.length;
-
-    imageHandle.data[index++] = 255;
-    imageHandle.data[index++] = 0;
-    imageHandle.data[index++] = 0;
-    imageHandle.data[index++] = 255;
-
-    imageHandle.data[index++] = 0;
-    imageHandle.data[index++] = 255;
-    imageHandle.data[index++] = 0;
-    imageHandle.data[index++] = 255;
-
-    imageHandle.data[index++] = 0;
-    imageHandle.data[index++] = 0;
-    imageHandle.data[index++] = 255;
-    imageHandle.data[index++] = 255;
-
-    imageHandle.data[index++] = 0;
-    imageHandle.data[index++] = 0;
-    imageHandle.data[index++] = 0;
-    imageHandle.data[index++] = 255;
-
-	canvas.putImageData(imageHandle, 0, 0);
-</script> 

Deleted: trunk/LayoutTests/css3/images/optimize-contrast-image-expected.png


(Binary files differ)

Deleted: trunk/LayoutTests/css3/images/optimize-contrast-image-expected.txt (148948 => 148949)


--- trunk/LayoutTests/css3/images/optimize-contrast-image-expected.txt	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/LayoutTests/css3/images/optimize-contrast-image-expected.txt	2013-04-23 08:17:05 UTC (rev 148949)
@@ -1 +0,0 @@
-

Deleted: trunk/LayoutTests/css3/images/optimize-contrast-image.html (148948 => 148949)


--- trunk/LayoutTests/css3/images/optimize-contrast-image.html	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/LayoutTests/css3/images/optimize-contrast-image.html	2013-04-23 08:17:05 UTC (rev 148949)
@@ -1,25 +0,0 @@
-<!DOCTYPE html> 
-<style> 
-	img {
-		display: block;
-		position: fixed;
-		left: 0px;
-		top: 0px;
-		right: 0px;
-		bottom: 0px;
-		border: none;
-		width: 100px;
-		height: 100px;
-		margin: 0px;
-		padding: 0px;
-		image-rendering: -webkit-optimize-contrast;
-	}
-</style> 
-<body> 
-    <!-- The resulting image should be 100x100, consisting of 4 50x50 blocks of solid color, with no blurring of edges -->
-	<image style="" src="" 
-</body> 
-<script> 
-    if (window.testRunner)
-        testRunner.dumpAsText(true);
-</script>

Copied: trunk/LayoutTests/fast/css/image-rendering-canvas-expected.png (from rev 148948, trunk/LayoutTests/css3/images/optimize-contrast-canvas-expected.png)


(Binary files differ)

Property changes: trunk/LayoutTests/fast/css/image-rendering-canvas-expected.png


Added: svn:mime-type

Copied: trunk/LayoutTests/fast/css/image-rendering-canvas-expected.txt (from rev 148948, trunk/LayoutTests/css3/images/optimize-contrast-canvas-expected.txt) (0 => 148949)


--- trunk/LayoutTests/fast/css/image-rendering-canvas-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/fast/css/image-rendering-canvas-expected.txt	2013-04-23 08:17:05 UTC (rev 148949)
@@ -0,0 +1 @@
+

Copied: trunk/LayoutTests/fast/css/image-rendering-canvas.html (from rev 148948, trunk/LayoutTests/css3/images/optimize-contrast-canvas.html) (0 => 148949)


--- trunk/LayoutTests/fast/css/image-rendering-canvas.html	                        (rev 0)
+++ trunk/LayoutTests/fast/css/image-rendering-canvas.html	2013-04-23 08:17:05 UTC (rev 148949)
@@ -0,0 +1,61 @@
+<!DOCTYPE html> 
+<html>
+<head>
+<style> 
+    canvas {
+        display: block;
+        position: fixed;
+        left: 0px;
+        top: 0px;
+        right: 0px;
+        bottom: 0px;
+        border: none;
+        width: 100px;
+        height: 100px;
+        margin: 0px;
+        padding: 0px;
+        image-rendering: -webkit-crisp-edges;
+    }
+</style> 
+</head>
+<body> 
+    <!-- The resulting image should be 100x100, consisting of 4 50x50 blocks of solid color, with no blurring of edges -->
+    <canvas width="2" height="2"></canvas>
+</body> 
+<script> 
+    if (window.testRunner)
+        testRunner.dumpAsText(true);
+
+    var canvas;
+    var imageHandle;
+    canvas = document.getElementsByTagName("canvas")[0].getContext("2d");
+    canvas.width = 2;
+    canvas.height = 2;
+    imageHandle = canvas.createImageData(2, 2);
+
+    var index = 0;
+    var length = imageHandle.data.length;
+
+    imageHandle.data[index++] = 255;
+    imageHandle.data[index++] = 0;
+    imageHandle.data[index++] = 0;
+    imageHandle.data[index++] = 255;
+
+    imageHandle.data[index++] = 0;
+    imageHandle.data[index++] = 255;
+    imageHandle.data[index++] = 0;
+    imageHandle.data[index++] = 255;
+
+    imageHandle.data[index++] = 0;
+    imageHandle.data[index++] = 0;
+    imageHandle.data[index++] = 255;
+    imageHandle.data[index++] = 255;
+
+    imageHandle.data[index++] = 0;
+    imageHandle.data[index++] = 0;
+    imageHandle.data[index++] = 0;
+    imageHandle.data[index++] = 255;
+
+    canvas.putImageData(imageHandle, 0, 0);
+</script> 
+</html>
\ No newline at end of file

Added: trunk/LayoutTests/fast/css/image-rendering-expected.txt (0 => 148949)


--- trunk/LayoutTests/fast/css/image-rendering-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/fast/css/image-rendering-expected.txt	2013-04-23 08:17:05 UTC (rev 148949)
@@ -0,0 +1,37 @@
+layer at (0,0) size 800x600
+  RenderView at (0,0) size 800x600
+layer at (0,0) size 800x316
+  RenderBlock {HTML} at (0,0) size 800x316
+    RenderBody {BODY} at (8,8) size 784x300
+      RenderTable {TABLE} at (0,0) size 230x300
+        RenderTableSection {TBODY} at (0,0) size 230x300
+          RenderTableRow {TR} at (0,2) size 230x147
+            RenderTableCell {TD} at (2,2) size 102x147 [r=0 c=0 rs=1 cs=1]
+              RenderBlock {PRE} at (1,14) size 100x15
+                RenderText {#text} at (0,0) size 32x15
+                  text run at (0,0) width 32: "auto"
+              RenderBlock (anonymous) at (1,42) size 100x104
+                RenderImage {IMG} at (0,0) size 100x100
+                RenderText {#text} at (0,0) size 0x0
+            RenderTableCell {TD} at (106,2) size 122x147 [r=0 c=1 rs=1 cs=1]
+              RenderBlock {PRE} at (1,14) size 120x15
+                RenderText {#text} at (0,0) size 120x15
+                  text run at (0,0) width 120: "optimizeQuality"
+              RenderBlock (anonymous) at (1,42) size 120x104
+                RenderImage {IMG} at (0,0) size 100x100
+                RenderText {#text} at (0,0) size 0x0
+          RenderTableRow {TR} at (0,151) size 230x147
+            RenderTableCell {TD} at (2,151) size 102x147 [r=1 c=0 rs=1 cs=1]
+              RenderBlock {PRE} at (1,14) size 100x15
+                RenderText {#text} at (0,0) size 88x15
+                  text run at (0,0) width 88: "crisp-edges"
+              RenderBlock (anonymous) at (1,42) size 100x104
+                RenderImage {IMG} at (0,0) size 100x100
+                RenderText {#text} at (0,0) size 0x0
+            RenderTableCell {TD} at (106,151) size 122x147 [r=1 c=1 rs=1 cs=1]
+              RenderBlock {PRE} at (1,14) size 120x15
+                RenderText {#text} at (0,0) size 104x15
+                  text run at (0,0) width 104: "optimizeSpeed"
+              RenderBlock (anonymous) at (1,42) size 120x104
+                RenderImage {IMG} at (0,0) size 100x100
+                RenderText {#text} at (0,0) size 0x0

Added: trunk/LayoutTests/fast/css/image-rendering-parsing-expected.txt (0 => 148949)


--- trunk/LayoutTests/fast/css/image-rendering-parsing-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/fast/css/image-rendering-parsing-expected.txt	2013-04-23 08:17:05 UTC (rev 148949)
@@ -0,0 +1,24 @@
+Test the parsing of the image-rendering property.
+
+On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
+
+
+PASS div.style.getPropertyCSSValue('image-rendering').cssValueType is CSSValue.CSS_PRIMITIVE_VALUE
+PASS div.style.getPropertyValue('image-rendering') is "auto"
+PASS getComputedStyle(div).getPropertyValue('image-rendering') is "auto"
+PASS div.style.getPropertyCSSValue('image-rendering').cssValueType is CSSValue.CSS_PRIMITIVE_VALUE
+PASS div.style.getPropertyValue('image-rendering') is "-webkit-crisp-edges"
+PASS getComputedStyle(div).getPropertyValue('image-rendering') is "-webkit-crisp-edges"
+PASS div.style.getPropertyCSSValue('image-rendering').cssValueType is CSSValue.CSS_PRIMITIVE_VALUE
+PASS div.style.getPropertyValue('image-rendering') is "-webkit-optimize-contrast"
+PASS getComputedStyle(div).getPropertyValue('image-rendering') is "-webkit-crisp-edges"
+PASS div.style.getPropertyCSSValue('image-rendering').cssValueType is CSSValue.CSS_PRIMITIVE_VALUE
+PASS div.style.getPropertyValue('image-rendering') is "optimizespeed"
+PASS getComputedStyle(div).getPropertyValue('image-rendering') is "optimizespeed"
+PASS div.style.getPropertyCSSValue('image-rendering').cssValueType is CSSValue.CSS_PRIMITIVE_VALUE
+PASS div.style.getPropertyValue('image-rendering') is "optimizequality"
+PASS getComputedStyle(div).getPropertyValue('image-rendering') is "optimizequality"
+PASS successfullyParsed is true
+
+TEST COMPLETE
+

Added: trunk/LayoutTests/fast/css/image-rendering-parsing.html (0 => 148949)


--- trunk/LayoutTests/fast/css/image-rendering-parsing.html	                        (rev 0)
+++ trunk/LayoutTests/fast/css/image-rendering-parsing.html	2013-04-23 08:17:05 UTC (rev 148949)
@@ -0,0 +1,12 @@
+<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
+<html>
+<head>
+<script src=""
+</head>
+<body>
+<p id="description"></p>
+<div id="console"></div>
+<script src=""
+<script src=""
+</body>
+</html>

Added: trunk/LayoutTests/fast/css/image-rendering.html (0 => 148949)


--- trunk/LayoutTests/fast/css/image-rendering.html	                        (rev 0)
+++ trunk/LayoutTests/fast/css/image-rendering.html	2013-04-23 08:17:05 UTC (rev 148949)
@@ -0,0 +1,21 @@
+<!DOCTYPE html> 
+<html>
+<body> 
+    <table>
+    <tr>
+    <td>
+        <pre>auto</pre>
+        <image style="image-rendering: auto" src="" width=100 height=100></image>
+    <td>
+        <pre>optimizeQuality</pre>
+        <image style="image-rendering: optimizeQuality" src="" width=100 height=100></image>
+    <tr>
+    <td>
+        <pre>crisp-edges</pre>
+        <image style="image-rendering: -webkit-crisp-edges" src="" width=100 height=100></image>
+    <td>
+        <pre>optimizeSpeed</pre>
+        <image style="image-rendering: optimizeSpeed" src="" width=100 height=100></image>
+    </table>
+</body> 
+</html>
\ No newline at end of file

Added: trunk/LayoutTests/fast/css/optimize-contrast-image-expected.html (0 => 148949)


--- trunk/LayoutTests/fast/css/optimize-contrast-image-expected.html	                        (rev 0)
+++ trunk/LayoutTests/fast/css/optimize-contrast-image-expected.html	2013-04-23 08:17:05 UTC (rev 148949)
@@ -0,0 +1,21 @@
+<!DOCTYPE html> 
+<html>
+<head>
+<style> 
+    #img {
+        image-rendering: -webkit-crisp-edges;
+    }
+</style> 
+</head>
+<body> 
+    <pre id=console></pre>
+    <!-- The resulting image should be 100x100, consisting of 4 50x50 blocks of solid color, with no blurring of edges -->
+    <image id=img height=100 width=100 src="" 
+    <script>
+        var img = document.getElementById('img');
+        var console = document.getElementById('console');
+        var imageRendering = window.getComputedStyle(img).getPropertyValue('image-rendering');
+        console.innerText = 'image-rendering: ' + imageRendering;
+    </script>
+</body> 
+</html>
\ No newline at end of file

Added: trunk/LayoutTests/fast/css/optimize-contrast-image.html (0 => 148949)


--- trunk/LayoutTests/fast/css/optimize-contrast-image.html	                        (rev 0)
+++ trunk/LayoutTests/fast/css/optimize-contrast-image.html	2013-04-23 08:17:05 UTC (rev 148949)
@@ -0,0 +1,21 @@
+<!DOCTYPE html> 
+<html>
+<head>
+<style> 
+    #img {
+        image-rendering: -webkit-optimize-contrast;
+    }
+</style> 
+</head>
+<body> 
+    <pre id=console></pre>
+    <!-- The resulting image should be 100x100, consisting of 4 50x50 blocks of solid color, with no blurring of edges -->
+    <image id=img width=100 height=100 src="" 
+    <script>
+        var img = document.getElementById('img');
+        var console = document.getElementById('console');
+        var imageRendering = window.getComputedStyle(img).getPropertyValue('image-rendering');
+        console.innerText = 'image-rendering: ' + imageRendering;
+    </script>
+</body> 
+</html>
\ No newline at end of file

Added: trunk/LayoutTests/fast/css/script-tests/image-rendering-parsing.js (0 => 148949)


--- trunk/LayoutTests/fast/css/script-tests/image-rendering-parsing.js	                        (rev 0)
+++ trunk/LayoutTests/fast/css/script-tests/image-rendering-parsing.js	2013-04-23 08:17:05 UTC (rev 148949)
@@ -0,0 +1,22 @@
+description("Test the parsing of the image-rendering property.");
+
+var div;
+function testImageRendering(value, computedValue)
+{
+    div = document.createElement("div");
+    document.body.appendChild(div);
+    div.setAttribute("style", "image-rendering: " + value);
+    shouldBe("div.style.getPropertyCSSValue('image-rendering').cssValueType", 'CSSValue.CSS_PRIMITIVE_VALUE');
+    shouldBeEqualToString("div.style.getPropertyValue('image-rendering')", value);
+    shouldBeEqualToString("getComputedStyle(div).getPropertyValue('image-rendering')", computedValue);
+
+    document.body.removeChild(div);
+}
+
+testImageRendering('auto', 'auto');
+testImageRendering('-webkit-crisp-edges', '-webkit-crisp-edges');
+testImageRendering('-webkit-optimize-contrast', '-webkit-crisp-edges');
+testImageRendering('optimizespeed', 'optimizespeed');
+testImageRendering('optimizequality', 'optimizequality');
+
+successfullyParsed = true;

Modified: trunk/Source/WebCore/ChangeLog (148948 => 148949)


--- trunk/Source/WebCore/ChangeLog	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/Source/WebCore/ChangeLog	2013-04-23 08:17:05 UTC (rev 148949)
@@ -1,3 +1,33 @@
+2013-04-23  Allan Sandfeld Jensen  <[email protected]>
+
+        Respect image-rendering setting for determing image-rendering quality
+        https://bugs.webkit.org/show_bug.cgi?id=113405
+
+        Reviewed by Benjamin Poulain.
+
+        Remove the CSS4 values as they are not ready for implementation yet.
+        We still parse the -webkit-crisp-edges and SVG compatibility values to
+        be closer to the the partial support in Gecko and Presto.
+
+        Tests: fast/css/image-rendering-canvas.html
+               fast/css/image-rendering-parsing.html
+               fast/css/image-rendering.html
+               fast/css/optimize-contrast-image.html
+
+        * css/CSSParser.cpp:
+        (WebCore::isValidKeywordPropertyAndValue):
+        * css/CSSPrimitiveValueMappings.h:
+        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+        (WebCore::CSSPrimitiveValue::operator EImageRendering):
+        * css/CSSValueKeywords.in:
+        * css/SVGCSSParser.cpp:
+        (WebCore::CSSParser::parseSVGValue):
+        * rendering/RenderBoxModelObject.cpp:
+        (WebCore::ImageQualityController::shouldPaintAtLowQuality):
+        * rendering/RenderHTMLCanvas.cpp:
+        (WebCore::RenderHTMLCanvas::paintReplaced):
+        * rendering/style/RenderStyleConstants.h:
+
 2013-04-23  Commit Queue  <[email protected]>
 
         Unreviewed, rolling out r148923.

Modified: trunk/Source/WebCore/css/CSSParser.cpp (148948 => 148949)


--- trunk/Source/WebCore/css/CSSParser.cpp	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/Source/WebCore/css/CSSParser.cpp	2013-04-23 08:17:05 UTC (rev 148949)
@@ -727,17 +727,10 @@
         if (valueID == CSSValueNormal || valueID == CSSValueItalic || valueID == CSSValueOblique)
             return true;
         break;
-    case CSSPropertyImageRendering: // auto | crisp-edges | pixelated | -webkit-smooth | optimizeSpeed | optimizeQuality | -webkit-optimize-contrast
-#if ENABLE(CSS4_IMAGES)
-        if (valueID == CSSValueAuto || valueID == CSSValueCrispEdges || valueID == CSSValuePixelated
-            || valueID == CSSValueWebkitSmooth || valueID == CSSValueWebkitOptimizeContrast
-            || valueID == CSSValueOptimizespeed || valueID == CSSValueOptimizequality)
+    case CSSPropertyImageRendering: // auto | optimizeSpeed | optimizeQuality | -webkit-crisp-edges | -webkit-optimize-contrast
+        if (valueID == CSSValueAuto || valueID == CSSValueOptimizespeed || valueID == CSSValueOptimizequality
+            || valueID == CSSValueWebkitCrispEdges || valueID == CSSValueWebkitOptimizeContrast)
             return true;
-#else
-        if (valueID == CSSValueAuto || valueID == CSSValueCrispEdges || valueID == CSSValueWebkitOptimizeContrast
-            || valueID == CSSValueOptimizespeed || valueID == CSSValueOptimizequality)
-            return true;
-#endif
         break;
     case CSSPropertyListStylePosition: // inside | outside | inherit
         if (valueID == CSSValueInside || valueID == CSSValueOutside)

Modified: trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h (148948 => 148949)


--- trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/Source/WebCore/css/CSSPrimitiveValueMappings.h	2013-04-23 08:17:05 UTC (rev 148949)
@@ -4032,14 +4032,8 @@
         m_value.ident = CSSValueAuto;
         break;
     case ImageRenderingCrispEdges:
-        m_value.ident = CSSValueCrispEdges;
+        m_value.ident = CSSValueWebkitCrispEdges;
         break;
-    case ImageRenderingPixelated:
-        m_value.ident = CSSValuePixelated;
-        break;
-    case ImageRenderingSmooth:
-        m_value.ident = CSSValueWebkitSmooth;
-        break;
     case ImageRenderingOptimizeSpeed:
         m_value.ident = CSSValueOptimizespeed;
         break;
@@ -4055,12 +4049,8 @@
     case CSSValueAuto:
         return ImageRenderingAuto;
     case CSSValueWebkitOptimizeContrast:
-    case CSSValueCrispEdges:
+    case CSSValueWebkitCrispEdges:
         return ImageRenderingCrispEdges;
-    case CSSValuePixelated:
-        return ImageRenderingPixelated;
-    case CSSValueWebkitSmooth:
-        return ImageRenderingSmooth;
     case CSSValueOptimizespeed:
         return ImageRenderingOptimizeSpeed;
     case CSSValueOptimizequality:

Modified: trunk/Source/WebCore/css/CSSValueKeywords.in (148948 => 148949)


--- trunk/Source/WebCore/css/CSSValueKeywords.in	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/Source/WebCore/css/CSSValueKeywords.in	2013-04-23 08:17:05 UTC (rev 148949)
@@ -934,10 +934,8 @@
 // image-rendering
 // auto
 // optimizeSpeed
-crisp-edges
-pixelated
--webkit-smooth
 optimizeQuality
+-webkit-crisp-edges
 -webkit-optimize-contrast
 
 // -webkit-shape-inside

Modified: trunk/Source/WebCore/css/SVGCSSParser.cpp (148948 => 148949)


--- trunk/Source/WebCore/css/SVGCSSParser.cpp	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/Source/WebCore/css/SVGCSSParser.cpp	2013-04-23 08:17:05 UTC (rev 148949)
@@ -131,8 +131,7 @@
             valid_primitive = true;
         break;
 
-    case CSSPropertyImageRendering:  // auto | optimizeSpeed |
-    case CSSPropertyColorRendering:  // optimizeQuality | inherit
+    case CSSPropertyColorRendering: // auto | optimizeSpeed | optimizeQuality | inherit
         if (id == CSSValueAuto || id == CSSValueOptimizespeed ||
             id == CSSValueOptimizequality)
             valid_primitive = true;

Modified: trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp (148948 => 148949)


--- trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/Source/WebCore/rendering/RenderBoxModelObject.cpp	2013-04-23 08:17:05 UTC (rev 148949)
@@ -164,10 +164,8 @@
     switch (object->style()->imageRendering()) {
     case ImageRenderingOptimizeSpeed:
     case ImageRenderingCrispEdges:
-    case ImageRenderingPixelated:
         return true;
     case ImageRenderingOptimizeQuality:
-    case ImageRenderingSmooth:
         return false;
     case ImageRenderingAuto:
         break;

Modified: trunk/Source/WebCore/rendering/RenderHTMLCanvas.cpp (148948 => 148949)


--- trunk/Source/WebCore/rendering/RenderHTMLCanvas.cpp	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/Source/WebCore/rendering/RenderHTMLCanvas.cpp	2013-04-23 08:17:05 UTC (rev 148949)
@@ -68,7 +68,7 @@
         }
     }
 
-    bool useLowQualityScale = style()->imageRendering() == ImageRenderingPixelated || style()->imageRendering() == ImageRenderingCrispEdges || style()->imageRendering() == ImageRenderingOptimizeSpeed;
+    bool useLowQualityScale = style()->imageRendering() == ImageRenderingCrispEdges || style()->imageRendering() == ImageRenderingOptimizeSpeed;
     static_cast<HTMLCanvasElement*>(node())->paint(paintInfo.context, rect, useLowQualityScale);
 }
 

Modified: trunk/Source/WebCore/rendering/style/RenderStyleConstants.h (148948 => 148949)


--- trunk/Source/WebCore/rendering/style/RenderStyleConstants.h	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/Source/WebCore/rendering/style/RenderStyleConstants.h	2013-04-23 08:17:05 UTC (rev 148949)
@@ -479,10 +479,7 @@
 
 enum TextOverflow { TextOverflowClip = 0, TextOverflowEllipsis };
 
-enum EImageRendering {
-    ImageRenderingAuto, ImageRenderingOptimizeSpeed, ImageRenderingOptimizeQuality,
-    ImageRenderingCrispEdges, ImageRenderingPixelated, ImageRenderingSmooth
-};
+enum EImageRendering { ImageRenderingAuto = 0, ImageRenderingOptimizeSpeed, ImageRenderingOptimizeQuality, ImageRenderingCrispEdges };
 
 enum ImageResolutionSource { ImageResolutionSpecified = 0, ImageResolutionFromImage };
 

Modified: trunk/Tools/ChangeLog (148948 => 148949)


--- trunk/Tools/ChangeLog	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/Tools/ChangeLog	2013-04-23 08:17:05 UTC (rev 148949)
@@ -1,3 +1,14 @@
+2013-04-23  Allan Sandfeld Jensen  <[email protected]>
+
+        Respect image-rendering setting for determing image-rendering quality
+        https://bugs.webkit.org/show_bug.cgi?id=113405
+
+        Reviewed by Benjamin Poulain.
+
+        Remove CSS4 Images option. It is not ready for implementation.
+
+        * Scripts/webkitperl/FeatureList.pm:
+
 2013-04-22  Mark Rowe  <[email protected]>
 
         <http://webkit.org/b/114989> Add a user default to allow use of the Safari binary rather than SafariForWebKitDevelopment

Modified: trunk/Tools/Scripts/webkitperl/FeatureList.pm (148948 => 148949)


--- trunk/Tools/Scripts/webkitperl/FeatureList.pm	2013-04-23 08:07:37 UTC (rev 148948)
+++ trunk/Tools/Scripts/webkitperl/FeatureList.pm	2013-04-23 08:17:05 UTC (rev 148949)
@@ -199,9 +199,6 @@
     { option => "css3-text-line-break", desc => "Toggle CSS3 Text Line Break support",
       define => "ENABLE_CSS3_TEXT_LINE_BREAK", default => 0, value => \$css3TextLineBreakSupport },
 
-    { option => "css4-images", desc => "Toggle CSS4 Images support",
-      define => "ENABLE_CSS4_IMAGES", default => 0, value => \$css4ImagesSupport },
-
     { option => "css-box-decoration-break", desc => "Toggle CSS box-decoration-break support",
       define => "ENABLE_CSS_BOX_DECORATION_BREAK", default => 1, value => \$cssBoxDecorationBreakSupport },
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to