https://bugs.webkit.org/show_bug.cgi?id=69202
authorhyatt@apple.com <hyatt@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 1 Oct 2011 03:07:46 +0000 (03:07 +0000)
committerhyatt@apple.com <hyatt@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 1 Oct 2011 03:07:46 +0000 (03:07 +0000)
commit0f0602301d47ac60614c549301c9181401b6cc23
tree08e15b57f9fce12b5e4facf897660d9f14f0448d
parent206d9f15c433ea0b2bb514f0c14ea275b17a89c9
https://bugs.webkit.org/show_bug.cgi?id=69202

[CSS3 Regions] Make positioned objects use the first region as the ICB when it
is their containing block. Make sure static distance computations take into
account the current region as well.

Reviewed by Sam Weinig.

Source/WebCore:

Added new tests in fast/regions.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::adjustPositionedBlock):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::startOffsetForContent):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
(WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
(WebCore::computeInlineStaticDistance):
(WebCore::computeLogicalLeftPositionedOffset):
(WebCore::computeLogicalTopPositionedOffset):
* rendering/RenderFlowThread.cpp:
(WebCore::RenderFlowThread::contentLogicalWidthOfFirstRegion):
(WebCore::RenderFlowThread::contentLogicalHeightOfFirstRegion):
(WebCore::RenderFlowThread::contentLogicalLeftOfFirstRegion):
* rendering/RenderFlowThread.h:

LayoutTests:

* fast/regions/positioned-objects-block-static-in-regions.html: Added.
* fast/regions/positioned-objects-block-static-in-rtl-regions.html: Added.
* fast/regions/positioned-objects-in-regions.html: Added.
* fast/regions/positioned-objects-in-rtl-regions.html: Added.
* fast/regions/positioned-objects-inline-static-in-regions.html: Added.
* fast/regions/positioned-objects-inline-static-in-rtl-regions.html: Added.
* fast/regions/positioned-objects-perpendicular-flows-in-regions.html: Added.
* platform/mac/fast/regions/positioned-objects-block-static-in-regions-expected.png: Added.
* platform/mac/fast/regions/positioned-objects-block-static-in-regions-expected.txt: Added.
* platform/mac/fast/regions/positioned-objects-block-static-in-rtl-regions-expected.png: Added.
* platform/mac/fast/regions/positioned-objects-block-static-in-rtl-regions-expected.txt: Added.
* platform/mac/fast/regions/positioned-objects-in-regions-expected.png: Added.
* platform/mac/fast/regions/positioned-objects-in-regions-expected.txt: Added.
* platform/mac/fast/regions/positioned-objects-in-rtl-regions-expected.png: Added.
* platform/mac/fast/regions/positioned-objects-in-rtl-regions-expected.txt: Added.
* platform/mac/fast/regions/positioned-objects-inline-static-in-regions-expected.png: Added.
* platform/mac/fast/regions/positioned-objects-inline-static-in-regions-expected.txt: Added.
* platform/mac/fast/regions/positioned-objects-inline-static-in-rtl-regions-expected.png: Added.
* platform/mac/fast/regions/positioned-objects-inline-static-in-rtl-regions-expected.txt: Added.
* platform/mac/fast/regions/positioned-objects-perpendicular-flows-in-regions-expected.png: Added.
* platform/mac/fast/regions/positioned-objects-perpendicular-flows-in-regions-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96452 268f45cc-cd09-0410-ab3c-d52691b4dbfc
29 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/regions/positioned-objects-block-static-in-regions.html [new file with mode: 0644]
LayoutTests/fast/regions/positioned-objects-block-static-in-rtl-regions.html [new file with mode: 0644]
LayoutTests/fast/regions/positioned-objects-in-regions.html [new file with mode: 0644]
LayoutTests/fast/regions/positioned-objects-in-rtl-regions.html [new file with mode: 0644]
LayoutTests/fast/regions/positioned-objects-inline-static-in-regions.html [new file with mode: 0644]
LayoutTests/fast/regions/positioned-objects-inline-static-in-rtl-regions.html [new file with mode: 0644]
LayoutTests/fast/regions/positioned-objects-perpendicular-flows-in-regions.html [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-block-static-in-regions-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-block-static-in-regions-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-block-static-in-rtl-regions-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-block-static-in-rtl-regions-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-in-regions-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-in-regions-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-in-rtl-regions-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-in-rtl-regions-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-inline-static-in-regions-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-inline-static-in-regions-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-inline-static-in-rtl-regions-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-inline-static-in-rtl-regions-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-perpendicular-flows-in-regions-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/regions/positioned-objects-perpendicular-flows-in-regions-expected.txt [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/rendering/RenderBlock.cpp
Source/WebCore/rendering/RenderBlock.h
Source/WebCore/rendering/RenderBlockLineLayout.cpp
Source/WebCore/rendering/RenderBox.cpp
Source/WebCore/rendering/RenderFlowThread.cpp
Source/WebCore/rendering/RenderFlowThread.h