summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrobert@webkit.org <robert@webkit.org@bbb929c8-8fbe-4397-9dbb-9b2b20218538>2012-01-01 15:12:55 +0000
committerrobert@webkit.org <robert@webkit.org@bbb929c8-8fbe-4397-9dbb-9b2b20218538>2012-01-01 15:12:55 +0000
commit0bd69547db1d2f7f68b6b43e614aeead2ab20844 (patch)
tree02261a06cf3e6fd1291e505559417070a33b5451
parentebc212a007d9abfb443b6923192142f61e584f73 (diff)
downloadchromium_src-0bd69547db1d2f7f68b6b43e614aeead2ab20844.zip
chromium_src-0bd69547db1d2f7f68b6b43e614aeead2ab20844.tar.gz
chromium_src-0bd69547db1d2f7f68b6b43e614aeead2ab20844.tar.bz2
CSS 2.1 failure: border-collapse-offset-002.htm fails
https://bugs.webkit.org/show_bug.cgi?id=71705 Reviewed by Julien Chaffraix. Source/WebCore: Tests: css2.1/20110323/border-collapse-offset-002-expected.html fast/css/caption-width-absolute-position-offset-top.htm fast/css/caption-width-absolute-position.htm fast/css/caption-width-fixed-position-offset-top.htm fast/css/caption-width-fixed-position.htm fast/css/caption-width-relative-position-offset-top.htm fast/css/caption-width-relative-position.htm Table captions are implemented as children of the table but have a special requirement to expand to the full width of the table rather than just the 'available' width, i.e. the full width minus padding and borders. To accomodate this create a RenderTableCaption object that reimplements containingBlockLogicalWidthForContent() to return the full width of the containing block (i.e. the table) rather than the available width. * CMakeLists.txt: Add RenderTableCaption.[cpp|h] * GNUmakefile.list.am: Add RenderTableCaption.[cpp|h] * Target.pri: Add RenderTableCaption.[cpp|h] * WebCore.gypi: Add RenderTableCaption.[cpp|h] * WebCore.vcproj/WebCore.vcproj: Add RenderTableCaption.[cpp|h] * WebCore.xcodeproj/project.pbxproj: Add RenderTableCaption.[cpp|h] * rendering/RenderBlock.cpp: (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): Use RenderTableCaption * rendering/RenderObject.cpp: (WebCore::RenderObject::createObject): Add RenderTableCaption.[cpp|h] (WebCore::RenderObject::addChild): ditto * rendering/RenderObject.h: (WebCore::RenderObject::isTableCaption): * rendering/RenderTable.cpp: (WebCore::RenderTable::addChild): * rendering/RenderTable.h: * rendering/RenderTableCaption.cpp: Added. (WebCore::RenderTableCaption::RenderTableCaption): Implement RenderTableCaption (WebCore::RenderTableCaption::~RenderTableCaption): (WebCore::RenderTableCaption::containingBlockLogicalWidthForContent): Return the containing block's full width rather than it's available width. * rendering/RenderTableCaption.h: Added. (WebCore::RenderTableCaption::isTableCaption): (WebCore::toRenderTableCaption): * rendering/RenderingAllInOne.cpp: LayoutTests: Table captions now use the width of the table rather than the width of the table minus the borders. This allows captions to center accurately but unfortunately a lot of mozilla table tests need to be rebaselined as many of them use captions for explaining the purpose of individual test files! Add border-collapse-offset-002.htm which now renders correctly. * css2.1/20110323/border-collapse-offset-002-expected.html: Added. * css2.1/20110323/border-collapse-offset-002.htm: Added. * fast/css/caption-width-absolute-position-expected.png: Added. * fast/css/caption-width-absolute-position-expected.txt: Added. * fast/css/caption-width-absolute-position-offset-top-expected.png: Added. * fast/css/caption-width-absolute-position-offset-top-expected.txt: Added. * fast/css/caption-width-absolute-position-offset-top.htm: Added. * fast/css/caption-width-absolute-position.htm: Added. * fast/css/caption-width-fixed-position-expected.png: Added. * fast/css/caption-width-fixed-position-expected.txt: Added. * fast/css/caption-width-fixed-position-offset-top-expected.png: Added. * fast/css/caption-width-fixed-position-offset-top-expected.txt: Added. * fast/css/caption-width-fixed-position-offset-top.htm: Added. * fast/css/caption-width-fixed-position.htm: Added. * fast/css/caption-width-relative-position-expected.png: Added. * fast/css/caption-width-relative-position-expected.txt: Added. * fast/css/caption-width-relative-position-offset-top-expected.png: Added. * fast/css/caption-width-relative-position-offset-top-expected.txt: Added. * fast/css/caption-width-relative-position-offset-top.htm: Added. * fast/css/caption-width-relative-position.htm: Added. * platform/chromium/test_expectations.txt: Suppress affected table tests until rebaselined. * platform/gtk/test_expectations.txt: ditto * platform/mac/test_expectations.txt: ditto * platform/qt/test_expectations.txt: ditto * platform/win/test_expectations.txt: ditto git-svn-id: svn://svn.chromium.org/blink/trunk@103875 bbb929c8-8fbe-4397-9dbb-9b2b20218538
-rw-r--r--third_party/WebKit/LayoutTests/ChangeLog40
-rw-r--r--third_party/WebKit/LayoutTests/css2.1/20110323/border-collapse-offset-002-expected.html18
-rw-r--r--third_party/WebKit/LayoutTests/css2.1/20110323/border-collapse-offset-002.htm23
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-expected.txt16
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-offset-top-expected.txt16
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-offset-top.htm17
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position.htm17
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-expected.txt16
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-offset-top-expected.txt16
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-offset-top.htm17
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position.htm17
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-expected.txt13
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-offset-top-expected.txt13
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-offset-top.htm17
-rw-r--r--third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position.htm17
-rw-r--r--third_party/WebKit/LayoutTests/platform/chromium/test_expectations.txt103
-rw-r--r--third_party/WebKit/LayoutTests/platform/gtk/test_expectations.txt104
-rw-r--r--third_party/WebKit/LayoutTests/platform/mac/test_expectations.txt103
-rw-r--r--third_party/WebKit/LayoutTests/platform/qt/test_expectations.txt96
-rw-r--r--third_party/WebKit/LayoutTests/platform/win/test_expectations.txt103
-rw-r--r--third_party/WebKit/Source/WebCore/CMakeLists.txt1
-rw-r--r--third_party/WebKit/Source/WebCore/ChangeLog48
-rw-r--r--third_party/WebKit/Source/WebCore/GNUmakefile.list.am2
-rw-r--r--third_party/WebKit/Source/WebCore/Target.pri2
-rw-r--r--third_party/WebKit/Source/WebCore/WebCore.gypi2
-rwxr-xr-xthird_party/WebKit/Source/WebCore/WebCore.vcproj/WebCore.vcproj56
-rw-r--r--third_party/WebKit/Source/WebCore/WebCore.xcodeproj/project.pbxproj8
-rwxr-xr-xthird_party/WebKit/Source/WebCore/rendering/RenderBlock.cpp2
-rwxr-xr-xthird_party/WebKit/Source/WebCore/rendering/RenderObject.cpp5
-rw-r--r--third_party/WebKit/Source/WebCore/rendering/RenderObject.h1
-rw-r--r--third_party/WebKit/Source/WebCore/rendering/RenderTable.cpp9
-rw-r--r--third_party/WebKit/Source/WebCore/rendering/RenderTable.h3
-rw-r--r--third_party/WebKit/Source/WebCore/rendering/RenderTableCaption.cpp40
-rw-r--r--third_party/WebKit/Source/WebCore/rendering/RenderTableCaption.h54
-rw-r--r--third_party/WebKit/Source/WebCore/rendering/RenderingAllInOne.cpp1
35 files changed, 1006 insertions, 10 deletions
diff --git a/third_party/WebKit/LayoutTests/ChangeLog b/third_party/WebKit/LayoutTests/ChangeLog
index ffc562d..070c5cd 100644
--- a/third_party/WebKit/LayoutTests/ChangeLog
+++ b/third_party/WebKit/LayoutTests/ChangeLog
@@ -1,3 +1,43 @@
+2011-12-20 Robert Hogan <robert@webkit.org>
+
+ CSS 2.1 failure: border-collapse-offset-002.htm fails
+ https://bugs.webkit.org/show_bug.cgi?id=71705
+
+ Reviewed by Julien Chaffraix.
+
+ Table captions now use the width of the table rather than the width of the table minus
+ the borders. This allows captions to center accurately but unfortunately a lot of mozilla
+ table tests need to be rebaselined as many of them use captions for explaining the purpose
+ of individual test files!
+
+ Add border-collapse-offset-002.htm which now renders correctly.
+
+ * css2.1/20110323/border-collapse-offset-002-expected.html: Added.
+ * css2.1/20110323/border-collapse-offset-002.htm: Added.
+ * fast/css/caption-width-absolute-position-expected.png: Added.
+ * fast/css/caption-width-absolute-position-expected.txt: Added.
+ * fast/css/caption-width-absolute-position-offset-top-expected.png: Added.
+ * fast/css/caption-width-absolute-position-offset-top-expected.txt: Added.
+ * fast/css/caption-width-absolute-position-offset-top.htm: Added.
+ * fast/css/caption-width-absolute-position.htm: Added.
+ * fast/css/caption-width-fixed-position-expected.png: Added.
+ * fast/css/caption-width-fixed-position-expected.txt: Added.
+ * fast/css/caption-width-fixed-position-offset-top-expected.png: Added.
+ * fast/css/caption-width-fixed-position-offset-top-expected.txt: Added.
+ * fast/css/caption-width-fixed-position-offset-top.htm: Added.
+ * fast/css/caption-width-fixed-position.htm: Added.
+ * fast/css/caption-width-relative-position-expected.png: Added.
+ * fast/css/caption-width-relative-position-expected.txt: Added.
+ * fast/css/caption-width-relative-position-offset-top-expected.png: Added.
+ * fast/css/caption-width-relative-position-offset-top-expected.txt: Added.
+ * fast/css/caption-width-relative-position-offset-top.htm: Added.
+ * fast/css/caption-width-relative-position.htm: Added.
+ * platform/chromium/test_expectations.txt: Suppress affected table tests until rebaselined.
+ * platform/gtk/test_expectations.txt: ditto
+ * platform/mac/test_expectations.txt: ditto
+ * platform/qt/test_expectations.txt: ditto
+ * platform/win/test_expectations.txt: ditto
+
2012-01-01 Andreas Kling <awesomekling@apple.com>
Make HTMLCollections play nice after their base node is gone.
diff --git a/third_party/WebKit/LayoutTests/css2.1/20110323/border-collapse-offset-002-expected.html b/third_party/WebKit/LayoutTests/css2.1/20110323/border-collapse-offset-002-expected.html
new file mode 100644
index 0000000..df1886b
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/css2.1/20110323/border-collapse-offset-002-expected.html
@@ -0,0 +1,18 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html><head>
+ <title>CSS Test: Reference Result</title>
+<style type="text/css">
+td {width: 100px; text-align:center;}
+</style>
+</head>
+
+<body>
+
+<table style="border-collapse:none; border-spacing:0px">
+ <tbody>
+ <tr><td style="border:solid 4px green; height:20px; padding:0px;">caption</td></tr>
+ <tr><td style="border:solid 4px orange; height:30px">cell 1</td></tr>
+ </tbody>
+</table>
+
+</body></html> \ No newline at end of file
diff --git a/third_party/WebKit/LayoutTests/css2.1/20110323/border-collapse-offset-002.htm b/third_party/WebKit/LayoutTests/css2.1/20110323/border-collapse-offset-002.htm
new file mode 100644
index 0000000..c4f753e
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/css2.1/20110323/border-collapse-offset-002.htm
@@ -0,0 +1,23 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html><head>
+ <title>CSS Test: border collapse</title>
+ <link rel="author" title="Bernd Mielke" href="mailto:bmlk@gmx.de">
+ <link rel="help" href="http://www.w3.org/TR/CSS21/tables.html#collapsing-borders">
+ <link rel="match" href="border-collapse-offset-002-ref.htm">
+ <meta name="flags" content="">
+<style type="text/css">
+td {width: 100px; text-align:center}
+caption {border:solid 4px green}
+
+</style>
+</head>
+
+<body>
+
+<table style="border-collapse:collapse;"><caption>caption</caption>
+ <tbody><tr><td style="border:solid 4px orange; height:30px">cell 1</td></tr>
+</tbody></table>
+
+
+
+</body></html> \ No newline at end of file
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-expected.txt b/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-expected.txt
new file mode 100644
index 0000000..7f2c129
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-expected.txt
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+ RenderView at (0,0) size 800x600
+layer at (0,0) size 800x56
+ RenderBlock {HTML} at (0,0) size 800x56
+ RenderBody {BODY} at (8,8) size 784x40
+ RenderTable {TABLE} at (0,0) size 106x40 [border: none]
+ RenderTableSection (anonymous) at (0,0) size 106x2
+ RenderTableRow (anonymous) at (0,0) size 106x2
+ RenderTableCell (anonymous) at (0,0) size 106x2 [border:] [r=0 c=0 rs=1 cs=1]
+ RenderTableSection {TBODY} at (0,2) size 106x36
+ RenderTableRow {TR} at (0,0) size 106x36
+ RenderTableCell {TD} at (0,15) size 106x6 [border: (2px solid #FFA500)] [r=0 c=0 rs=1 cs=1]
+layer at (8,8) size 56x20
+ RenderBlock (positioned) {CAPTION} at (8,8) size 56x20 [border: (4px solid #008000)]
+ RenderText {#text} at (4,4) size 48x12
+ text run at (4,4) width 48: "xxxx"
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-offset-top-expected.txt b/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-offset-top-expected.txt
new file mode 100644
index 0000000..0bcae54
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-offset-top-expected.txt
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+ RenderView at (0,0) size 800x600
+layer at (0,0) size 800x56
+ RenderBlock {HTML} at (0,0) size 800x56
+ RenderBody {BODY} at (8,8) size 784x40
+ RenderTable {TABLE} at (0,0) size 106x40 [border: none]
+ RenderTableSection (anonymous) at (0,0) size 106x2
+ RenderTableRow (anonymous) at (0,0) size 106x2
+ RenderTableCell (anonymous) at (0,0) size 106x2 [border:] [r=0 c=0 rs=1 cs=1]
+ RenderTableSection {TBODY} at (0,2) size 106x36
+ RenderTableRow {TR} at (0,0) size 106x36
+ RenderTableCell {TD} at (0,15) size 106x6 [border: (2px solid #FFA500)] [r=0 c=0 rs=1 cs=1]
+layer at (8,100) size 56x20
+ RenderBlock (positioned) {CAPTION} at (8,100) size 56x20 [border: (4px solid #008000)]
+ RenderText {#text} at (4,4) size 48x12
+ text run at (4,4) width 48: "xxxx"
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-offset-top.htm b/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-offset-top.htm
new file mode 100644
index 0000000..c1daa5e
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position-offset-top.htm
@@ -0,0 +1,17 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html><head>
+<style type="text/css">
+td {width: 100px; text-align:center}
+caption {border:solid 4px green}
+
+</style>
+</head>
+
+<body>
+
+<!--A rectangle with a green border and black ahem text inside should be placed 70px below the orange rectangle. It should be narrower than the orange rectangle.-->
+<table style="border-collapse:collapse; font: 12px Ahem;"><caption style="position:absolute; top:100px;">xxxx</caption>
+ <tbody><tr><td style="border:solid 4px orange; height:30px"></td></tr>
+</tbody></table>
+
+</body></html> \ No newline at end of file
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position.htm b/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position.htm
new file mode 100644
index 0000000..818a0d7
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-absolute-position.htm
@@ -0,0 +1,17 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html><head>
+<style type="text/css">
+td {width: 100px; text-align:center}
+caption {border:solid 4px green}
+
+</style>
+</head>
+
+<body>
+
+<!--A rectangle with a green border and black ahem text inside should be placed at the top left of the orange rectangle. It should be narrower than the orange rectangle.-->
+<table style="border-collapse:collapse; font: 12px Ahem;"><caption style="position:absolute;">xxxx</caption>
+ <tbody><tr><td style="border:solid 4px orange; height:30px"></td></tr>
+</tbody></table>
+
+</body></html> \ No newline at end of file
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-expected.txt b/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-expected.txt
new file mode 100644
index 0000000..7f2c129
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-expected.txt
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+ RenderView at (0,0) size 800x600
+layer at (0,0) size 800x56
+ RenderBlock {HTML} at (0,0) size 800x56
+ RenderBody {BODY} at (8,8) size 784x40
+ RenderTable {TABLE} at (0,0) size 106x40 [border: none]
+ RenderTableSection (anonymous) at (0,0) size 106x2
+ RenderTableRow (anonymous) at (0,0) size 106x2
+ RenderTableCell (anonymous) at (0,0) size 106x2 [border:] [r=0 c=0 rs=1 cs=1]
+ RenderTableSection {TBODY} at (0,2) size 106x36
+ RenderTableRow {TR} at (0,0) size 106x36
+ RenderTableCell {TD} at (0,15) size 106x6 [border: (2px solid #FFA500)] [r=0 c=0 rs=1 cs=1]
+layer at (8,8) size 56x20
+ RenderBlock (positioned) {CAPTION} at (8,8) size 56x20 [border: (4px solid #008000)]
+ RenderText {#text} at (4,4) size 48x12
+ text run at (4,4) width 48: "xxxx"
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-offset-top-expected.txt b/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-offset-top-expected.txt
new file mode 100644
index 0000000..0bcae54
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-offset-top-expected.txt
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+ RenderView at (0,0) size 800x600
+layer at (0,0) size 800x56
+ RenderBlock {HTML} at (0,0) size 800x56
+ RenderBody {BODY} at (8,8) size 784x40
+ RenderTable {TABLE} at (0,0) size 106x40 [border: none]
+ RenderTableSection (anonymous) at (0,0) size 106x2
+ RenderTableRow (anonymous) at (0,0) size 106x2
+ RenderTableCell (anonymous) at (0,0) size 106x2 [border:] [r=0 c=0 rs=1 cs=1]
+ RenderTableSection {TBODY} at (0,2) size 106x36
+ RenderTableRow {TR} at (0,0) size 106x36
+ RenderTableCell {TD} at (0,15) size 106x6 [border: (2px solid #FFA500)] [r=0 c=0 rs=1 cs=1]
+layer at (8,100) size 56x20
+ RenderBlock (positioned) {CAPTION} at (8,100) size 56x20 [border: (4px solid #008000)]
+ RenderText {#text} at (4,4) size 48x12
+ text run at (4,4) width 48: "xxxx"
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-offset-top.htm b/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-offset-top.htm
new file mode 100644
index 0000000..b3ab2ef
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position-offset-top.htm
@@ -0,0 +1,17 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html><head>
+<style type="text/css">
+td {width: 100px; text-align:center}
+caption {border:solid 4px green}
+
+</style>
+</head>
+
+<body>
+
+<!--A rectangle with a green border and black ahem text inside should be placed 70px below the orange rectangle. It should be narrower than the orange rectangle.-->
+<table style="border-collapse:collapse; font: 12px Ahem;"><caption style="position:fixed; top:100px;">xxxx</caption>
+ <tbody><tr><td style="border:solid 4px orange; height:30px"></td></tr>
+</tbody></table>
+
+</body></html> \ No newline at end of file
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position.htm b/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position.htm
new file mode 100644
index 0000000..50cbc6a
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-fixed-position.htm
@@ -0,0 +1,17 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html><head>
+<style type="text/css">
+td {width: 100px; text-align:center}
+caption {border:solid 4px green}
+
+</style>
+</head>
+
+<body>
+
+<!--A rectangle with a green border and black ahem text inside should be placed at the top left of the orange rectangle. It should be narrower than the orange rectangle.-->
+<table style="border-collapse:collapse; font: 12px Ahem;"><caption style="position:fixed;">xxxx</caption>
+ <tbody><tr><td style="border:solid 4px orange; height:30px"></td></tr>
+</tbody></table>
+
+</body></html> \ No newline at end of file
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-expected.txt b/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-expected.txt
new file mode 100644
index 0000000..f74676f
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-expected.txt
@@ -0,0 +1,13 @@
+layer at (0,0) size 800x600
+ RenderView at (0,0) size 800x600
+layer at (0,0) size 800x76
+ RenderBlock {HTML} at (0,0) size 800x76
+ RenderBody {BODY} at (8,8) size 784x60
+ RenderTable {TABLE} at (0,0) size 110x60 [border: (2px none #808080)]
+ RenderTableSection {TBODY} at (2,22) size 106x36
+ RenderTableRow {TR} at (0,0) size 106x36
+ RenderTableCell {TD} at (0,15) size 106x6 [border: (2px solid #FFA500)] [r=0 c=0 rs=1 cs=1]
+layer at (8,8) size 110x20
+ RenderBlock (relative positioned) {CAPTION} at (0,0) size 110x20 [border: (4px solid #008000)]
+ RenderText {#text} at (31,4) size 48x12
+ text run at (31,4) width 48: "xxxx"
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-offset-top-expected.txt b/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-offset-top-expected.txt
new file mode 100644
index 0000000..be1cb13
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-offset-top-expected.txt
@@ -0,0 +1,13 @@
+layer at (0,0) size 800x600
+ RenderView at (0,0) size 800x600
+layer at (0,0) size 800x76
+ RenderBlock {HTML} at (0,0) size 800x76
+ RenderBody {BODY} at (8,8) size 784x60
+ RenderTable {TABLE} at (0,0) size 110x60 [border: (2px none #808080)]
+ RenderTableSection {TBODY} at (2,22) size 106x36
+ RenderTableRow {TR} at (0,0) size 106x36
+ RenderTableCell {TD} at (0,15) size 106x6 [border: (2px solid #FFA500)] [r=0 c=0 rs=1 cs=1]
+layer at (8,108) size 110x20
+ RenderBlock (relative positioned) {CAPTION} at (0,0) size 110x20 [border: (4px solid #008000)]
+ RenderText {#text} at (31,4) size 48x12
+ text run at (31,4) width 48: "xxxx"
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-offset-top.htm b/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-offset-top.htm
new file mode 100644
index 0000000..aaea810
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position-offset-top.htm
@@ -0,0 +1,17 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html><head>
+<style type="text/css">
+td {width: 100px; text-align:center}
+caption {border:solid 4px green}
+
+</style>
+</head>
+
+<body>
+
+<!--A rectangle with a green border and black ahem text inside should be 70px below the orange rectangle. It should be the same width as the orange rectangle.-->
+<table style="border-collapse:collapse; font: 12px Ahem;"><caption style="position:relative; top:100px;">xxxx</caption>
+ <tbody><tr><td style="border:solid 4px orange; height:30px"></td></tr>
+</tbody></table>
+
+</body></html> \ No newline at end of file
diff --git a/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position.htm b/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position.htm
new file mode 100644
index 0000000..09a01f3
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/fast/css/caption-width-relative-position.htm
@@ -0,0 +1,17 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
+<html><head>
+<style type="text/css">
+td {width: 100px; text-align:center}
+caption {border:solid 4px green}
+
+</style>
+</head>
+
+<body>
+
+<!--A rectangle with a green border and black ahem text inside should be above the orange rectangle. It should be the same width as the orange rectangle.-->
+<table style="border-collapse:collapse; font: 12px Ahem;"><caption style="position:relative;">xxxx</caption>
+ <tbody><tr><td style="border:solid 4px orange; height:30px"></td></tr>
+</tbody></table>
+
+</body></html> \ No newline at end of file
diff --git a/third_party/WebKit/LayoutTests/platform/chromium/test_expectations.txt b/third_party/WebKit/LayoutTests/platform/chromium/test_expectations.txt
index d6cd631..7d7af0e 100644
--- a/third_party/WebKit/LayoutTests/platform/chromium/test_expectations.txt
+++ b/third_party/WebKit/LayoutTests/platform/chromium/test_expectations.txt
@@ -3904,3 +3904,106 @@ BUGWK75367 : svg/css/composite-shadow-with-opacity.html = PASS TEXT
// Crashes due to an OOM error on V8.
BUGCR108832 SKIP : fast/js/array-splice.html = CRASH
+
+// Rebaseline after bug 71705. All differences are due to the fact that table captions now
+// expand to the full width of the table.
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug1163-1.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug119786.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug1302.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug222846.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug29058-3.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug48028-1.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug48028-2.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug5838.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug6304.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug8381.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/core/captions.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/backgr_layers-opacity.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/backgr_position-table.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/backgr_simple-table-cell.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/backgr_simple-table-column-group.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/backgr_simple-table-column.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/backgr_simple-table-row-group.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/backgr_simple-table-row.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/backgr_simple-table.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/table_frame_border.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/table_frame_box.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/table_rules_all.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/table_rules_none.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/tables_caption_align_bot.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/tables_caption_align_top.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/x_caption_align_bottom.xml = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/x_caption_align_top.xml = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/x_caption_class.xml = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/x_caption_id.xml = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/marvin/x_caption_style.xml = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug10140.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug10216.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug104898.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug106966.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug14007-2.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug29058-2.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-11.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-12.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-13.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-14.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-16.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-17.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-3.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-4.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-5.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-6.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug3166-9.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/bugs/bug91057.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/core/captions1.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/core/captions2.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/core/captions3.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_border-table-cell.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_border-table-column-group.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_border-table-column.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_border-table-quirks.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_border-table-row-group.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_border-table-row.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_border-table.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_fixed-bg.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_layers-hide.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_position-table-cell.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_position-table-column-group.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_position-table-column.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_position-table-row-group.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_position-table-row.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_frame_vsides.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_caption.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_caption_left.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_caption_right.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_caption_top.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_rules_cols.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_rules_rows.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/tables_caption_align_left.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/tables_caption_align_right.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/x_caption_align_left.xml = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/x_caption_align_right.xml = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/other/test4.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/bugs/bug29157.html = TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/other/wa_table_thtd_rowspan.html = TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla/other/wa_table_tr_align.html = TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/backgr_layers-show.html = TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_frame_lhs.html = TEXT
+BUGWK74888 MAC WIN LINUX : tables/mozilla_expected_failures/marvin/table_frame_rhs.html = TEXT
+BUGWK74888 MAC WIN LINUX : fast/css/bidi-override-in-anonymous-block.html = TEXT
+BUGWK74888 MAC WIN LINUX : fast/dom/HTMLTableElement/colSpan.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : fast/dom/HTMLTableElement/createCaption.html = IMAGE+TEXT
+BUGWK74888 MAC WIN LINUX : fast/repaint/table-section-repaint.html = TEXT
diff --git a/third_party/WebKit/LayoutTests/platform/gtk/test_expectations.txt b/third_party/WebKit/LayoutTests/platform/gtk/test_expectations.txt
index 992edc3..bf52de3 100644
--- a/third_party/WebKit/LayoutTests/platform/gtk/test_expectations.txt
+++ b/third_party/WebKit/LayoutTests/platform/gtk/test_expectations.txt
@@ -69,7 +69,6 @@ BUGWK61932 : jquery/manipulation.html = PASS TEXT
BUGWK37623 : scrollbars/scrollbar-crash-on-refresh.html = PASS TEXT
-BUGWK22770 : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody.html = PASS TEXT
BUGWK59937 : tables/mozilla_expected_failures/bugs/bug85016.html = PASS TEXT
BUGWK71776 : fast/forms/password-placeholder-text-security.html = PASS TEXT
@@ -147,3 +146,106 @@ BUGWK74432 : css2.1/t170602-bdr-conflct-w-88-d.html = IMAGE
BUGWK74432 : css2.1/t170602-bdr-conflct-w-89-d.html = IMAGE
BUGWK74432 : fast/borders/border-antialiasing.html = IMAGE
+// Rebaseline after bug 71705. All differences are due to the fact that table captions now
+// expand to the full width of the table.
+BUGWK74888 : tables/mozilla/bugs/bug1163-1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug119786.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug1302.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug222846.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug29058-3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug48028-1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug48028-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug5838.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug6304.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug8381.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/core/captions.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_layers-opacity.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_position-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_frame_border.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_frame_box.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_rules_all.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_rules_none.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/tables_caption_align_bot.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/tables_caption_align_top.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_align_bottom.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_align_top.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_class.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_id.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_style.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug10140.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug10216.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug104898.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug106966.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug14007-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug29058-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-11.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-12.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-13.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-14.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-16.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-17.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-4.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-5.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-6.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-9.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug91057.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-quirks.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_fixed-bg.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_layers-hide.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_vsides.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_left.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_right.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_top.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row.html = IMAGE+TEXT
+//BUGWK22770 : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody.html = PASS TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_rules_cols.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_rules_rows.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/tables_caption_align_left.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/tables_caption_align_right.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/x_caption_align_left.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/x_caption_align_right.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/other/test4.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug29157.html = TEXT
+BUGWK74888 : tables/mozilla/other/wa_table_thtd_rowspan.html = TEXT
+BUGWK74888 : tables/mozilla/other/wa_table_tr_align.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_layers-show.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_lhs.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_rhs.html = TEXT
+BUGWK74888 : fast/css/bidi-override-in-anonymous-block.html = TEXT
+BUGWK74888 : fast/dom/HTMLTableElement/colSpan.html = IMAGE+TEXT
+BUGWK74888 : fast/dom/HTMLTableElement/createCaption.html = IMAGE+TEXT
+BUGWK74888 : fast/repaint/table-section-repaint.html = TEXT
diff --git a/third_party/WebKit/LayoutTests/platform/mac/test_expectations.txt b/third_party/WebKit/LayoutTests/platform/mac/test_expectations.txt
index 6988c74..5b9b1f1 100644
--- a/third_party/WebKit/LayoutTests/platform/mac/test_expectations.txt
+++ b/third_party/WebKit/LayoutTests/platform/mac/test_expectations.txt
@@ -91,4 +91,105 @@ BUGWK74432 : css2.1/t170602-bdr-conflct-w-88-d.html = IMAGE
BUGWK74432 : css2.1/t170602-bdr-conflct-w-89-d.html = IMAGE
BUGWK74432 : fast/borders/border-antialiasing.html = IMAGE
-BUGWK75235 : media/video-scales-in-media-document.html = TEXT
+// Rebaseline after bug 71705. All differences are due to the fact that table captions now
+// expand to the full width of the table.
+BUGWK74888 : tables/mozilla/bugs/bug1163-1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug119786.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug1302.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug222846.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug29058-3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug48028-1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug48028-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug5838.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug6304.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug8381.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/core/captions.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_layers-opacity.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_position-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_frame_border.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_frame_box.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_rules_all.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_rules_none.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/tables_caption_align_bot.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/tables_caption_align_top.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_align_bottom.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_align_top.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_class.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_id.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_style.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug10140.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug10216.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug104898.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug106966.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug14007-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug29058-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-11.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-12.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-13.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-14.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-16.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-17.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-4.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-5.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-6.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-9.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug91057.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-quirks.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_fixed-bg.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_layers-hide.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_vsides.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_left.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_right.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_top.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_rules_cols.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_rules_rows.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/tables_caption_align_left.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/tables_caption_align_right.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/x_caption_align_left.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/x_caption_align_right.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/other/test4.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug29157.html = TEXT
+BUGWK74888 : tables/mozilla/other/wa_table_thtd_rowspan.html = TEXT
+BUGWK74888 : tables/mozilla/other/wa_table_tr_align.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_layers-show.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_lhs.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_rhs.html = TEXT
+BUGWK74888 : fast/css/bidi-override-in-anonymous-block.html = TEXT
+BUGWK74888 : fast/dom/HTMLTableElement/colSpan.html = IMAGE+TEXT
+BUGWK74888 : fast/dom/HTMLTableElement/createCaption.html = IMAGE+TEXT
+BUGWK74888 : fast/repaint/table-section-repaint.html = TEXT
diff --git a/third_party/WebKit/LayoutTests/platform/qt/test_expectations.txt b/third_party/WebKit/LayoutTests/platform/qt/test_expectations.txt
index f20a512..daf28f1 100644
--- a/third_party/WebKit/LayoutTests/platform/qt/test_expectations.txt
+++ b/third_party/WebKit/LayoutTests/platform/qt/test_expectations.txt
@@ -24,3 +24,99 @@ BUGWK74270 : fast/forms/basic-selects.html = FAIL
// The test hits an ASSERT in Debug.
BUGWK68859 DEBUG : fast/dynamic/crash-paint-no-documentElement-renderer.html = CRASH
+
+// Rebaseline after bug 71705. All differences are due to the fact that table captions now
+// expand to the full width of the table.
+BUGWK74888 : tables/mozilla/bugs/bug1163-1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug119786.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug1302.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug222846.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug29058-3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug48028-1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug48028-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug5838.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug6304.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug8381.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/core/captions.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_layers-opacity.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_position-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_frame_border.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_frame_box.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_rules_all.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_rules_none.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/tables_caption_align_bot.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/tables_caption_align_top.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_align_bottom.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_align_top.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_class.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_id.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_style.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug10140.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug10216.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug104898.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug106966.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug14007-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug29058-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-11.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-12.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-13.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-14.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-16.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-17.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-4.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-5.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-6.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-9.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug91057.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-quirks.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_fixed-bg.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_layers-hide.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_vsides.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_rules_cols.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_rules_rows.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/tables_caption_align_left.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/tables_caption_align_right.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/x_caption_align_left.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/x_caption_align_right.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/other/test4.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug29157.html = TEXT
+BUGWK74888 : tables/mozilla/other/wa_table_thtd_rowspan.html = TEXT
+BUGWK74888 : tables/mozilla/other/wa_table_tr_align.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_layers-show.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_lhs.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_rhs.html = TEXT
+BUGWK74888 : fast/css/bidi-override-in-anonymous-block.html = TEXT
+BUGWK74888 : fast/dom/HTMLTableElement/colSpan.html = IMAGE+TEXT
+BUGWK74888 : fast/dom/HTMLTableElement/createCaption.html = IMAGE+TEXT
+BUGWK74888 : fast/repaint/table-section-repaint.html = TEXT
diff --git a/third_party/WebKit/LayoutTests/platform/win/test_expectations.txt b/third_party/WebKit/LayoutTests/platform/win/test_expectations.txt
index 0631390..9aa5e92 100644
--- a/third_party/WebKit/LayoutTests/platform/win/test_expectations.txt
+++ b/third_party/WebKit/LayoutTests/platform/win/test_expectations.txt
@@ -19,3 +19,106 @@ BUGWK74270 : fast/forms/basic-selects.html = FAIL
// The test hits an ASSERT in Debug.
BUGWK68859 DEBUG : fast/dynamic/crash-paint-no-documentElement-renderer.html = CRASH
+
+// Rebaseline after bug 71705. All differences are due to the fact that table captions now
+// expand to the full width of the table.
+BUGWK74888 : tables/mozilla/bugs/bug1163-1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug119786.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug1302.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug222846.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug29058-3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug48028-1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug48028-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug5838.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug6304.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug8381.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/core/captions.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_layers-opacity.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_position-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/backgr_simple-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_frame_border.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_frame_box.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_rules_all.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/table_rules_none.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/tables_caption_align_bot.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/tables_caption_align_top.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_align_bottom.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_align_top.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_class.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_id.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/marvin/x_caption_style.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug10140.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug10216.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug104898.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug106966.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug14007-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug29058-2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-11.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-12.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-13.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-14.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-16.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-17.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-4.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-5.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-6.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug3166-9.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/bugs/bug91057.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions1.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions2.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/core/captions3.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-quirks.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_border-table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_fixed-bg.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_layers-hide.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-column-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-column.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-row-group.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_position-table-row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_vsides.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_bottom.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_left.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_right.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_caption_top.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_dirty_reflow_tbody.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_cell_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_row_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_table_caption.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_overflow_style_reflow_tbody_sibling.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_rules_cols.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_rules_rows.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/tables_caption_align_left.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/tables_caption_align_right.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/x_caption_align_left.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/x_caption_align_right.xml = IMAGE+TEXT
+BUGWK74888 : tables/mozilla_expected_failures/other/test4.html = IMAGE+TEXT
+BUGWK74888 : tables/mozilla/bugs/bug29157.html = TEXT
+BUGWK74888 : tables/mozilla/other/wa_table_thtd_rowspan.html = TEXT
+BUGWK74888 : tables/mozilla/other/wa_table_tr_align.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/backgr_layers-show.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_lhs.html = TEXT
+BUGWK74888 : tables/mozilla_expected_failures/marvin/table_frame_rhs.html = TEXT
+BUGWK74888 : fast/css/bidi-override-in-anonymous-block.html = TEXT
+BUGWK74888 : fast/dom/HTMLTableElement/colSpan.html = IMAGE+TEXT
+BUGWK74888 : fast/dom/HTMLTableElement/createCaption.html = IMAGE+TEXT
+BUGWK74888 : fast/repaint/table-section-repaint.html = TEXT
diff --git a/third_party/WebKit/Source/WebCore/CMakeLists.txt b/third_party/WebKit/Source/WebCore/CMakeLists.txt
index 320a0a4..09d0cdd 100644
--- a/third_party/WebKit/Source/WebCore/CMakeLists.txt
+++ b/third_party/WebKit/Source/WebCore/CMakeLists.txt
@@ -1299,6 +1299,7 @@ SET(WebCore_SOURCES
rendering/RenderSlider.cpp
rendering/RenderSummary.cpp
rendering/RenderTable.cpp
+ rendering/RenderTableCaption.cpp
rendering/RenderTableCell.cpp
rendering/RenderTableCol.cpp
rendering/RenderTableRow.cpp
diff --git a/third_party/WebKit/Source/WebCore/ChangeLog b/third_party/WebKit/Source/WebCore/ChangeLog
index 14255da..86089f1 100644
--- a/third_party/WebKit/Source/WebCore/ChangeLog
+++ b/third_party/WebKit/Source/WebCore/ChangeLog
@@ -1,3 +1,51 @@
+2011-12-20 Robert Hogan <robert@webkit.org>
+
+ CSS 2.1 failure: border-collapse-offset-002.htm fails
+ https://bugs.webkit.org/show_bug.cgi?id=71705
+
+ Reviewed by Julien Chaffraix.
+
+ Tests: css2.1/20110323/border-collapse-offset-002-expected.html
+ fast/css/caption-width-absolute-position-offset-top.htm
+ fast/css/caption-width-absolute-position.htm
+ fast/css/caption-width-fixed-position-offset-top.htm
+ fast/css/caption-width-fixed-position.htm
+ fast/css/caption-width-relative-position-offset-top.htm
+ fast/css/caption-width-relative-position.htm
+
+ Table captions are implemented as children of the table but have a special
+ requirement to expand to the full width of the table rather than just the 'available'
+ width, i.e. the full width minus padding and borders.
+
+ To accomodate this create a RenderTableCaption object that reimplements containingBlockLogicalWidthForContent()
+ to return the full width of the containing block (i.e. the table) rather than the available width.
+
+
+ * CMakeLists.txt: Add RenderTableCaption.[cpp|h]
+ * GNUmakefile.list.am: Add RenderTableCaption.[cpp|h]
+ * Target.pri: Add RenderTableCaption.[cpp|h]
+ * WebCore.gypi: Add RenderTableCaption.[cpp|h]
+ * WebCore.vcproj/WebCore.vcproj: Add RenderTableCaption.[cpp|h]
+ * WebCore.xcodeproj/project.pbxproj: Add RenderTableCaption.[cpp|h]
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks): Use RenderTableCaption
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::createObject): Add RenderTableCaption.[cpp|h]
+ (WebCore::RenderObject::addChild): ditto
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::isTableCaption):
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::addChild):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCaption.cpp: Added.
+ (WebCore::RenderTableCaption::RenderTableCaption): Implement RenderTableCaption
+ (WebCore::RenderTableCaption::~RenderTableCaption):
+ (WebCore::RenderTableCaption::containingBlockLogicalWidthForContent): Return the containing block's full width rather than it's available width.
+ * rendering/RenderTableCaption.h: Added.
+ (WebCore::RenderTableCaption::isTableCaption):
+ (WebCore::toRenderTableCaption):
+ * rendering/RenderingAllInOne.cpp:
+
2012-01-01 Kentaro Hara <haraken@chromium.org>
Unreviewed. Rebaselined run-bindings-tests results.
diff --git a/third_party/WebKit/Source/WebCore/GNUmakefile.list.am b/third_party/WebKit/Source/WebCore/GNUmakefile.list.am
index adabaca..7d20d43 100644
--- a/third_party/WebKit/Source/WebCore/GNUmakefile.list.am
+++ b/third_party/WebKit/Source/WebCore/GNUmakefile.list.am
@@ -3498,6 +3498,8 @@ webcore_sources += \
Source/WebCore/rendering/RenderSlider.h \
Source/WebCore/rendering/RenderSummary.cpp \
Source/WebCore/rendering/RenderSummary.h \
+ Source/WebCore/rendering/RenderTableCaption.cpp \
+ Source/WebCore/rendering/RenderTableCaption.h \
Source/WebCore/rendering/RenderTableCell.cpp \
Source/WebCore/rendering/RenderTableCell.h \
Source/WebCore/rendering/RenderTableCol.cpp \
diff --git a/third_party/WebKit/Source/WebCore/Target.pri b/third_party/WebKit/Source/WebCore/Target.pri
index d8ed58f0..6dd1748 100644
--- a/third_party/WebKit/Source/WebCore/Target.pri
+++ b/third_party/WebKit/Source/WebCore/Target.pri
@@ -1234,6 +1234,7 @@ SOURCES += \
rendering/RenderSlider.cpp \
rendering/RenderSummary.cpp \
rendering/RenderTable.cpp \
+ rendering/RenderTableCaption.cpp \
rendering/RenderTableCell.cpp \
rendering/RenderTableCol.cpp \
rendering/RenderTableRow.cpp \
@@ -2358,6 +2359,7 @@ HEADERS += \
rendering/RenderScrollbarTheme.h \
rendering/RenderSlider.h \
rendering/RenderSummary.h \
+ rendering/RenderTableCaption.h \
rendering/RenderTableCell.h \
rendering/RenderTableCol.h \
rendering/RenderTable.h \
diff --git a/third_party/WebKit/Source/WebCore/WebCore.gypi b/third_party/WebKit/Source/WebCore/WebCore.gypi
index dd48ed1..606d735 100644
--- a/third_party/WebKit/Source/WebCore/WebCore.gypi
+++ b/third_party/WebKit/Source/WebCore/WebCore.gypi
@@ -4744,6 +4744,8 @@
'rendering/RenderSummary.h',
'rendering/RenderTable.cpp',
'rendering/RenderTable.h',
+ 'rendering/RenderTableCaption.cpp',
+ 'rendering/RenderTableCaption.h',
'rendering/RenderTableCell.cpp',
'rendering/RenderTableCell.h',
'rendering/RenderTableCol.cpp',
diff --git a/third_party/WebKit/Source/WebCore/WebCore.vcproj/WebCore.vcproj b/third_party/WebKit/Source/WebCore/WebCore.vcproj/WebCore.vcproj
index 01f59f8..f9ff947 100755
--- a/third_party/WebKit/Source/WebCore/WebCore.vcproj/WebCore.vcproj
+++ b/third_party/WebKit/Source/WebCore/WebCore.vcproj/WebCore.vcproj
@@ -40726,6 +40726,62 @@
>
</File>
<File
+ RelativePath="..\rendering\RenderTableCaption.cpp"
+ >
+ <FileConfiguration
+ Name="Debug|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Release_Cairo_CFLite|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Debug_All|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ <FileConfiguration
+ Name="Production|Win32"
+ ExcludedFromBuild="true"
+ >
+ <Tool
+ Name="VCCLCompilerTool"
+ />
+ </FileConfiguration>
+ </File>
+ <File
+ RelativePath="..\rendering\RenderTableCaption.h"
+ >
+ </File>
+ <File
RelativePath="..\rendering\RenderTableCol.cpp"
>
<FileConfiguration
diff --git a/third_party/WebKit/Source/WebCore/WebCore.xcodeproj/project.pbxproj b/third_party/WebKit/Source/WebCore/WebCore.xcodeproj/project.pbxproj
index ac47d0e..bc4e2f7 100644
--- a/third_party/WebKit/Source/WebCore/WebCore.xcodeproj/project.pbxproj
+++ b/third_party/WebKit/Source/WebCore/WebCore.xcodeproj/project.pbxproj
@@ -1760,6 +1760,8 @@
6EBF0E5512A8929800DB1709 /* WebGLExtension.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EBF0E5312A8929800DB1709 /* WebGLExtension.h */; };
6EBF0E7612A9868800DB1709 /* JSOESTextureFloat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6EBF0E7412A9868800DB1709 /* JSOESTextureFloat.cpp */; };
6EBF0E7712A9868800DB1709 /* JSOESTextureFloat.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EBF0E7512A9868800DB1709 /* JSOESTextureFloat.h */; };
+ 6ED878C4147493F4004C3597 /* RenderTableCaption.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6ED878C2147493F4004C3597 /* RenderTableCaption.cpp */; };
+ 6ED878C5147493F4004C3597 /* RenderTableCaption.h in Headers */ = {isa = PBXBuildFile; fileRef = 6ED878C3147493F4004C3597 /* RenderTableCaption.h */; };
6EE8A77210F803F3005A4A24 /* JSWebGLContextAttributes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6EE8A77010F803F3005A4A24 /* JSWebGLContextAttributes.cpp */; };
6EE8A77310F803F3005A4A24 /* JSWebGLContextAttributes.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EE8A77110F803F3005A4A24 /* JSWebGLContextAttributes.h */; };
7134496D146941B300720312 /* SVGLengthContext.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7134496B146941B300720312 /* SVGLengthContext.cpp */; };
@@ -9053,6 +9055,8 @@
6EBF0E5312A8929800DB1709 /* WebGLExtension.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WebGLExtension.h; path = canvas/WebGLExtension.h; sourceTree = "<group>"; };
6EBF0E7412A9868800DB1709 /* JSOESTextureFloat.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSOESTextureFloat.cpp; sourceTree = "<group>"; };
6EBF0E7512A9868800DB1709 /* JSOESTextureFloat.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSOESTextureFloat.h; sourceTree = "<group>"; };
+ 6ED878C2147493F4004C3597 /* RenderTableCaption.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RenderTableCaption.cpp; sourceTree = "<group>"; };
+ 6ED878C3147493F4004C3597 /* RenderTableCaption.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RenderTableCaption.h; sourceTree = "<group>"; };
6EE8A77010F803F3005A4A24 /* JSWebGLContextAttributes.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSWebGLContextAttributes.cpp; sourceTree = "<group>"; };
6EE8A77110F803F3005A4A24 /* JSWebGLContextAttributes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSWebGLContextAttributes.h; sourceTree = "<group>"; };
7134496B146941B300720312 /* SVGLengthContext.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SVGLengthContext.cpp; sourceTree = "<group>"; };
@@ -21172,6 +21176,8 @@
D302754C12A5FEAB004BD828 /* RenderSummary.h */,
A8DF4AE20980C42C0052981B /* RenderTable.cpp */,
A8DF4AE10980C42C0052981B /* RenderTable.h */,
+ 6ED878C2147493F4004C3597 /* RenderTableCaption.cpp */,
+ 6ED878C3147493F4004C3597 /* RenderTableCaption.h */,
A8DF4AE00980C42C0052981B /* RenderTableCell.cpp */,
A8DF4ADF0980C42C0052981B /* RenderTableCell.h */,
A8DF4ADE0980C42C0052981B /* RenderTableCol.cpp */,
@@ -24967,6 +24973,7 @@
FDB1700614A2BAB200A2B5D9 /* MultiChannelResampler.h in Headers */,
FD00D7A514A3F61900734011 /* SincResampler.h in Headers */,
BCAA487014A052530088FAC4 /* PlatformEventFactory.h in Headers */,
+ 6ED878C5147493F4004C3597 /* RenderTableCaption.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -27872,6 +27879,7 @@
FDB1700514A2BAB200A2B5D9 /* MultiChannelResampler.cpp in Sources */,
FD00D7A414A3F61900734011 /* SincResampler.cpp in Sources */,
BCAA486F14A052530088FAC4 /* PlatformEventFactory.mm in Sources */,
+ 6ED878C4147493F4004C3597 /* RenderTableCaption.cpp in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
diff --git a/third_party/WebKit/Source/WebCore/rendering/RenderBlock.cpp b/third_party/WebKit/Source/WebCore/rendering/RenderBlock.cpp
index 7808e2a..320b7ea 100755
--- a/third_party/WebKit/Source/WebCore/rendering/RenderBlock.cpp
+++ b/third_party/WebKit/Source/WebCore/rendering/RenderBlock.cpp
@@ -708,7 +708,7 @@ void RenderBlock::addChildIgnoringAnonymousColumnBlocks(RenderObject* newChild,
ASSERT(beforeChildAnonymousContainer->isTable());
if ((newChild->isTableCol() && newChild->style()->display() == TABLE_COLUMN_GROUP)
- || (newChild->isRenderBlock() && newChild->style()->display() == TABLE_CAPTION)
+ || (newChild->isTableCaption())
|| newChild->isTableSection()
|| newChild->isTableRow()
|| newChild->isTableCell()) {
diff --git a/third_party/WebKit/Source/WebCore/rendering/RenderObject.cpp b/third_party/WebKit/Source/WebCore/rendering/RenderObject.cpp
index 2227668..32163856 100755
--- a/third_party/WebKit/Source/WebCore/rendering/RenderObject.cpp
+++ b/third_party/WebKit/Source/WebCore/rendering/RenderObject.cpp
@@ -54,6 +54,7 @@
#include "RenderRegion.h"
#include "RenderRuby.h"
#include "RenderRubyText.h"
+#include "RenderTableCaption.h"
#include "RenderTableCell.h"
#include "RenderTableCol.h"
#include "RenderTableRow.h"
@@ -176,7 +177,7 @@ RenderObject* RenderObject::createObject(Node* node, RenderStyle* style)
case TABLE_CELL:
return new (arena) RenderTableCell(node);
case TABLE_CAPTION:
- return new (arena) RenderBlock(node);
+ return new (arena) RenderTableCaption(node);
case BOX:
case INLINE_BOX:
return new (arena) RenderDeprecatedFlexibleBox(node);
@@ -286,7 +287,7 @@ void RenderObject::addChild(RenderObject* newChild, RenderObject* beforeChild)
if (newChild->isTableCol() && newChild->style()->display() == TABLE_COLUMN_GROUP)
needsTable = !isTable();
- else if (newChild->isRenderBlock() && newChild->style()->display() == TABLE_CAPTION)
+ else if (newChild->isTableCaption())
needsTable = !isTable();
else if (newChild->isTableSection())
needsTable = !isTable();
diff --git a/third_party/WebKit/Source/WebCore/rendering/RenderObject.h b/third_party/WebKit/Source/WebCore/rendering/RenderObject.h
index 78d2ce5..75aab57 100644
--- a/third_party/WebKit/Source/WebCore/rendering/RenderObject.h
+++ b/third_party/WebKit/Source/WebCore/rendering/RenderObject.h
@@ -328,6 +328,7 @@ public:
virtual bool isTable() const { return false; }
virtual bool isTableCell() const { return false; }
virtual bool isTableCol() const { return false; }
+ virtual bool isTableCaption() const { return false; }
virtual bool isTableRow() const { return false; }
virtual bool isTableSection() const { return false; }
virtual bool isTextControl() const { return false; }
diff --git a/third_party/WebKit/Source/WebCore/rendering/RenderTable.cpp b/third_party/WebKit/Source/WebCore/rendering/RenderTable.cpp
index 32f7ab1..6d12e5f 100644
--- a/third_party/WebKit/Source/WebCore/rendering/RenderTable.cpp
+++ b/third_party/WebKit/Source/WebCore/rendering/RenderTable.cpp
@@ -36,6 +36,7 @@
#include "HTMLNames.h"
#include "LayoutRepainter.h"
#include "RenderLayer.h"
+#include "RenderTableCaption.h"
#include "RenderTableCell.h"
#include "RenderTableCol.h"
#include "RenderTableSection.h"
@@ -115,8 +116,8 @@ void RenderTable::addChild(RenderObject* child, RenderObject* beforeChild)
bool wrapInAnonymousSection = !child->isPositioned();
- if (child->isRenderBlock() && child->style()->display() == TABLE_CAPTION) {
- m_captions.append(toRenderBlock(child));
+ if (child->isTableCaption()) {
+ m_captions.append(toRenderTableCaption(child));
setNeedsSectionRecalc();
wrapInAnonymousSection = false;
} else if (child->isTableCol()) {
@@ -540,7 +541,7 @@ void RenderTable::paintObject(PaintInfo& paintInfo, const LayoutPoint& paintOffs
info.updatePaintingRootForChildren(this);
for (RenderObject* child = firstChild(); child; child = child->nextSibling()) {
- if (child->isBox() && !toRenderBox(child)->hasSelfPaintingLayer() && (child->isTableSection() || (child->isRenderBlock() && child->style()->display() == TABLE_CAPTION))) {
+ if (child->isBox() && !toRenderBox(child)->hasSelfPaintingLayer() && (child->isTableSection() || child->isTableCaption())) {
LayoutPoint childPoint = flipForWritingModeForChild(toRenderBox(child), paintOffset);
child->paint(info, childPoint);
}
@@ -1211,7 +1212,7 @@ bool RenderTable::nodeAtPoint(const HitTestRequest& request, HitTestResult& resu
// Check kids first.
if (!hasOverflowClip() || overflowClipRect(adjustedLocation, result.region()).intersects(result.rectForPoint(pointInContainer))) {
for (RenderObject* child = lastChild(); child; child = child->previousSibling()) {
- if (child->isBox() && !toRenderBox(child)->hasSelfPaintingLayer() && (child->isTableSection() || (child->isRenderBlock() && child->style()->display() == TABLE_CAPTION))) {
+ if (child->isBox() && !toRenderBox(child)->hasSelfPaintingLayer() && (child->isTableSection() || child->isTableCaption())) {
LayoutPoint childPoint = flipForWritingModeForChild(toRenderBox(child), adjustedLocation);
if (child->nodeAtPoint(request, result, pointInContainer, childPoint, action)) {
updateHitTestResult(result, toLayoutPoint(pointInContainer - childPoint));
diff --git a/third_party/WebKit/Source/WebCore/rendering/RenderTable.h b/third_party/WebKit/Source/WebCore/rendering/RenderTable.h
index 2de900c..0a48c15 100644
--- a/third_party/WebKit/Source/WebCore/rendering/RenderTable.h
+++ b/third_party/WebKit/Source/WebCore/rendering/RenderTable.h
@@ -33,6 +33,7 @@
namespace WebCore {
class RenderTableCol;
+class RenderTableCaption;
class RenderTableCell;
class RenderTableSection;
class TableLayout;
@@ -251,8 +252,8 @@ private:
mutable Vector<LayoutUnit> m_columnPos;
mutable Vector<ColumnStruct> m_columns;
+ mutable Vector<RenderTableCaption*> m_captions;
- mutable Vector<RenderBlock*> m_captions;
mutable RenderTableSection* m_head;
mutable RenderTableSection* m_foot;
mutable RenderTableSection* m_firstBody;
diff --git a/third_party/WebKit/Source/WebCore/rendering/RenderTableCaption.cpp b/third_party/WebKit/Source/WebCore/rendering/RenderTableCaption.cpp
new file mode 100644
index 0000000..b84891c
--- /dev/null
+++ b/third_party/WebKit/Source/WebCore/rendering/RenderTableCaption.cpp
@@ -0,0 +1,40 @@
+/*
+ * Copyright (C) 2011 Robert Hogan <robert@roberthogan.net>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public License
+ * along with this library; see the file COPYING.LIB. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#include "config.h"
+#include "RenderTableCaption.h"
+
+namespace WebCore {
+
+RenderTableCaption::RenderTableCaption(Node* node)
+ : RenderBlock(node)
+{
+}
+
+RenderTableCaption::~RenderTableCaption()
+{
+}
+
+LayoutUnit RenderTableCaption::containingBlockLogicalWidthForContent() const
+{
+ RenderBlock* cb = containingBlock();
+ return cb->logicalWidth();
+}
+
+}
diff --git a/third_party/WebKit/Source/WebCore/rendering/RenderTableCaption.h b/third_party/WebKit/Source/WebCore/rendering/RenderTableCaption.h
new file mode 100644
index 0000000..23079c0
--- /dev/null
+++ b/third_party/WebKit/Source/WebCore/rendering/RenderTableCaption.h
@@ -0,0 +1,54 @@
+/*
+ * Copyright (C) 2011 Robert Hogan <robert@roberthogan.net>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Library General Public
+ * License as published by the Free Software Foundation; either
+ * version 2 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Library General Public License for more details.
+ *
+ * You should have received a copy of the GNU Library General Public License
+ * along with this library; see the file COPYING.LIB. If not, write to
+ * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
+ */
+
+#ifndef RenderTableCaption_h
+#define RenderTableCaption_h
+
+#include "RenderBlock.h"
+
+namespace WebCore {
+
+class RenderTableCaption : public RenderBlock {
+public:
+ explicit RenderTableCaption(Node*);
+ virtual ~RenderTableCaption();
+ virtual LayoutUnit containingBlockLogicalWidthForContent() const OVERRIDE;
+
+private:
+ virtual bool isTableCaption() const OVERRIDE { return true; }
+};
+
+inline RenderTableCaption* toRenderTableCaption(RenderObject* object)
+{
+ ASSERT(!object || object->isTableCaption());
+ return static_cast<RenderTableCaption*>(object);
+}
+
+inline const RenderTableCaption* toRenderTableCaption(const RenderObject* object)
+{
+ ASSERT(!object || object->isTableCaption());
+ return static_cast<const RenderTableCaption*>(object);
+}
+
+// This will catch anyone doing an unnecessary cast.
+void toRenderTableCaption(const RenderTableCaption*);
+
+} // namespace WebCore
+
+#endif // RenderTableCaption_h
diff --git a/third_party/WebKit/Source/WebCore/rendering/RenderingAllInOne.cpp b/third_party/WebKit/Source/WebCore/rendering/RenderingAllInOne.cpp
index 479db82..7e9e7dd 100644
--- a/third_party/WebKit/Source/WebCore/rendering/RenderingAllInOne.cpp
+++ b/third_party/WebKit/Source/WebCore/rendering/RenderingAllInOne.cpp
@@ -92,6 +92,7 @@
#include "RenderSlider.cpp"
#include "RenderSummary.cpp"
#include "RenderTable.cpp"
+#include "RenderTableCaption.cpp"
#include "RenderTableCell.cpp"
#include "RenderTableCol.cpp"
#include "RenderTableRow.cpp"