I'd like to separate the shape-inside implementation feature defines from the shape-outside ones.
<rdar://problem/15958487>
Created attachment 223004 [details] Patch
Comment on attachment 223004 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=223004&action=review > Source/WebCore/css/CSSParser.cpp:5885 > - || (valueId == CSSValueOutsideShape && propId == CSSPropertyWebkitShapeInside)) { > + || (valueId == CSSValueOutsideShape > +#if ENABLE(CSS_SHAPE_INSIDE) > + && propId == CSSPropertyWebkitShapeInside > +#endif I'm not sure if this is correct.
Created attachment 223005 [details] Patch
(In reply to comment #3) > (From update of attachment 223004 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=223004&action=review > > > Source/WebCore/css/CSSParser.cpp:5885 > > - || (valueId == CSSValueOutsideShape && propId == CSSPropertyWebkitShapeInside)) { > > + || (valueId == CSSValueOutsideShape > > +#if ENABLE(CSS_SHAPE_INSIDE) > > + && propId == CSSPropertyWebkitShapeInside > > +#endif > > I'm not sure if this is correct. The outside-shape value is only valid for shape-inside, so should be wrapped in the compile guard as well. Looks like you already got it in the second patch though. Thanks for doing this.
Comment on attachment 223005 [details] Patch Two comments: 1) RenderBlock::imageChanged is used by both shape-inside and shape-outside. (It won't let me comment on that line because it's not part of the diff) 2) shape-padding is only used by shape-inside. Otherwise, looks good to me. Thanks!
(In reply to comment #6) > (From update of attachment 223005 [details]) > Two comments: > 1) RenderBlock::imageChanged is used by both shape-inside and shape-outside. (It won't let me comment on that line because it's not part of the diff) Great. Fixed this. > 2) shape-padding is only used by shape-inside. OK. I'll protect against it in the CSS parser, but I'll leave it in RenderStyle (otherwise it is a bit too intrusive, and I already hate how many #ifs this added).
Created attachment 223022 [details] Patch
I think this one is all good!
(In reply to comment #9) > I think this one is all good! Yeah, it looks good. I should have asked this before, but have you tested that it compiles with the CSS_SHAPE_INSIDE flag turned off? (and maybe even that it passes the shape-outside tests in such a condition?)
Committed r163333: <http://trac.webkit.org/changeset/163333>
Comment on attachment 223022 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=223022&action=review > Source/WebCore/css/CSSParser.cpp:5888 > + || (valueId == CSSValueOutsideShape > + && propId == CSSPropertyWebkitShapeInside) Why broken into two lines? This seems less readable than before.