[CSS Shapes] Floats with shape-outside aren't painting in the correct order
authorbjonesbe@adobe.com <bjonesbe@adobe.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 7 Sep 2013 06:05:23 +0000 (06:05 +0000)
committerbjonesbe@adobe.com <bjonesbe@adobe.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 7 Sep 2013 06:05:23 +0000 (06:05 +0000)
commita705280c2556f5bbd57daf64baa33070d82e259a
treef172254fa961e4d083b0e9c8d85b574acd0b95b6
parentf049e4df03f82358b68f1ac7648336365972afc2
[CSS Shapes] Floats with shape-outside aren't painting in the correct order
https://bugs.webkit.org/show_bug.cgi?id=118492

Reviewed by Darin Adler.

Source/WebCore:

When removing the old positioning behavior, the code that makes a
float with shape-outside gain a layer was left behind. This patch
removes that, so now floats with shape-outside are painted just like
floats without shape-outside.

Also remove the isFloatingWithShapeOutside helper method because its
use is now somewhat redundant, and the check it does is now only
needed in one place.

Test: fast/shapes/shape-outside-floats/shape-outside-floats-not-a-layer.html

* rendering/RenderBox.h:
(WebCore::RenderBox::shapeOutsideInfo):
* rendering/RenderObject.h:
* rendering/shapes/ShapeOutsideInfo.cpp:
(WebCore::ShapeOutsideInfo::isEnabledFor):

LayoutTests:

Update tests to reflect correct painting order. Add a new test for the
correct painting behavior.

* csswg/submitted/shapes/shape-outside/shape-outside-floats-circle-000-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-circle-000.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-ellipse-000-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-ellipse-000.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-001-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-001.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004-expected.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004.html:
* csswg/submitted/shapes/shape-outside/shape-outside-floats-stacked-000.html:
* fast/shapes/shape-outside-floats/shape-outside-floats-not-a-layer-expected.html: Added.
* fast/shapes/shape-outside-floats/shape-outside-floats-not-a-layer.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@155244 268f45cc-cd09-0410-ab3c-d52691b4dbfc
22 files changed:
LayoutTests/ChangeLog
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-circle-000-expected.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-circle-000.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-ellipse-000-expected.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-ellipse-000.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-001-expected.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-inset-rectangle-001.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001-expected.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-001.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002-expected.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-002.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003-expected.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-003.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004-expected.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-rounded-rectangle-004.html
LayoutTests/csswg/submitted/shapes/shape-outside/shape-outside-floats-stacked-000.html
LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-not-a-layer-expected.html [new file with mode: 0644]
LayoutTests/fast/shapes/shape-outside-floats/shape-outside-floats-not-a-layer.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/rendering/RenderBox.h
Source/WebCore/rendering/RenderObject.h
Source/WebCore/rendering/shapes/ShapeOutsideInfo.cpp