[Webkit-unassigned] [Bug 97859] [CSS Shaders] Implement all composite operators.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Fri Sep 28 18:48:38 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=97859





--- Comment #11 from Huang Dongsung <luxtella at company100.net>  2012-09-28 18:49:02 PST ---
(In reply to comment #10)
> (From update of attachment 166202 [details])
> Thanks for the patch! Looking good. I have a couple of comments:

Thanks for your review!

> You haven't implemented "destination", so this FIXME needs to be updated to say that. It shouldn't be removed quite yet.
> 
> > Source/WebCore/css/CSSParser.cpp:7467
> > +    return ident >= CSSValueClear && ident <= CSSValuePlusLighter && ident != CSSValuePlusDarker;

I handled plus-lighter because CompositePlusLighter enum was in CustomFilterValidatedProgram.cpp
As reading your comments, plus-lighter should be postponed like destination. Do you think it is better that I file another bug about plus-lighter and destination?

> 
> According to the Compositing and Blending spec [1], "plus-lighter" is not a valid CSS value. You want "lighter".

I did not recognize the difference between "plus-lighter" and "lighter" due to the lack of knowledge. I see now.

> Conventionally, alpha compositing operators are related to which parts of the resulting image come from the source (css_MixColor) and which parts come from the destination (the element texture), based on the alpha channel.
> 
> That's why the spec [4] shows examples that composite an offset blue square surrounded by transparency with a differently offset yellow square surrounded by transparency. If you look at our existing compositing test for "source-atop" [5], you'll see we use that technique.

I agree with your opinion. I'll try to make new test like "source-atop" test. However, I can submit new patch after about 5 days because Korea is on Thanksgiving from today.

By the way, cr-linux and mac bots failed this test after I adjusted the pixels from GTK results. cr-linux and mac bots had failed also the test in the second patch that I adjusted the pixels from Qt results. I think this kind of tests will be flaky when other ports unskip them. I'm curious whether other tests in css3/filters/custom have similar problems. 

> > LayoutTests/css3/filters/script-tests/custom-filter-property-parsing-invalid.js:-46
> > -testInvalidFilterRule("Mix function with alpha compositing mode 'plus-lighter', which should only apply to -webkit-background-composite", "custom(none mix(url(shader) plus-lighter))");
> 
> Please keep this test case in place.

I'll rollback CSSParcer to not handle 'plus-lighter' and rollback this test also.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list