WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Patch
bug-131824-20140421105628.patch (text/plain), 18.77 KB, created by
Rik Cabanier
on 2014-04-21 10:56:49 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Rik Cabanier
Created:
2014-04-21 10:56:49 PDT
Size:
18.77 KB
patch
obsolete
>Index: Source/WebCore/ChangeLog >=================================================================== >--- Source/WebCore/ChangeLog (revision 167594) >+++ Source/WebCore/ChangeLog (working copy) >@@ -1,3 +1,19 @@ >+2014-04-21 Rik Cabanier <cabanier@adobe.com> >+ >+ [CSS Blending] Remove support for non-separable blend modes from mix-blend-mode >+ https://bugs.webkit.org/show_bug.cgi?id=131824 >+ >+ Reviewed by Dean Jackson. >+ >+ Removed support for non-sep blend modes from the CSS parser. >+ >+ Covered by existing tests >+ >+ * css/CSSParser.cpp: >+ (WebCore::isValidKeywordPropertyAndValue): >+ * platform/graphics/ca/mac/PlatformCAFiltersMac.mm: >+ (PlatformCAFilters::setBlendingFiltersOnLayer): >+ > 2014-04-21 Zan Dobersek <zdobersek@igalia.com> > > Move cross-port Source/WebCore/page/ code to std::unique_ptr >Index: Source/WebCore/css/CSSParser.cpp >=================================================================== >--- Source/WebCore/css/CSSParser.cpp (revision 167527) >+++ Source/WebCore/css/CSSParser.cpp (working copy) >@@ -816,8 +816,7 @@ static inline bool isValidKeywordPropert > if (parserContext.isCSSCompositingEnabled && (valueID == CSSValueNormal || valueID == CSSValueMultiply || valueID == CSSValueScreen > || valueID == CSSValueOverlay || valueID == CSSValueDarken || valueID == CSSValueLighten || valueID == CSSValueColorDodge > || valueID == CSSValueColorBurn || valueID == CSSValueHardLight || valueID == CSSValueSoftLight || valueID == CSSValueDifference >- || valueID == CSSValueExclusion || valueID == CSSValueHue || valueID == CSSValueSaturation || valueID == CSSValueColor >- || valueID == CSSValueLuminosity)) >+ || valueID == CSSValueExclusion)) > return true; > break; > case CSSPropertyIsolation: >Index: Source/WebCore/platform/graphics/ca/mac/PlatformCAFiltersMac.mm >=================================================================== >--- Source/WebCore/platform/graphics/ca/mac/PlatformCAFiltersMac.mm (revision 167527) >+++ Source/WebCore/platform/graphics/ca/mac/PlatformCAFiltersMac.mm (working copy) >@@ -584,12 +584,8 @@ void PlatformCAFilters::setBlendingFilte > case BlendModeScreen: > filter = [CAFilter filterWithType:kCAFilterScreenBlendMode]; > break; >- case BlendModeHue: >- case BlendModeSaturation: >- case BlendModeColor: >- case BlendModeLuminosity: >- // Non-separable blend modes are not supported. >- break; >+ default: >+ ASSERT_NOT_REACHED(); > } > > [layer setCompositingFilter:filter]; >Index: LayoutTests/ChangeLog >=================================================================== >--- LayoutTests/ChangeLog (revision 167594) >+++ LayoutTests/ChangeLog (working copy) >@@ -1,3 +1,26 @@ >+2014-04-21 Rik Cabanier <cabanier@adobe.com> >+ >+ [CSS Blending] Remove support for non-separable blend modes from mix-blend-mode >+ https://bugs.webkit.org/show_bug.cgi?id=131824 >+ >+ Reviewed by Dean Jackson. >+ >+ Removed or updated tests that used non-separable blend modes in combination >+ with mix-blend-mode. >+ >+ * css3/compositing/blend-mode-property-expected.txt: >+ * css3/compositing/blend-mode-property-parsing-expected.txt: >+ * css3/compositing/blend-mode-simple-composited.html: >+ * css3/compositing/blend-mode-simple.html: >+ * css3/compositing/script-tests/blend-mode-property-parsing.js: >+ * css3/compositing/script-tests/blend-mode-property.js: >+ * css3/compositing/svg-blend-color.html: Removed. >+ * css3/compositing/svg-blend-hue.html: Removed. >+ * css3/compositing/svg-blend-luminosity.html: Removed. >+ * css3/compositing/svg-blend-saturation.html: Removed. >+ * platform/mac/css3/compositing/blend-mode-simple-composited-expected.txt: >+ * platform/mac/css3/compositing/blend-mode-simple-expected.txt: >+ > 2014-04-21 Alexey Proskuryakov <ap@apple.com> > > REGRESSION (r167530): ASSERT(m_selfTime <= m_totalTime) on tests that run after certain Inspector tests >Index: LayoutTests/css3/compositing/blend-mode-property-expected.txt >=================================================================== >--- LayoutTests/css3/compositing/blend-mode-property-expected.txt (revision 167527) >+++ LayoutTests/css3/compositing/blend-mode-property-expected.txt (working copy) >@@ -39,18 +39,6 @@ PASS declaration.getPropertyValue('mix-b > PASS cssRule.type is 1 > PASS declaration.length is 1 > PASS declaration.getPropertyValue('mix-blend-mode') is 'exclusion' >-PASS cssRule.type is 1 >-PASS declaration.length is 1 >-PASS declaration.getPropertyValue('mix-blend-mode') is 'hue' >-PASS cssRule.type is 1 >-PASS declaration.length is 1 >-PASS declaration.getPropertyValue('mix-blend-mode') is 'saturation' >-PASS cssRule.type is 1 >-PASS declaration.length is 1 >-PASS declaration.getPropertyValue('mix-blend-mode') is 'color' >-PASS cssRule.type is 1 >-PASS declaration.length is 1 >-PASS declaration.getPropertyValue('mix-blend-mode') is 'luminosity' > PASS successfullyParsed is true > > TEST COMPLETE >Index: LayoutTests/css3/compositing/blend-mode-property-parsing-expected.txt >=================================================================== >--- LayoutTests/css3/compositing/blend-mode-property-parsing-expected.txt (revision 167527) >+++ LayoutTests/css3/compositing/blend-mode-property-parsing-expected.txt (working copy) >@@ -99,38 +99,6 @@ PASS declaration.getPropertyValue('mix-b > PASS jsWrapperClass(blendModeRule) is 'CSSPrimitiveValue' > PASS jsWrapperClass(blendModeRule.__proto__) is 'CSSPrimitiveValuePrototype' > PASS jsWrapperClass(blendModeRule.constructor) is 'CSSPrimitiveValueConstructor' >- >-Basic reference : hue >-PASS cssRule.type is 1 >-PASS declaration.length is 1 >-PASS declaration.getPropertyValue('mix-blend-mode') is 'hue' >-PASS jsWrapperClass(blendModeRule) is 'CSSPrimitiveValue' >-PASS jsWrapperClass(blendModeRule.__proto__) is 'CSSPrimitiveValuePrototype' >-PASS jsWrapperClass(blendModeRule.constructor) is 'CSSPrimitiveValueConstructor' >- >-Basic reference : saturation >-PASS cssRule.type is 1 >-PASS declaration.length is 1 >-PASS declaration.getPropertyValue('mix-blend-mode') is 'saturation' >-PASS jsWrapperClass(blendModeRule) is 'CSSPrimitiveValue' >-PASS jsWrapperClass(blendModeRule.__proto__) is 'CSSPrimitiveValuePrototype' >-PASS jsWrapperClass(blendModeRule.constructor) is 'CSSPrimitiveValueConstructor' >- >-Basic reference : color >-PASS cssRule.type is 1 >-PASS declaration.length is 1 >-PASS declaration.getPropertyValue('mix-blend-mode') is 'color' >-PASS jsWrapperClass(blendModeRule) is 'CSSPrimitiveValue' >-PASS jsWrapperClass(blendModeRule.__proto__) is 'CSSPrimitiveValuePrototype' >-PASS jsWrapperClass(blendModeRule.constructor) is 'CSSPrimitiveValueConstructor' >- >-Basic reference : luminosity >-PASS cssRule.type is 1 >-PASS declaration.length is 1 >-PASS declaration.getPropertyValue('mix-blend-mode') is 'luminosity' >-PASS jsWrapperClass(blendModeRule) is 'CSSPrimitiveValue' >-PASS jsWrapperClass(blendModeRule.__proto__) is 'CSSPrimitiveValuePrototype' >-PASS jsWrapperClass(blendModeRule.constructor) is 'CSSPrimitiveValueConstructor' > PASS successfullyParsed is true > > TEST COMPLETE >Index: LayoutTests/css3/compositing/blend-mode-simple-composited.html >=================================================================== >--- LayoutTests/css3/compositing/blend-mode-simple-composited.html (revision 167527) >+++ LayoutTests/css3/compositing/blend-mode-simple-composited.html (working copy) >@@ -39,10 +39,5 @@ > <li><img style="mix-blend-mode: soft-light" src="resources/ducky.png"></li> > <li><img style="mix-blend-mode: difference" src="resources/ducky.png"></li> > <li><img style="mix-blend-mode: exclusion" src="resources/ducky.png"></li> >- <!-- Non separable blend modes --> >- <li><img style="mix-blend-mode: hue" src="resources/ducky.png"></li> >- <li><img style="mix-blend-mode: saturation" src="resources/ducky.png"></li> >- <li><img style="mix-blend-mode: color" src="resources/ducky.png"></li> >- <li><img style="mix-blend-mode: luminosity" src="resources/ducky.png"></li> > </ul> > </body> >Index: LayoutTests/css3/compositing/blend-mode-simple.html >=================================================================== >--- LayoutTests/css3/compositing/blend-mode-simple.html (revision 167527) >+++ LayoutTests/css3/compositing/blend-mode-simple.html (working copy) >@@ -38,10 +38,5 @@ > <li><img style="mix-blend-mode: soft-light" src="resources/ducky.png"></li> > <li><img style="mix-blend-mode: difference" src="resources/ducky.png"></li> > <li><img style="mix-blend-mode: exclusion" src="resources/ducky.png"></li> >- <!-- Non separable blend modes --> >- <li><img style="mix-blend-mode: hue" src="resources/ducky.png"></li> >- <li><img style="mix-blend-mode: saturation" src="resources/ducky.png"></li> >- <li><img style="mix-blend-mode: color" src="resources/ducky.png"></li> >- <li><img style="mix-blend-mode: luminosity" src="resources/ducky.png"></li> > </ul> > </body> >Index: LayoutTests/css3/compositing/svg-blend-color.html >=================================================================== >--- LayoutTests/css3/compositing/svg-blend-color.html (revision 167527) >+++ LayoutTests/css3/compositing/svg-blend-color.html (working copy) >@@ -1,20 +0,0 @@ >-<!DOCTYPE HTML> >-<html> >-<body> >-<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="400px" height="400px" > >-<defs> >- <g id="patch"> >- <rect x="0" y="0" width="10" height="40" fill="rgb(255,0,0)"/> >- <rect x="10" y="0" width="10" height="40" fill="rgb(0,255,0)"/> >- <rect x="20" y="0" width="10" height="40" fill="rgb(0,0,255)"/> >- <rect x="30" y="0" width="10" height="40" fill="rgb(127,127,0)"/> >- </g> >- <rect x="0" y="0" width="10" height="10" fill="rgb(255,0,0)"/> >-</defs> >-<g transform="scale(4 4)"> >- <use xlink:href="#patch" x="0" y="0" width="40" height="10"></use> >- <use xlink:href="#patch" x="0" y="0" width="40" height="10" transform="rotate(90 20 20)" style="mix-blend-mode: color"></use> >-</g> >-</svg> >-</body> >-</html> >Index: LayoutTests/css3/compositing/svg-blend-hue.html >=================================================================== >--- LayoutTests/css3/compositing/svg-blend-hue.html (revision 167527) >+++ LayoutTests/css3/compositing/svg-blend-hue.html (working copy) >@@ -1,20 +0,0 @@ >-<!DOCTYPE HTML> >-<html> >-<body> >-<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="400px" height="400px" > >-<defs> >- <g id="patch"> >- <rect x="0" y="0" width="10" height="40" fill="rgb(255,0,0)"/> >- <rect x="10" y="0" width="10" height="40" fill="rgb(0,255,0)"/> >- <rect x="20" y="0" width="10" height="40" fill="rgb(0,0,255)"/> >- <rect x="30" y="0" width="10" height="40" fill="rgb(127,127,0)"/> >- </g> >- <rect x="0" y="0" width="10" height="10" fill="rgb(255,0,0)"/> >-</defs> >-<g transform="scale(4 4)"> >- <use xlink:href="#patch" x="0" y="0" width="40" height="10"></use> >- <use xlink:href="#patch" x="0" y="0" width="40" height="10" transform="rotate(90 20 20)" style="mix-blend-mode: hue"></use> >-</g> >-</svg> >-</body> >-</html> >Index: LayoutTests/css3/compositing/svg-blend-luminosity.html >=================================================================== >--- LayoutTests/css3/compositing/svg-blend-luminosity.html (revision 167527) >+++ LayoutTests/css3/compositing/svg-blend-luminosity.html (working copy) >@@ -1,20 +0,0 @@ >-<!DOCTYPE HTML> >-<html> >-<body> >-<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="400px" height="400px" > >-<defs> >- <g id="patch"> >- <rect x="0" y="0" width="10" height="40" fill="rgb(255,0,0)"/> >- <rect x="10" y="0" width="10" height="40" fill="rgb(0,255,0)"/> >- <rect x="20" y="0" width="10" height="40" fill="rgb(0,0,255)"/> >- <rect x="30" y="0" width="10" height="40" fill="rgb(127,127,0)"/> >- </g> >- <rect x="0" y="0" width="10" height="10" fill="rgb(255,0,0)"/> >-</defs> >-<g transform="scale(4 4)"> >- <use xlink:href="#patch" x="0" y="0" width="40" height="10"></use> >- <use xlink:href="#patch" x="0" y="0" width="40" height="10" transform="rotate(90 20 20)" style="mix-blend-mode: luminosity"></use> >-</g> >-</svg> >-</body> >-</html> >Index: LayoutTests/css3/compositing/svg-blend-saturation.html >=================================================================== >--- LayoutTests/css3/compositing/svg-blend-saturation.html (revision 167527) >+++ LayoutTests/css3/compositing/svg-blend-saturation.html (working copy) >@@ -1,20 +0,0 @@ >-<!DOCTYPE HTML> >-<html> >-<body> >-<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="400px" height="400px" > >-<defs> >- <g id="patch"> >- <rect x="0" y="0" width="10" height="40" fill="rgb(255,0,0)"/> >- <rect x="10" y="0" width="10" height="40" fill="rgb(0,255,0)"/> >- <rect x="20" y="0" width="10" height="40" fill="rgb(0,0,255)"/> >- <rect x="30" y="0" width="10" height="40" fill="rgb(127,127,0)"/> >- </g> >- <rect x="0" y="0" width="10" height="10" fill="rgb(255,0,0)"/> >-</defs> >-<g transform="scale(4 4)"> >- <use xlink:href="#patch" x="0" y="0" width="40" height="10"></use> >- <use xlink:href="#patch" x="0" y="0" width="40" height="10" transform="rotate(90 20 20)" style="mix-blend-mode: saturation"></use> >-</g> >-</svg> >-</body> >-</html> >Index: LayoutTests/css3/compositing/script-tests/blend-mode-property-parsing.js >=================================================================== >--- LayoutTests/css3/compositing/script-tests/blend-mode-property-parsing.js (revision 167527) >+++ LayoutTests/css3/compositing/script-tests/blend-mode-property-parsing.js (working copy) >@@ -43,7 +43,7 @@ function testBlendModeRule(description, > shouldBeType("blendModeRule", "CSSPrimitiveValue"); > } > >-var blendmodes = ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"]; >+var blendmodes = ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion"]; > > for(x in blendmodes) > testBlendModeRule("Basic reference", blendmodes[x], 1, blendmodes[x]); >Index: LayoutTests/css3/compositing/script-tests/blend-mode-property.js >=================================================================== >--- LayoutTests/css3/compositing/script-tests/blend-mode-property.js (revision 167527) >+++ LayoutTests/css3/compositing/script-tests/blend-mode-property.js (working copy) >@@ -20,7 +20,7 @@ shouldBe("declaration.length", "1"); > shouldBe("declaration.getPropertyValue('mix-blend-mode')", "\'" + blendmode + "\'"); > } > >-var blendmodes = ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"]; >+var blendmodes = ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion"]; > > for(x in blendmodes) > testblendmode(blendmodes[x]); >Index: LayoutTests/platform/mac/css3/compositing/blend-mode-simple-composited-expected.txt >=================================================================== >--- LayoutTests/platform/mac/css3/compositing/blend-mode-simple-composited-expected.txt (revision 167527) >+++ LayoutTests/platform/mac/css3/compositing/blend-mode-simple-composited-expected.txt (working copy) >@@ -1,7 +1,7 @@ > layer at (0,0) size 800x600 > RenderView at (0,0) size 800x600 >-layer at (0,0) size 800x576 isolatesBlending >- RenderBlock {HTML} at (0,0) size 800x576 >+layer at (0,0) size 800x436 isolatesBlending >+ RenderBlock {HTML} at (0,0) size 800x436 > RenderBody {BODY} at (8,16) size 784x0 > RenderBlock {UL} at (0,0) size 784x0 > RenderBlock (floating) {LI} at (45,5) size 130x130 >@@ -16,10 +16,6 @@ layer at (0,0) size 800x576 isolatesBlen > RenderBlock (floating) {LI} at (605,145) size 130x130 > RenderBlock (floating) {LI} at (45,285) size 130x130 > RenderBlock (floating) {LI} at (185,285) size 130x130 >- RenderBlock (floating) {LI} at (325,285) size 130x130 >- RenderBlock (floating) {LI} at (465,285) size 130x130 >- RenderBlock (floating) {LI} at (605,285) size 130x130 >- RenderBlock (floating) {LI} at (45,425) size 130x130 > layer at (53,21) size 130x130 > RenderImage {IMG} at (0,0) size 130x130 > layer at (193,21) size 130x130 blendMode: overlay >@@ -44,11 +40,3 @@ layer at (53,301) size 130x130 blendMode > RenderImage {IMG} at (0,0) size 130x130 > layer at (193,301) size 130x130 blendMode: exclusion > RenderImage {IMG} at (0,0) size 130x130 >-layer at (333,301) size 130x130 blendMode: hue >- RenderImage {IMG} at (0,0) size 130x130 >-layer at (473,301) size 130x130 blendMode: saturation >- RenderImage {IMG} at (0,0) size 130x130 >-layer at (613,301) size 130x130 blendMode: color >- RenderImage {IMG} at (0,0) size 130x130 >-layer at (53,441) size 130x130 blendMode: luminosity >- RenderImage {IMG} at (0,0) size 130x130 >Index: LayoutTests/platform/mac/css3/compositing/blend-mode-simple-expected.txt >=================================================================== >--- LayoutTests/platform/mac/css3/compositing/blend-mode-simple-expected.txt (revision 167527) >+++ LayoutTests/platform/mac/css3/compositing/blend-mode-simple-expected.txt (working copy) >@@ -1,7 +1,7 @@ > layer at (0,0) size 800x600 > RenderView at (0,0) size 800x600 >-layer at (0,0) size 800x576 isolatesBlending >- RenderBlock {HTML} at (0,0) size 800x576 >+layer at (0,0) size 800x436 isolatesBlending >+ RenderBlock {HTML} at (0,0) size 800x436 > RenderBody {BODY} at (8,16) size 784x0 > RenderBlock {UL} at (0,0) size 784x0 > RenderBlock (floating) {LI} at (45,5) size 130x130 >@@ -17,10 +17,6 @@ layer at (0,0) size 800x576 isolatesBlen > RenderBlock (floating) {LI} at (605,145) size 130x130 > RenderBlock (floating) {LI} at (45,285) size 130x130 > RenderBlock (floating) {LI} at (185,285) size 130x130 >- RenderBlock (floating) {LI} at (325,285) size 130x130 >- RenderBlock (floating) {LI} at (465,285) size 130x130 >- RenderBlock (floating) {LI} at (605,285) size 130x130 >- RenderBlock (floating) {LI} at (45,425) size 130x130 > layer at (193,21) size 130x130 blendMode: overlay > RenderImage {IMG} at (0,0) size 130x130 > layer at (333,21) size 130x130 blendMode: screen >@@ -43,11 +39,3 @@ layer at (53,301) size 130x130 blendMode > RenderImage {IMG} at (0,0) size 130x130 > layer at (193,301) size 130x130 blendMode: exclusion > RenderImage {IMG} at (0,0) size 130x130 >-layer at (333,301) size 130x130 blendMode: hue >- RenderImage {IMG} at (0,0) size 130x130 >-layer at (473,301) size 130x130 blendMode: saturation >- RenderImage {IMG} at (0,0) size 130x130 >-layer at (613,301) size 130x130 blendMode: color >- RenderImage {IMG} at (0,0) size 130x130 >-layer at (53,441) size 130x130 blendMode: luminosity >- RenderImage {IMG} at (0,0) size 130x130
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 131824
:
229598
|
229808
|
229824