[New Multicolumn] Writing mode changes on the <html> and RenderView need to
authorhyatt@apple.com <hyatt@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 23 Jun 2014 18:56:52 +0000 (18:56 +0000)
committerhyatt@apple.com <hyatt@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 23 Jun 2014 18:56:52 +0000 (18:56 +0000)
commit8179c5a01ac4ee11289497cb391773df3abc5f65
tree2feb73e9383d6a7f869d2bffa6b86b03c00a3dc6
parent239a8a154b1836fe917782e8e0133eaeaa5749fb
[New Multicolumn] Writing mode changes on the <html> and RenderView need to
be propagated to column sets and flow thread children of those renderers.
https://bugs.webkit.org/show_bug.cgi?id=134121
<rdar://problem/16884527>

Reviewed by Dean Jackson.

Source/WebCore:
Added fast/multicol/pagination/RightToLeft-rl-dynamic.html

* rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::styleDidChange):
Refactor the propagation code for column sets and flow thread styles into a helper
function that is called here.

(WebCore::RenderBlockFlow::updateStylesForColumnChildren):
* rendering/RenderBlockFlow.h:
Add a new helper function for recalculating the styles of the column sets and
flow thread in response to changes.

* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleDidChange):
When the style is changed for a root element or the RenderView in response to
writing mode and direction changes, make sure that style gets propagated to
the column children by calling the new helper function.

LayoutTests:
* fast/multicol/pagination/RightToLeft-rl-dynamic.html: Added.
* platform/mac/fast/multicol/pagination/BottomToTop-bt-expected.png:
* platform/mac/fast/multicol/pagination/BottomToTop-lr-expected.png:
* platform/mac/fast/multicol/pagination/BottomToTop-rl-expected.png:
* platform/mac/fast/multicol/pagination/BottomToTop-tb-expected.png:
* platform/mac/fast/multicol/pagination/LeftToRight-bt-expected.png:
* platform/mac/fast/multicol/pagination/LeftToRight-lr-expected.png:
* platform/mac/fast/multicol/pagination/LeftToRight-rl-expected.png:
* platform/mac/fast/multicol/pagination/LeftToRight-tb-expected.png:
* platform/mac/fast/multicol/pagination/RightToLeft-bt-expected.png:
* platform/mac/fast/multicol/pagination/RightToLeft-lr-expected.png:
* platform/mac/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.png: Added.
* platform/mac/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt: Added.
* platform/mac/fast/multicol/pagination/RightToLeft-rl-expected.png:
* platform/mac/fast/multicol/pagination/RightToLeft-tb-expected.png:
* platform/mac/fast/multicol/pagination/TopToBottom-bt-expected.png:
* platform/mac/fast/multicol/pagination/TopToBottom-lr-expected.png:
* platform/mac/fast/multicol/pagination/TopToBottom-rl-expected.png:
* platform/mac/fast/multicol/pagination/TopToBottom-tb-expected.png:
* platform/mac/fast/multicol/pagination/nested-transforms-expected.png:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@170304 268f45cc-cd09-0410-ab3c-d52691b4dbfc
26 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/multicol/pagination/RightToLeft-rl-dynamic.html [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination/BottomToTop-bt-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/BottomToTop-lr-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/BottomToTop-rl-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/BottomToTop-tb-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/LeftToRight-bt-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/LeftToRight-lr-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/LeftToRight-rl-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/LeftToRight-tb-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/RightToLeft-bt-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/RightToLeft-lr-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination/RightToLeft-rl-dynamic-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination/RightToLeft-rl-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/RightToLeft-tb-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/TopToBottom-bt-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/TopToBottom-lr-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/TopToBottom-rl-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/TopToBottom-tb-expected.png
LayoutTests/platform/mac/fast/multicol/pagination/nested-transforms-expected.png
Source/WebCore/ChangeLog
Source/WebCore/rendering/RenderBlockFlow.cpp
Source/WebCore/rendering/RenderBlockFlow.h
Source/WebCore/rendering/RenderBox.cpp
Source/WebCore/rendering/RenderMultiColumnSet.cpp