<rdar://problem/10262225> Allow RenderView to have columns
authormitz@apple.com <mitz@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 8 Nov 2011 21:14:55 +0000 (21:14 +0000)
committermitz@apple.com <mitz@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 8 Nov 2011 21:14:55 +0000 (21:14 +0000)
https://bugs.webkit.org/show_bug.cgi?id=71840

Source/WebCore:

Reviewed by Simon Fraser.

Tests: fast/multicol/pagination-h-horizontal-bt.html
       fast/multicol/pagination-h-horizontal-tb.html
       fast/multicol/pagination-h-vertical-lr.html
       fast/multicol/pagination-h-vertical-rl.html
       fast/multicol/pagination-v-horizontal-bt.html
       fast/multicol/pagination-v-horizontal-tb.html
       fast/multicol/pagination-v-vertical-lr.html
       fast/multicol/pagination-v-vertical-rl.html

* WebCore.exp.in: Export Page::setPagination() for WebCoreTestSupport.
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::styleForDocument): Set the column axis and the column gap in the
document style if the view is paginated.
* page/Page.cpp:
(WebCore::Page::setPagination): Added this setter.
* page/Page.h:
(WebCore::Page::Pagination::Pagination):
(WebCore::Page::pagination): Added this getter.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::requiresColumns): Added and moved some logic to here from...
(WebCore::RenderBlock::setDesiredColumnCountAndWidth): ...here.
* rendering/RenderBlock.h:
* rendering/RenderBox.cpp:
(WebCore::RenderBox::paintRootBoxFillLayers): Changed to use the new RenderView::backgroundRect()
instead of unscaledDocumentRect().
* rendering/RenderView.cpp:
(WebCore::RenderView::requiresColumns): Added this override that always returns true if the view
is paginated.
(WebCore::RenderView::backgroundRect): Added. In the paginated case, returns a rectangle stretching
across all columns.
* rendering/RenderView.h:
* testing/Internals.cpp:
(WebCore::Internals::reset): Also reset pagination.
(WebCore::Internals::setPagination): Added this setter for testing.
* testing/Internals.h:
* testing/Internals.idl:

Source/WebKit2:

* win/WebKit2.def: Export Page::setPagination() for WebCoreTestSupport.

LayoutTests:

Reviewed by Simon Fraser.

* fast/multicol/pagination-h-horizontal-bt.html: Added.
* fast/multicol/pagination-h-horizontal-tb.html: Added.
* fast/multicol/pagination-h-vertical-lr.html: Added.
* fast/multicol/pagination-h-vertical-rl.html: Added.
* fast/multicol/pagination-v-horizontal-bt.html: Added.
* fast/multicol/pagination-v-horizontal-tb.html: Added.
* fast/multicol/pagination-v-vertical-lr.html: Added.
* fast/multicol/pagination-v-vertical-rl.html: Added.
* platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.png: Added.
* platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.txt: Added.
* platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.png: Added.
* platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.txt: Added.
* platform/mac/fast/multicol/pagination-h-vertical-lr-expected.png: Added.
* platform/mac/fast/multicol/pagination-h-vertical-lr-expected.txt: Added.
* platform/mac/fast/multicol/pagination-h-vertical-rl-expected.png: Added.
* platform/mac/fast/multicol/pagination-h-vertical-rl-expected.txt: Added.
* platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.png: Added.
* platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.txt: Added.
* platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.png: Added.
* platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.txt: Added.
* platform/mac/fast/multicol/pagination-v-vertical-lr-expected.png: Added.
* platform/mac/fast/multicol/pagination-v-vertical-lr-expected.txt: Added.
* platform/mac/fast/multicol/pagination-v-vertical-rl-expected.png: Added.
* platform/mac/fast/multicol/pagination-v-vertical-rl-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@99613 268f45cc-cd09-0410-ab3c-d52691b4dbfc

40 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/multicol/pagination-h-horizontal-bt.html [new file with mode: 0644]
LayoutTests/fast/multicol/pagination-h-horizontal-tb.html [new file with mode: 0644]
LayoutTests/fast/multicol/pagination-h-vertical-lr.html [new file with mode: 0644]
LayoutTests/fast/multicol/pagination-h-vertical-rl.html [new file with mode: 0644]
LayoutTests/fast/multicol/pagination-v-horizontal-bt.html [new file with mode: 0644]
LayoutTests/fast/multicol/pagination-v-horizontal-tb.html [new file with mode: 0644]
LayoutTests/fast/multicol/pagination-v-vertical-lr.html [new file with mode: 0644]
LayoutTests/fast/multicol/pagination-v-vertical-rl.html [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-lr-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-lr-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-rl-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-rl-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-lr-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-lr-expected.txt [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-rl-expected.png [new file with mode: 0644]
LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-rl-expected.txt [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/WebCore.exp.in
Source/WebCore/css/CSSStyleSelector.cpp
Source/WebCore/page/Page.cpp
Source/WebCore/page/Page.h
Source/WebCore/rendering/RenderBlock.cpp
Source/WebCore/rendering/RenderBlock.h
Source/WebCore/rendering/RenderBox.cpp
Source/WebCore/rendering/RenderView.cpp
Source/WebCore/rendering/RenderView.h
Source/WebCore/testing/Internals.cpp
Source/WebCore/testing/Internals.h
Source/WebCore/testing/Internals.idl
Source/WebKit2/ChangeLog
Source/WebKit2/win/WebKit2.def

index e4cb48ba4e6d8b9e008c93f876d81bbb61d288ff..91dbb7eb92b02968d0984a11c637dee44351a25e 100644 (file)
@@ -1,3 +1,35 @@
+2011-11-08  Dan Bernstein  <mitz@apple.com>
+
+        <rdar://problem/10262225> Allow RenderView to have columns
+        https://bugs.webkit.org/show_bug.cgi?id=71840
+
+        Reviewed by Simon Fraser.
+
+        * fast/multicol/pagination-h-horizontal-bt.html: Added.
+        * fast/multicol/pagination-h-horizontal-tb.html: Added.
+        * fast/multicol/pagination-h-vertical-lr.html: Added.
+        * fast/multicol/pagination-h-vertical-rl.html: Added.
+        * fast/multicol/pagination-v-horizontal-bt.html: Added.
+        * fast/multicol/pagination-v-horizontal-tb.html: Added.
+        * fast/multicol/pagination-v-vertical-lr.html: Added.
+        * fast/multicol/pagination-v-vertical-rl.html: Added.
+        * platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.png: Added.
+        * platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.txt: Added.
+        * platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.png: Added.
+        * platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.txt: Added.
+        * platform/mac/fast/multicol/pagination-h-vertical-lr-expected.png: Added.
+        * platform/mac/fast/multicol/pagination-h-vertical-lr-expected.txt: Added.
+        * platform/mac/fast/multicol/pagination-h-vertical-rl-expected.png: Added.
+        * platform/mac/fast/multicol/pagination-h-vertical-rl-expected.txt: Added.
+        * platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.png: Added.
+        * platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.txt: Added.
+        * platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.png: Added.
+        * platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.txt: Added.
+        * platform/mac/fast/multicol/pagination-v-vertical-lr-expected.png: Added.
+        * platform/mac/fast/multicol/pagination-v-vertical-lr-expected.txt: Added.
+        * platform/mac/fast/multicol/pagination-v-vertical-rl-expected.png: Added.
+        * platform/mac/fast/multicol/pagination-v-vertical-rl-expected.txt: Added.
+
 2011-11-08  Vineet Chaudhary  <vineet.chaudhary@motorola.com>
 
         Document.importNode's 'deep' argument should default to true.
diff --git a/LayoutTests/fast/multicol/pagination-h-horizontal-bt.html b/LayoutTests/fast/multicol/pagination-h-horizontal-bt.html
new file mode 100644 (file)
index 0000000..01e2510
--- /dev/null
@@ -0,0 +1,15 @@
+<html style="-webkit-writing-mode: horizontal-bt;">
+<head>
+    <script>
+        if (window.internals)
+            internals.setPagination(document, "HorizontallyPaginated", 0);
+    </script>
+</head>
+<body>
+    <div style="border: solid; height: 900px; font: 50px ahem; -webkit-font-smoothing: none;">
+        <br><br><br><br><br><br><br><br><br><br>
+        Lorem<br>
+        <span style="color: red;">ipsum</br>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/multicol/pagination-h-horizontal-tb.html b/LayoutTests/fast/multicol/pagination-h-horizontal-tb.html
new file mode 100644 (file)
index 0000000..fd619ae
--- /dev/null
@@ -0,0 +1,15 @@
+<html style="-webkit-writing-mode: horizontal-tb;">
+<head>
+    <script>
+        if (window.internals)
+            internals.setPagination(document, "HorizontallyPaginated", 0);
+    </script>
+</head>
+<body>
+    <div style="border: solid; height: 900px; font: 50px ahem; -webkit-font-smoothing: none;">
+        <br><br><br><br><br><br><br><br><br><br>
+        Lorem<br>
+        <span style="color: red;">ipsum</br>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/multicol/pagination-h-vertical-lr.html b/LayoutTests/fast/multicol/pagination-h-vertical-lr.html
new file mode 100644 (file)
index 0000000..4c24950
--- /dev/null
@@ -0,0 +1,15 @@
+<html style="-webkit-writing-mode: vertical-lr;">
+<head>
+    <script>
+        if (window.internals)
+            internals.setPagination(document, "HorizontallyPaginated", 0);
+    </script>
+</head>
+<body>
+    <div style="border: solid; width: 1200px; font: 50px ahem; -webkit-font-smoothing: none;">
+        <br><br><br><br><br><br><br><br><br><br><br><br><br><br>
+        Lorem<br>
+        <span style="color: red;">ipsum</br>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/multicol/pagination-h-vertical-rl.html b/LayoutTests/fast/multicol/pagination-h-vertical-rl.html
new file mode 100644 (file)
index 0000000..0074651
--- /dev/null
@@ -0,0 +1,15 @@
+<html style="-webkit-writing-mode: vertical-rl;">
+<head>
+    <script>
+        if (window.internals)
+            internals.setPagination(document, "HorizontallyPaginated", 0);
+    </script>
+</head>
+<body>
+    <div style="border: solid; width: 1200px; font: 50px ahem; -webkit-font-smoothing: none;">
+        <br><br><br><br><br><br><br><br><br><br><br><br><br><br>
+        Lorem<br>
+        <span style="color: red;">ipsum</br>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/multicol/pagination-v-horizontal-bt.html b/LayoutTests/fast/multicol/pagination-v-horizontal-bt.html
new file mode 100644 (file)
index 0000000..7956845
--- /dev/null
@@ -0,0 +1,15 @@
+<html style="-webkit-writing-mode: horizontal-bt;">
+<head>
+    <script>
+        if (window.internals)
+            internals.setPagination(document, "VerticallyPaginated", 0);
+    </script>
+</head>
+<body>
+    <div style="border: solid; height: 900px; font: 50px ahem; -webkit-font-smoothing: none;">
+        <br><br><br><br><br><br><br><br><br><br>
+        Lorem<br>
+        <span style="color: red;">ipsum</br>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/multicol/pagination-v-horizontal-tb.html b/LayoutTests/fast/multicol/pagination-v-horizontal-tb.html
new file mode 100644 (file)
index 0000000..170aa66
--- /dev/null
@@ -0,0 +1,15 @@
+<html style="-webkit-writing-mode: horizontal-tb;">
+<head>
+    <script>
+        if (window.internals)
+            internals.setPagination(document, "VerticallyPaginated", 0);
+    </script>
+</head>
+<body>
+    <div style="border: solid; height: 900px; font: 50px ahem; -webkit-font-smoothing: none;">
+        <br><br><br><br><br><br><br><br><br><br>
+        Lorem<br>
+        <span style="color: red;">ipsum</br>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/multicol/pagination-v-vertical-lr.html b/LayoutTests/fast/multicol/pagination-v-vertical-lr.html
new file mode 100644 (file)
index 0000000..21c4e8a
--- /dev/null
@@ -0,0 +1,15 @@
+<html style="-webkit-writing-mode: vertical-lr;">
+<head>
+    <script>
+        if (window.internals)
+            internals.setPagination(document, "VerticallyPaginated", 0);
+    </script>
+</head>
+<body>
+    <div style="border: solid; width: 1200px; font: 50px ahem; -webkit-font-smoothing: none;">
+        <br><br><br><br><br><br><br><br><br><br><br><br><br><br>
+        Lorem<br>
+        <span style="color: red;">ipsum</br>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/fast/multicol/pagination-v-vertical-rl.html b/LayoutTests/fast/multicol/pagination-v-vertical-rl.html
new file mode 100644 (file)
index 0000000..014d4d9
--- /dev/null
@@ -0,0 +1,15 @@
+<html style="-webkit-writing-mode: vertical-rl;">
+<head>
+    <script>
+        if (window.internals)
+            internals.setPagination(document, "VerticallyPaginated", 0);
+    </script>
+</head>
+<body>
+    <div style="border: solid; width: 1200px; font: 50px ahem; -webkit-font-smoothing: none;">
+        <br><br><br><br><br><br><br><br><br><br><br><br><br><br>
+        Lorem<br>
+        <span style="color: red;">ipsum</br>
+    </div>
+</body>
+</html>
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.png b/LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.png
new file mode 100644 (file)
index 0000000..d260a03
Binary files /dev/null and b/LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.txt b/LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-bt-expected.txt
new file mode 100644 (file)
index 0000000..c406b46
--- /dev/null
@@ -0,0 +1,23 @@
+layer at (0,0) size 1600x585
+  RenderView at (0,0) size 800x585
+layer at (0,-337) size 800x922 backgroundClip at (0,0) size 1600x585 clip at (0,0) size 1600x585 outlineClip at (0,0) size 1600x585
+  RenderBlock {HTML} at (0,0) size 800x922
+    RenderBody {BODY} at (8,8) size 784x906
+      RenderBlock {DIV} at (0,0) size 784x906 [border: (3px solid #000000)]
+        RenderBR {BR} at (3,3) size 0x50
+        RenderBR {BR} at (3,53) size 0x50
+        RenderBR {BR} at (3,103) size 0x50
+        RenderBR {BR} at (3,153) size 0x50
+        RenderBR {BR} at (3,203) size 0x50
+        RenderBR {BR} at (3,253) size 0x50
+        RenderBR {BR} at (3,303) size 0x50
+        RenderBR {BR} at (3,353) size 0x50
+        RenderBR {BR} at (3,403) size 0x50
+        RenderBR {BR} at (3,453) size 0x50
+        RenderText {#text} at (3,503) size 250x50
+          text run at (3,503) width 250: "Lorem"
+        RenderBR {BR} at (253,513) size 0x0
+        RenderInline {SPAN} at (0,0) size 250x50 [color=#FF0000]
+          RenderText {#text} at (3,577) size 250x50
+            text run at (3,577) width 250: "ipsum"
+          RenderBR {BR} at (253,587) size 0x0
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.png b/LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.png
new file mode 100644 (file)
index 0000000..41041d8
Binary files /dev/null and b/LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.txt b/LayoutTests/platform/mac/fast/multicol/pagination-h-horizontal-tb-expected.txt
new file mode 100644 (file)
index 0000000..16d71b0
--- /dev/null
@@ -0,0 +1,23 @@
+layer at (0,0) size 1600x585
+  RenderView at (0,0) size 800x585
+layer at (0,0) size 800x922 backgroundClip at (0,0) size 1600x585 clip at (0,0) size 1600x585 outlineClip at (0,0) size 1600x585
+  RenderBlock {HTML} at (0,0) size 800x922
+    RenderBody {BODY} at (8,8) size 784x906
+      RenderBlock {DIV} at (0,0) size 784x906 [border: (3px solid #000000)]
+        RenderBR {BR} at (3,3) size 0x50
+        RenderBR {BR} at (3,53) size 0x50
+        RenderBR {BR} at (3,103) size 0x50
+        RenderBR {BR} at (3,153) size 0x50
+        RenderBR {BR} at (3,203) size 0x50
+        RenderBR {BR} at (3,253) size 0x50
+        RenderBR {BR} at (3,303) size 0x50
+        RenderBR {BR} at (3,353) size 0x50
+        RenderBR {BR} at (3,403) size 0x50
+        RenderBR {BR} at (3,453) size 0x50
+        RenderText {#text} at (3,503) size 250x50
+          text run at (3,503) width 250: "Lorem"
+        RenderBR {BR} at (253,543) size 0x0
+        RenderInline {SPAN} at (0,0) size 250x50 [color=#FF0000]
+          RenderText {#text} at (3,577) size 250x50
+            text run at (3,577) width 250: "ipsum"
+          RenderBR {BR} at (253,617) size 0x0
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-lr-expected.png b/LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-lr-expected.png
new file mode 100644 (file)
index 0000000..17c658e
Binary files /dev/null and b/LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-lr-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-lr-expected.txt b/LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-lr-expected.txt
new file mode 100644 (file)
index 0000000..fd48e02
--- /dev/null
@@ -0,0 +1,27 @@
+layer at (0,0) size 1600x585
+  RenderView at (0,0) size 800x585
+layer at (0,0) size 1222x585
+  RenderBlock {HTML} at (0,0) size 1222x585
+    RenderBody {BODY} at (8,8) size 1206x569
+      RenderBlock {DIV} at (0,0) size 1206x569 [border: (3px solid #000000)]
+        RenderBR {BR} at (3,3) size 50x0
+        RenderBR {BR} at (53,3) size 50x0
+        RenderBR {BR} at (103,3) size 50x0
+        RenderBR {BR} at (153,3) size 50x0
+        RenderBR {BR} at (203,3) size 50x0
+        RenderBR {BR} at (253,3) size 50x0
+        RenderBR {BR} at (303,3) size 50x0
+        RenderBR {BR} at (353,3) size 50x0
+        RenderBR {BR} at (403,3) size 50x0
+        RenderBR {BR} at (453,3) size 50x0
+        RenderBR {BR} at (503,3) size 50x0
+        RenderBR {BR} at (553,3) size 50x0
+        RenderBR {BR} at (603,3) size 50x0
+        RenderBR {BR} at (653,3) size 50x0
+        RenderText {#text} at (703,3) size 50x250
+          text run at (703,3) width 250: "Lorem"
+        RenderBR {BR} at (713,253) size 0x0
+        RenderInline {SPAN} at (0,0) size 50x250 [color=#FF0000]
+          RenderText {#text} at (792,3) size 50x250
+            text run at (792,3) width 250: "ipsum"
+          RenderBR {BR} at (802,253) size 0x0
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-rl-expected.png b/LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-rl-expected.png
new file mode 100644 (file)
index 0000000..d0966e5
Binary files /dev/null and b/LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-rl-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-rl-expected.txt b/LayoutTests/platform/mac/fast/multicol/pagination-h-vertical-rl-expected.txt
new file mode 100644 (file)
index 0000000..0ffeea0
--- /dev/null
@@ -0,0 +1,27 @@
+layer at (0,0) size 1600x585
+  RenderView at (0,0) size 800x585
+layer at (-422,0) size 1222x585 backgroundClip at (0,0) size 1600x585 clip at (0,0) size 1600x585 outlineClip at (0,0) size 1600x585
+  RenderBlock {HTML} at (0,0) size 1222x585
+    RenderBody {BODY} at (8,8) size 1206x569
+      RenderBlock {DIV} at (0,0) size 1206x569 [border: (3px solid #000000)]
+        RenderBR {BR} at (3,3) size 50x0
+        RenderBR {BR} at (53,3) size 50x0
+        RenderBR {BR} at (103,3) size 50x0
+        RenderBR {BR} at (153,3) size 50x0
+        RenderBR {BR} at (203,3) size 50x0
+        RenderBR {BR} at (253,3) size 50x0
+        RenderBR {BR} at (303,3) size 50x0
+        RenderBR {BR} at (353,3) size 50x0
+        RenderBR {BR} at (403,3) size 50x0
+        RenderBR {BR} at (453,3) size 50x0
+        RenderBR {BR} at (503,3) size 50x0
+        RenderBR {BR} at (553,3) size 50x0
+        RenderBR {BR} at (603,3) size 50x0
+        RenderBR {BR} at (653,3) size 50x0
+        RenderText {#text} at (703,3) size 50x250
+          text run at (703,3) width 250: "Lorem"
+        RenderBR {BR} at (743,253) size 0x0
+        RenderInline {SPAN} at (0,0) size 50x250 [color=#FF0000]
+          RenderText {#text} at (792,3) size 50x250
+            text run at (792,3) width 250: "ipsum"
+          RenderBR {BR} at (832,253) size 0x0
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.png b/LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.png
new file mode 100644 (file)
index 0000000..6baa205
Binary files /dev/null and b/LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.txt b/LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-bt-expected.txt
new file mode 100644 (file)
index 0000000..e5aa775
--- /dev/null
@@ -0,0 +1,23 @@
+layer at (0,0) size 785x1200
+  RenderView at (0,0) size 785x600
+layer at (0,-322) size 785x922 backgroundClip at (0,0) size 785x1200 clip at (0,0) size 785x1200 outlineClip at (0,0) size 785x1200
+  RenderBlock {HTML} at (0,0) size 785x922
+    RenderBody {BODY} at (8,8) size 769x906
+      RenderBlock {DIV} at (0,0) size 769x906 [border: (3px solid #000000)]
+        RenderBR {BR} at (3,3) size 0x50
+        RenderBR {BR} at (3,53) size 0x50
+        RenderBR {BR} at (3,103) size 0x50
+        RenderBR {BR} at (3,153) size 0x50
+        RenderBR {BR} at (3,203) size 0x50
+        RenderBR {BR} at (3,253) size 0x50
+        RenderBR {BR} at (3,303) size 0x50
+        RenderBR {BR} at (3,353) size 0x50
+        RenderBR {BR} at (3,403) size 0x50
+        RenderBR {BR} at (3,453) size 0x50
+        RenderText {#text} at (3,503) size 250x50
+          text run at (3,503) width 250: "Lorem"
+        RenderBR {BR} at (253,513) size 0x0
+        RenderInline {SPAN} at (0,0) size 250x50 [color=#FF0000]
+          RenderText {#text} at (3,592) size 250x50
+            text run at (3,592) width 250: "ipsum"
+          RenderBR {BR} at (253,602) size 0x0
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.png b/LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.png
new file mode 100644 (file)
index 0000000..4ce2f54
Binary files /dev/null and b/LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.txt b/LayoutTests/platform/mac/fast/multicol/pagination-v-horizontal-tb-expected.txt
new file mode 100644 (file)
index 0000000..14f29c6
--- /dev/null
@@ -0,0 +1,23 @@
+layer at (0,0) size 785x1200
+  RenderView at (0,0) size 785x600
+layer at (0,0) size 785x922
+  RenderBlock {HTML} at (0,0) size 785x922
+    RenderBody {BODY} at (8,8) size 769x906
+      RenderBlock {DIV} at (0,0) size 769x906 [border: (3px solid #000000)]
+        RenderBR {BR} at (3,3) size 0x50
+        RenderBR {BR} at (3,53) size 0x50
+        RenderBR {BR} at (3,103) size 0x50
+        RenderBR {BR} at (3,153) size 0x50
+        RenderBR {BR} at (3,203) size 0x50
+        RenderBR {BR} at (3,253) size 0x50
+        RenderBR {BR} at (3,303) size 0x50
+        RenderBR {BR} at (3,353) size 0x50
+        RenderBR {BR} at (3,403) size 0x50
+        RenderBR {BR} at (3,453) size 0x50
+        RenderText {#text} at (3,503) size 250x50
+          text run at (3,503) width 250: "Lorem"
+        RenderBR {BR} at (253,543) size 0x0
+        RenderInline {SPAN} at (0,0) size 250x50 [color=#FF0000]
+          RenderText {#text} at (3,592) size 250x50
+            text run at (3,592) width 250: "ipsum"
+          RenderBR {BR} at (253,632) size 0x0
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-lr-expected.png b/LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-lr-expected.png
new file mode 100644 (file)
index 0000000..c7292c3
Binary files /dev/null and b/LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-lr-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-lr-expected.txt b/LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-lr-expected.txt
new file mode 100644 (file)
index 0000000..4bf1a9c
--- /dev/null
@@ -0,0 +1,27 @@
+layer at (0,0) size 785x1200
+  RenderView at (0,0) size 785x600
+layer at (0,0) size 1222x600 backgroundClip at (0,0) size 785x1200 clip at (0,0) size 785x1200 outlineClip at (0,0) size 785x1200
+  RenderBlock {HTML} at (0,0) size 1222x600
+    RenderBody {BODY} at (8,8) size 1206x584
+      RenderBlock {DIV} at (0,0) size 1206x584 [border: (3px solid #000000)]
+        RenderBR {BR} at (3,3) size 50x0
+        RenderBR {BR} at (53,3) size 50x0
+        RenderBR {BR} at (103,3) size 50x0
+        RenderBR {BR} at (153,3) size 50x0
+        RenderBR {BR} at (203,3) size 50x0
+        RenderBR {BR} at (253,3) size 50x0
+        RenderBR {BR} at (303,3) size 50x0
+        RenderBR {BR} at (353,3) size 50x0
+        RenderBR {BR} at (403,3) size 50x0
+        RenderBR {BR} at (453,3) size 50x0
+        RenderBR {BR} at (503,3) size 50x0
+        RenderBR {BR} at (553,3) size 50x0
+        RenderBR {BR} at (603,3) size 50x0
+        RenderBR {BR} at (653,3) size 50x0
+        RenderText {#text} at (703,3) size 50x250
+          text run at (703,3) width 250: "Lorem"
+        RenderBR {BR} at (713,253) size 0x0
+        RenderInline {SPAN} at (0,0) size 50x250 [color=#FF0000]
+          RenderText {#text} at (777,3) size 50x250
+            text run at (777,3) width 250: "ipsum"
+          RenderBR {BR} at (787,253) size 0x0
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-rl-expected.png b/LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-rl-expected.png
new file mode 100644 (file)
index 0000000..b5d4e5a
Binary files /dev/null and b/LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-rl-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-rl-expected.txt b/LayoutTests/platform/mac/fast/multicol/pagination-v-vertical-rl-expected.txt
new file mode 100644 (file)
index 0000000..d41a307
--- /dev/null
@@ -0,0 +1,27 @@
+layer at (0,0) size 785x1200
+  RenderView at (0,0) size 785x600
+layer at (-437,0) size 1222x600 backgroundClip at (0,0) size 785x1200 clip at (0,0) size 785x1200 outlineClip at (0,0) size 785x1200
+  RenderBlock {HTML} at (0,0) size 1222x600
+    RenderBody {BODY} at (8,8) size 1206x584
+      RenderBlock {DIV} at (0,0) size 1206x584 [border: (3px solid #000000)]
+        RenderBR {BR} at (3,3) size 50x0
+        RenderBR {BR} at (53,3) size 50x0
+        RenderBR {BR} at (103,3) size 50x0
+        RenderBR {BR} at (153,3) size 50x0
+        RenderBR {BR} at (203,3) size 50x0
+        RenderBR {BR} at (253,3) size 50x0
+        RenderBR {BR} at (303,3) size 50x0
+        RenderBR {BR} at (353,3) size 50x0
+        RenderBR {BR} at (403,3) size 50x0
+        RenderBR {BR} at (453,3) size 50x0
+        RenderBR {BR} at (503,3) size 50x0
+        RenderBR {BR} at (553,3) size 50x0
+        RenderBR {BR} at (603,3) size 50x0
+        RenderBR {BR} at (653,3) size 50x0
+        RenderText {#text} at (703,3) size 50x250
+          text run at (703,3) width 250: "Lorem"
+        RenderBR {BR} at (743,253) size 0x0
+        RenderInline {SPAN} at (0,0) size 50x250 [color=#FF0000]
+          RenderText {#text} at (777,3) size 50x250
+            text run at (777,3) width 250: "ipsum"
+          RenderBR {BR} at (817,253) size 0x0
index 6a1d7e2696db82d39aface0676bdcea008e508bc..503bbaf8353292dfd550891c5d1dab981884b5e0 100644 (file)
@@ -1,3 +1,47 @@
+2011-11-08  Dan Bernstein  <mitz@apple.com>
+
+        <rdar://problem/10262225> Allow RenderView to have columns
+        https://bugs.webkit.org/show_bug.cgi?id=71840
+
+        Reviewed by Simon Fraser.
+
+        Tests: fast/multicol/pagination-h-horizontal-bt.html
+               fast/multicol/pagination-h-horizontal-tb.html
+               fast/multicol/pagination-h-vertical-lr.html
+               fast/multicol/pagination-h-vertical-rl.html
+               fast/multicol/pagination-v-horizontal-bt.html
+               fast/multicol/pagination-v-horizontal-tb.html
+               fast/multicol/pagination-v-vertical-lr.html
+               fast/multicol/pagination-v-vertical-rl.html
+
+        * WebCore.exp.in: Export Page::setPagination() for WebCoreTestSupport.
+        * css/CSSStyleSelector.cpp:
+        (WebCore::CSSStyleSelector::styleForDocument): Set the column axis and the column gap in the
+        document style if the view is paginated.
+        * page/Page.cpp:
+        (WebCore::Page::setPagination): Added this setter.
+        * page/Page.h:
+        (WebCore::Page::Pagination::Pagination):
+        (WebCore::Page::pagination): Added this getter.
+        * rendering/RenderBlock.cpp:
+        (WebCore::RenderBlock::requiresColumns): Added and moved some logic to here from...
+        (WebCore::RenderBlock::setDesiredColumnCountAndWidth): ...here.
+        * rendering/RenderBlock.h:
+        * rendering/RenderBox.cpp:
+        (WebCore::RenderBox::paintRootBoxFillLayers): Changed to use the new RenderView::backgroundRect()
+        instead of unscaledDocumentRect().
+        * rendering/RenderView.cpp:
+        (WebCore::RenderView::requiresColumns): Added this override that always returns true if the view
+        is paginated.
+        (WebCore::RenderView::backgroundRect): Added. In the paginated case, returns a rectangle stretching
+        across all columns.
+        * rendering/RenderView.h:
+        * testing/Internals.cpp:
+        (WebCore::Internals::reset): Also reset pagination.
+        (WebCore::Internals::setPagination): Added this setter for testing.
+        * testing/Internals.h:
+        * testing/Internals.idl:
+
 2011-11-08  Vineet Chaudhary  <vineet.chaudhary@motorola.com>
 
         Document.importNode's 'deep' argument should default to true.
index 486e977f09ced1b7c890135034a7f196699504ce..b4af8c762d13e99402891715c2915e2250c66f2c 100644 (file)
@@ -742,6 +742,7 @@ __ZN7WebCore4Page11PageClientsC1Ev
 __ZN7WebCore4Page11PageClientsD1Ev
 __ZN7WebCore4Page12setGroupNameERKN3WTF6StringE
 __ZN7WebCore4Page13rangeOfStringERKN3WTF6StringEPNS_5RangeEj
+__ZN7WebCore4Page13setPaginationERKNS0_10PaginationE
 __ZN7WebCore4Page14setMediaVolumeEf
 __ZN7WebCore4Page15addSchedulePairEN3WTF10PassRefPtrINS_12SchedulePairEEE
 __ZN7WebCore4Page15didMoveOnscreenEv
index e1e77a5006fb1b1bcb45a0e8d9f0e4ccb6eed841..19a310221d73f7238ed4a36d656eccc191ba4f5c 100644 (file)
@@ -1163,6 +1163,16 @@ PassRefPtr<RenderStyle> CSSStyleSelector::styleForDocument(Document* document)
             documentStyle->setDirection(docElementRenderer->style()->direction());
     }
 
+    if (frame) {
+        if (Page* page = frame->page()) {
+            const Page::Pagination& pagination = page->pagination();
+            if (pagination.mode != Page::Pagination::Unpaginated) {
+                documentStyle->setColumnAxis(pagination.mode == Page::Pagination::HorizontallyPaginated ? HorizontalColumnAxis : VerticalColumnAxis);
+                documentStyle->setColumnGap(pagination.gap);
+            }
+        }
+    }
+
     FontDescription fontDescription;
     fontDescription.setUsePrinterFont(document->printing());
     if (Settings* settings = document->settings()) {
index 8bbdec94d8c0c75144016890a85a35bc32c6ba89..59f3579f42e5e7d2f48126bbf5f0a391e43e4661 100644 (file)
@@ -665,6 +665,17 @@ void Page::setDeviceScaleFactor(float scaleFactor)
     backForward()->markPagesForFullStyleRecalc();
 }
 
+void Page::setPagination(const Pagination& pagination)
+{
+    if (m_pagination.mode == pagination.mode && m_pagination.gap == pagination.gap)
+        return;
+
+    m_pagination = pagination;
+
+    setNeedsRecalcStyleInAllFrames();
+    backForward()->markPagesForFullStyleRecalc();
+}
+
 void Page::didMoveOnscreen()
 {
     for (Frame* frame = mainFrame(); frame; frame = frame->tree()->traverseNext()) {
index 0f161f4fb2156f1a0150c982bf3e1248cc48e14a..3f30cf3483d471abac49c6c85f3fa90a714c734c 100644 (file)
@@ -251,6 +251,22 @@ namespace WebCore {
         float deviceScaleFactor() const { return m_deviceScaleFactor; }
         void setDeviceScaleFactor(float);
 
+        struct Pagination {
+            enum Mode { Unpaginated, HorizontallyPaginated, VerticallyPaginated };
+
+            Pagination()
+                : mode(Unpaginated)
+                , gap(0)
+            {
+            };
+
+            Mode mode;
+            unsigned gap;
+        };
+
+        const Pagination& pagination() const { return m_pagination; }
+        void setPagination(const Pagination&);
+
         // Notifications when the Page starts and stops being presented via a native window.
         void didMoveOnscreen();
         void willMoveOffscreen();
@@ -382,6 +398,8 @@ namespace WebCore {
         float m_pageScaleFactor;
         float m_deviceScaleFactor;
 
+        Pagination m_pagination;
+
         bool m_javaScriptURLsAreAllowed;
 
         String m_userStyleSheetPath;
index d59b2324d1ea3b43933559765ffe2e970363e643..f97e034c8e3aa8dad0911fffb96245dbc244506c 100755 (executable)
@@ -4506,12 +4506,17 @@ void RenderBlock::calcColumnWidth()
     setDesiredColumnCountAndWidth(desiredColumnCount, desiredColumnWidth);
 }
 
+bool RenderBlock::requiresColumns(int desiredColumnCount) const
+{
+    return firstChild()
+        && (desiredColumnCount != 1 || !style()->hasAutoColumnWidth() || !style()->hasInlineColumnAxis())
+        && !firstChild()->isAnonymousColumnsBlock()
+        && !firstChild()->isAnonymousColumnSpanBlock();
+}
+
 void RenderBlock::setDesiredColumnCountAndWidth(int count, LayoutUnit width)
 {
-    bool destroyColumns = !firstChild()
-                          || (count == 1 && style()->hasAutoColumnWidth() && style()->hasInlineColumnAxis())
-                          || firstChild()->isAnonymousColumnsBlock()
-                          || firstChild()->isAnonymousColumnSpanBlock();
+    bool destroyColumns = !requiresColumns(count);
     if (destroyColumns) {
         if (hasColumns()) {
             delete gColumnInfoMap->take(this);
index ab6ae9ac2ccf6a11380a79175f656e387e67809e..7013820b002e96c79b5c403507c8898bca383ebe 100644 (file)
@@ -906,7 +906,9 @@ protected:
     bool lineWidthForPaginatedLineChanged(RootInlineBox*, LayoutUnit lineDelta = 0) const;
 
     bool logicalWidthChangedInRegions() const;
-    
+
+    virtual bool requiresColumns(int desiredColumnCount) const;
+
 public:
     LayoutUnit offsetFromLogicalTopOfFirstPage() const;
     RenderRegion* regionAtBlockOffset(LayoutUnit) const;
index 488ce002f5dfc889be5e0f407e41e5c2679f8e12..1191e1552fa16228aedc34c1e59425b846e60fcf 100644 (file)
@@ -872,9 +872,10 @@ void RenderBox::paintRootBoxFillLayers(const PaintInfo& paintInfo)
         }
     }
 
-    // The background of the box generated by the root element covers the entire canvas, so just use
-    // the RenderView's unscaledDocumentRect accessor.
-    paintFillLayers(paintInfo, bgColor, bgLayer, view()->unscaledDocumentRect(), BackgroundBleedNone, CompositeSourceOver, bodyObject);
+    RenderView* view = this->view();
+    LayoutRect backgroundRect = view->backgroundRect();
+    flipForWritingMode(backgroundRect);
+    paintFillLayers(paintInfo, bgColor, bgLayer, backgroundRect, BackgroundBleedNone, CompositeSourceOver, bodyObject);
 }
 
 BackgroundBleedAvoidance RenderBox::determineBackgroundBleedAvoidance(GraphicsContext* context) const
index 7409744efa06179a45cf8e3f43ccbee50b791005..9b4300f8a119eb491a5928d4a371bc94aef8d435 100644 (file)
@@ -21,6 +21,7 @@
 #include "config.h"
 #include "RenderView.h"
 
+#include "ColumnInfo.h"
 #include "Document.h"
 #include "Element.h"
 #include "FloatQuad.h"
@@ -173,6 +174,17 @@ void RenderView::mapAbsoluteToLocalPoint(bool fixed, bool useTransforms, Transfo
     }
 }
 
+bool RenderView::requiresColumns(int desiredColumnCount) const
+{
+    if (m_frameView) {
+        if (Frame* frame = m_frameView->frame()) {
+            if (Page* page = frame->page())
+                return frame == page->mainFrame() && page->pagination().mode != Page::Pagination::Unpaginated;
+        }
+    }
+    return RenderBlock::requiresColumns(desiredColumnCount);
+}
+
 void RenderView::paint(PaintInfo& paintInfo, const LayoutPoint& paintOffset)
 {
     // If we ever require layout but receive a paint anyway, something has gone horribly wrong.
@@ -680,6 +692,18 @@ IntRect RenderView::unscaledDocumentRect() const
     return overflowRect;
 }
 
+LayoutRect RenderView::backgroundRect() const
+{
+    if (!hasColumns())
+        return unscaledDocumentRect();
+
+    ColumnInfo* columnInfo = this->columnInfo();
+    LayoutRect backgroundRect(0, 0, columnInfo->desiredColumnWidth(), columnInfo->columnHeight() * columnInfo->columnCount());
+    if (!isHorizontalWritingMode())
+        backgroundRect = backgroundRect.transposedRect();
+    return backgroundRect;
+}
+
 IntRect RenderView::documentRect() const
 {
     IntRect overflowRect(unscaledDocumentRect());
index 332a8ee37e17d4b6e71cd3bc5800e2d63331ae98..7e0b36f8fe744a1c02444fb299edcfccd3175637 100644 (file)
@@ -167,6 +167,7 @@ public:
 #endif
 
     IntRect unscaledDocumentRect() const;
+    LayoutRect backgroundRect() const;
 
     IntRect documentRect() const;
 
@@ -190,6 +191,7 @@ public:
 protected:
     virtual void mapLocalToContainer(RenderBoxModelObject* repaintContainer, bool useTransforms, bool fixed, TransformState&, bool* wasFixed = 0) const;
     virtual void mapAbsoluteToLocalPoint(bool fixed, bool useTransforms, TransformState&) const;
+    virtual bool requiresColumns(int desiredColumnCount) const OVERRIDE;
 
 private:
     bool shouldRepaint(const IntRect& r) const;
index cae6e8eb715942af38b6c13a4c7cc64d2e882d0c..7598c5aeda2428c48755f24ea25747a9873292bd 100644 (file)
@@ -376,6 +376,30 @@ void Internals::setScrollViewPosition(Document* document, long x, long y, Except
     frameView->setConstrainsScrollingToContentEdge(constrainsScrollingToContentEdgeOldValue);
 }
 
+void Internals::setPagination(Document* document, const String& mode, int gap, ExceptionCode& ec)
+{
+    if (!document || !document->page()) {
+        ec = INVALID_ACCESS_ERR;
+        return;
+    }
+
+    Page::Pagination pagination;
+    if (mode == "Unpaginated")
+        pagination.mode = Page::Pagination::Unpaginated;
+    else if (mode == "HorizontallyPaginated")
+        pagination.mode = Page::Pagination::HorizontallyPaginated;
+    else if (mode == "VerticallyPaginated")
+        pagination.mode = Page::Pagination::VerticallyPaginated;
+    else {
+        ec = SYNTAX_ERR;
+        return;
+    }
+
+    pagination.gap = gap;
+
+    document->page()->setPagination(pagination);
+}
+
 void Internals::reset(Document* document)
 {
     if (!document || !document->settings())
@@ -390,6 +414,9 @@ void Internals::reset(Document* document)
         document->settings()->setPasswordEchoEnabled(passwordEchoEnabledBackup);
         passwordEchoEnabledBackedUp = false;
     }
+
+    if (Page* page = document->page())
+        page->setPagination(Page::Pagination());
 }
 
 bool Internals::wasLastChangeUserEdit(Element* textField, ExceptionCode& ec)
index 5dfc112db5fd49ff8639226e0b87b29009888fc5..3b536f02bddae3007722d0bb62cc21176e1e9ada 100644 (file)
@@ -89,6 +89,8 @@ public:
 
     void setScrollViewPosition(Document*, long x, long y, ExceptionCode&);
 
+    void setPagination(Document*, const String& mode, int gap, ExceptionCode&);
+
     bool wasLastChangeUserEdit(Element* textField, ExceptionCode&);
     String suggestedValue(Element* inputElement, ExceptionCode&);
     void setSuggestedValue(Element* inputElement, const String&, ExceptionCode&);
index 3db6508da17ca9d1eec38ea0df3a2b1d7324dd0a..b69e19af57a066c3d37f92ae349d30443b32f9af 100644 (file)
@@ -62,6 +62,8 @@ module window {
 
         void setScrollViewPosition(in Document document, in long x, in long y) raises(DOMException);
 
+        void setPagination(in Document document, in DOMString mode, in long gap) raises(DOMException);
+
         boolean wasLastChangeUserEdit(in Element textField) raises (DOMException);
         DOMString suggestedValue(in Element inputElement) raises (DOMException);
         void setSuggestedValue(in Element inputElement, in DOMString value) raises (DOMException);
index 2f86cdbd35cb5da5ea47f1293412277c29ac5083..e81c1db245242f9617b22460a0c5cf464368557c 100644 (file)
@@ -1,3 +1,10 @@
+2011-11-08  Dan Bernstein  <mitz@apple.com>
+
+        <rdar://problem/10262225> Allow RenderView to have columns
+        https://bugs.webkit.org/show_bug.cgi?id=71840
+
+        * win/WebKit2.def: Export Page::setPagination() for WebCoreTestSupport.
+
 2011-11-08  Jon Lee  <jonlee@apple.com>
 
         [WK2] Expose acceptMIMETypes for file inputs
index 17693056489bbae657507b9d51a11a56676be121..d9866bf7339b8e2d05bf95bd9ede80c94fdcb7bd 100644 (file)
@@ -169,6 +169,7 @@ EXPORTS
         ?removeShadowRoot@Element@WebCore@@QAEXXZ
         ?scrollElementToRect@FrameView@WebCore@@QAEXPAVElement@2@ABVIntRect@2@@Z
         ?setDOMException@WebCore@@YAXPAVExecState@JSC@@H@Z
+        ?setPagination@Page@WebCore@@QAEXABUPagination@12@@Z
         ?setResourcesDataSizeLimitsFromInternals@InspectorController@WebCore@@QAEXHH@Z
         ?setScrollbarsSuppressed@ScrollView@WebCore@@QAEX_N0@Z
         ?setScrollOffsetFromInternals@ScrollableArea@WebCore@@QAEXABVIntPoint@2@@Z