Commit f1bfd647 authored by leviw@chromium.org's avatar leviw@chromium.org

AutoTableLayout truncates preferred widths for cells when it needs to ceil...

AutoTableLayout truncates preferred widths for cells when it needs to ceil them to contain the contents
https://bugs.webkit.org/show_bug.cgi?id=93911

Reviewed by Eric Seidel.

Source/WebCore: 

Avoiding truncation of sub-pixel accumulated values when determining the preferred width of a table cell
in AutoTableLayout. Since we continue to layout tables using integers, we need to ceil the contents to
prevent premature wrapping of the contents.

This only affects ports with sub-pixel layout enabled, and fixes regressions of a handful of tests that
were missed when updating expectations when sub-pixel was enabled.

Test: fast/sub-pixel/auto-table-layout-should-avoid-text-wrapping.html

* rendering/AutoTableLayout.cpp:
(WebCore::AutoTableLayout::recalcColumn):

LayoutTests: 

This only affects ports with sub-pixel layout enabled, and fixes regressions of a handful of tests that
were missed when updating expectations when sub-pixel was enabled.

* fast/sub-pixel/auto-table-layout-should-avoid-text-wrapping-expected.txt: Added.
* fast/sub-pixel/auto-table-layout-should-avoid-text-wrapping.html: Added.
* platform/chromium-mac/editing/deleting/5144139-2-expected.txt:
* platform/chromium-mac/fast/forms/001-expected.png:
* platform/chromium-mac/fast/forms/001-expected.txt:
* platform/chromium-mac/fast/forms/button-white-space-expected.txt:
* platform/chromium-mac/fast/forms/form-element-geometry-expected.png:
* platform/chromium-mac/fast/forms/form-element-geometry-expected.txt:
* platform/chromium-mac/fast/forms/formmove3-expected.txt:
* platform/chromium-mac/fast/replaced/width100percent-button-expected.png:
* platform/chromium-mac/fast/replaced/width100percent-button-expected.txt:
* platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.png:
* platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.txt:
* platform/chromium-mac/fast/replaced/width100percent-radio-expected.png:
* platform/chromium-mac/fast/replaced/width100percent-radio-expected.txt:
* platform/chromium-mac/fast/table/rowindex-expected.png:
* platform/chromium-mac/fast/table/rowindex-expected.txt:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-CSS-expected.png:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-CSS-expected.txt:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-HTML-expected.png:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-HTML-expected.txt:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-formatting-characters-expected.png:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
* platform/chromium-mac/fast/text/international/bidi-layout-across-linebreak-expected.png:
* platform/chromium-mac/fast/text/international/bidi-layout-across-linebreak-expected.txt:
* platform/chromium-mac/fast/text/international/bidi-override-expected.png:
* platform/chromium-mac/fast/text/international/bidi-override-expected.txt:
* platform/chromium-mac/fast/text/textIteratorNilRenderer-expected.png:
* platform/chromium-mac/fast/text/textIteratorNilRenderer-expected.txt:
* platform/chromium-mac/fast/transforms/bounding-rect-zoom-expected.txt:
* platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
* platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
* platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
* platform/chromium-mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png:
* platform/chromium-mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug138725-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug18359-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug33855-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug33855-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug39209-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug39209-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug55527-expected.png:
* platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug89315-expected.png:
* platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug89315-expected.txt:
* platform/chromium/TestExpectations:
* platform/mac/tables/mozilla/bugs/bug55527-expected.txt:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@125694 268f45cc-cd09-0410-ab3c-d52691b4dbfc
parent a4039c89
2012-08-15 Levi Weintraub <leviw@chromium.org>
AutoTableLayout truncates preferred widths for cells when it needs to ceil them to contain the contents
https://bugs.webkit.org/show_bug.cgi?id=93911
Reviewed by Eric Seidel.
This only affects ports with sub-pixel layout enabled, and fixes regressions of a handful of tests that
were missed when updating expectations when sub-pixel was enabled.
* fast/sub-pixel/auto-table-layout-should-avoid-text-wrapping-expected.txt: Added.
* fast/sub-pixel/auto-table-layout-should-avoid-text-wrapping.html: Added.
* platform/chromium-mac/editing/deleting/5144139-2-expected.txt:
* platform/chromium-mac/fast/forms/001-expected.png:
* platform/chromium-mac/fast/forms/001-expected.txt:
* platform/chromium-mac/fast/forms/button-white-space-expected.txt:
* platform/chromium-mac/fast/forms/form-element-geometry-expected.png:
* platform/chromium-mac/fast/forms/form-element-geometry-expected.txt:
* platform/chromium-mac/fast/forms/formmove3-expected.txt:
* platform/chromium-mac/fast/replaced/width100percent-button-expected.png:
* platform/chromium-mac/fast/replaced/width100percent-button-expected.txt:
* platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.png:
* platform/chromium-mac/fast/replaced/width100percent-checkbox-expected.txt:
* platform/chromium-mac/fast/replaced/width100percent-radio-expected.png:
* platform/chromium-mac/fast/replaced/width100percent-radio-expected.txt:
* platform/chromium-mac/fast/table/rowindex-expected.png:
* platform/chromium-mac/fast/table/rowindex-expected.txt:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-CSS-expected.png:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-CSS-expected.txt:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-HTML-expected.png:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-HTML-expected.txt:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-formatting-characters-expected.png:
* platform/chromium-mac/fast/text/international/bidi-LDB-2-formatting-characters-expected.txt:
* platform/chromium-mac/fast/text/international/bidi-layout-across-linebreak-expected.png:
* platform/chromium-mac/fast/text/international/bidi-layout-across-linebreak-expected.txt:
* platform/chromium-mac/fast/text/international/bidi-override-expected.png:
* platform/chromium-mac/fast/text/international/bidi-override-expected.txt:
* platform/chromium-mac/fast/text/textIteratorNilRenderer-expected.png:
* platform/chromium-mac/fast/text/textIteratorNilRenderer-expected.txt:
* platform/chromium-mac/fast/transforms/bounding-rect-zoom-expected.txt:
* platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png:
* platform/chromium-mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.txt:
* platform/chromium-mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt:
* platform/chromium-mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png:
* platform/chromium-mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug1318-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug138725-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug18359-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug33855-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug33855-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug39209-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug39209-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.png:
* platform/chromium-mac/tables/mozilla/bugs/bug4527-expected.txt:
* platform/chromium-mac/tables/mozilla/bugs/bug55527-expected.png:
* platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug89315-expected.png:
* platform/chromium-mac/tables/mozilla_expected_failures/bugs/bug89315-expected.txt:
* platform/chromium/TestExpectations:
* platform/mac/tables/mozilla/bugs/bug55527-expected.txt:
2012-08-10 Ojan Vafai <ojan@chromium.org>
z-index should work without position on flexitems
This tests that we don't incorrectly wrap an auto-layout table due to improper truncation of sub-pixel accumulation. See Bug 93911.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
PASS document.getElementById('testCell').offsetHeight + 'px' is getComputedStyle(document.getElementById('testCell')).lineHeight
PASS successfullyParsed is true
TEST COMPLETE
<!DOCTYPE html>
<html>
<head>
<style>
body {
font-size: 11px;
font-family: 'lucida grande',tahoma,verdana,arial,sans-serif;
line-height: 20px;
}
td {
padding: 0 0 0 0;
}
</style>
<script src="../../fast/js/resources/js-test-pre.js"></script>
</head>
<body>
<table id="testTable">
<tbody>
<tr>
<td id="testCell">English (US)</td>
</tr>
</tbody>
</table>
<p id="description"></p>
<div id="console"></div>
<script>
description("This tests that we don't incorrectly wrap an auto-layout table due to improper truncation of sub-pixel accumulation. See Bug 93911.");
var lineHeight = document.getElementById('testCell').style.lineHeight;
shouldBe("document.getElementById('testCell').offsetHeight + 'px'", "getComputedStyle(document.getElementById('testCell')).lineHeight");
if (window.testRunner)
document.getElementById("testTable").style.display = 'none';
</script>
<script src="../../fast/js/resources/js-test-post.js"></script>
</body>
\ No newline at end of file
......@@ -10,26 +10,26 @@ layer at (0,0) size 800x600
text run at (110,18) width 256: "You should see two ToDos, one empty. "
text run at (366,18) width 269: "The caret should be just before the second."
RenderBlock {DIV} at (0,52) size 784x50
RenderTable {TABLE} at (0,0) size 132x25
RenderTableSection {TBODY} at (0,0) size 132x25
RenderTableRow {TR} at (0,2) size 132x21
RenderTable {TABLE} at (0,0) size 133x25
RenderTableSection {TBODY} at (0,0) size 133x25
RenderTableRow {TR} at (0,2) size 133x21
RenderTableCell {TD} at (2,2) size 18x21 [r=0 c=0 rs=1 cs=1]
RenderText {#text} at (1,1) size 16x18
text run at (1,1) width 16: "\x{21D2}"
RenderTableCell {TD} at (22,2) size 94x20 [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (1,1) size 92x18
text run at (1,1) width 92: "ToDo Content"
RenderTableCell {TD} at (118,2) size 12x21 [r=0 c=2 rs=1 cs=1]
RenderTableCell {TD} at (118,2) size 13x21 [r=0 c=2 rs=1 cs=1]
RenderText {#text} at (1,2) size 11x18
text run at (1,2) width 11: "\x{21E3}"
RenderTable {TABLE} at (0,25) size 40x25
RenderTableSection {TBODY} at (0,0) size 40x25
RenderTableRow {TR} at (0,2) size 40x21
RenderTable {TABLE} at (0,25) size 41x25
RenderTableSection {TBODY} at (0,0) size 41x25
RenderTableRow {TR} at (0,2) size 41x21
RenderTableCell {TD} at (2,2) size 18x21 [r=0 c=0 rs=1 cs=1]
RenderText {#text} at (1,1) size 16x18
text run at (1,1) width 16: "\x{21D2}"
RenderTableCell {TD} at (22,2) size 2x20 [r=0 c=1 rs=1 cs=1]
RenderTableCell {TD} at (26,2) size 12x21 [r=0 c=2 rs=1 cs=1]
RenderTableCell {TD} at (26,2) size 13x21 [r=0 c=2 rs=1 cs=1]
RenderText {#text} at (1,2) size 11x18
text run at (1,2) width 11: "\x{21E3}"
caret: position 0 of child 3 {TABLE} of child 2 {DIV} of body
......@@ -19,45 +19,45 @@ layer at (0,0) size 800x600
RenderTable {TABLE} at (0,0) size 784x24 [border: (2px outset #808080)]
RenderTableSection {TBODY} at (2,2) size 780x20
RenderTableRow {TR} at (0,0) size 780x20
RenderTableCell {TD} at (0,0) size 19x20 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderTableCell {TD} at (0,0) size 20x20 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 13x12
RenderTableCell {TD} at (19,9) size 761x2 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderTableCell {TD} at (20,9) size 760x2 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderBlock {P} at (0,200) size 784x25
RenderTable {TABLE} at (0,0) size 784x24 [border: (2px outset #808080)]
RenderTableSection {TBODY} at (2,2) size 780x20
RenderTableRow {TR} at (0,0) size 780x20
RenderTableCell {TD} at (0,0) size 19x20 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderTableCell {TD} at (0,0) size 20x20 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 13x12
RenderTableCell {TD} at (19,9) size 761x2 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderTableCell {TD} at (20,9) size 760x2 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderBlock {P} at (0,240) size 784x29
RenderTable {TABLE} at (0,0) size 784x28 [border: (2px outset #808080)]
RenderTableSection {TBODY} at (2,2) size 780x24
RenderTableRow {TR} at (0,0) size 780x24
RenderTableCell {TD} at (0,0) size 41x24 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderTableCell {TD} at (0,0) size 42x24 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderButton {INPUT} at (3,2) size 36x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 20x14
RenderText at (0,0) size 20x13
text run at (0,0) width 20: "Foo"
RenderTableCell {TD} at (41,11) size 739x2 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderTableCell {TD} at (42,11) size 738x2 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderBlock {P} at (0,284) size 784x268
RenderTable {TABLE} at (0,0) size 784x91 [border: (2px outset #808080)]
RenderTableSection {TBODY} at (2,2) size 780x87
RenderTableRow {TR} at (0,0) size 780x87
RenderTableCell {TD} at (0,0) size 117x87 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderTableCell {TD} at (0,0) size 118x87 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderButton {INPUT} at (3,1) size 112x85 [bgcolor=#C0C0C0] [border: (40px solid #FF0000)]
RenderBlock (anonymous) at (46,42) size 20x13
RenderText at (0,0) size 20x13
text run at (0,0) width 20: "Foo"
RenderTableCell {TD} at (117,42) size 663x2 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderTableCell {TD} at (118,42) size 662x2 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderTable {TABLE} at (0,91) size 784x91 [border: (2px outset #808080)]
RenderTableSection {TBODY} at (2,2) size 780x87
RenderTableRow {TR} at (0,0) size 780x87
RenderTableCell {TD} at (0,0) size 168x87 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderTableCell {TD} at (0,0) size 169x87 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderButton {INPUT} at (3,1) size 163x85 [bgcolor=#C0C0C0] [border: (40px solid #FF0000)]
RenderBlock (anonymous) at (46,42) size 71x13
RenderText at (0,0) size 71x13
text run at (0,0) width 71: "Submit a bug"
RenderTableCell {TD} at (168,42) size 612x2 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderTableCell {TD} at (169,42) size 611x2 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderBlock (anonymous) at (0,182) size 784x85
RenderButton {INPUT} at (2,0) size 112x85 [bgcolor=#C0C0C0] [border: (40px solid #FF0000)]
RenderBlock (anonymous) at (46,42) size 20x13
......
......@@ -13,10 +13,10 @@ layer at (0,0) size 800x600
RenderBlock {DIV} at (0,52) size 784x18
RenderText {#text} at (0,0) size 358x18
text run at (0,0) width 358: "Buttons should appear next to each other in a single row:"
RenderTable {TABLE} at (0,70) size 192x28
RenderTableSection {TBODY} at (0,0) size 192x28
RenderTableRow {TR} at (0,2) size 192x24
RenderTableCell {TD} at (2,2) size 188x24 [r=0 c=0 rs=1 cs=1]
RenderTable {TABLE} at (0,70) size 193x28
RenderTableSection {TBODY} at (0,0) size 193x28
RenderTableRow {TR} at (0,2) size 193x24
RenderTableCell {TD} at (2,2) size 189x24 [r=0 c=0 rs=1 cs=1]
RenderButton {BUTTON} at (3,3) size 77x18 [bgcolor=#C0C0C0] [border: (2px outset #C0C0C0) none (2px outset #C0C0C0)]
RenderBlock (anonymous) at (8,2) size 61x13
RenderText {#text} at (0,0) size 61x13
......
......@@ -12,74 +12,74 @@ layer at (0,0) size 785x636
RenderBlock {H2} at (0,96) size 769x29
RenderText {#text} at (0,0) size 165x28
text run at (0,0) width 165: "Bounding Boxes"
RenderTable {TABLE} at (0,144) size 171x29
RenderTableSection {TBODY} at (0,0) size 171x28
RenderTableRow {TR} at (0,2) size 171x24
RenderTableCell {TD} at (2,2) size 57x24 [r=0 c=0 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 55x22 [border: (2px solid #0000FF)]
RenderTable {TABLE} at (0,144) size 172x29
RenderTableSection {TBODY} at (0,0) size 172x28
RenderTableRow {TR} at (0,2) size 172x24
RenderTableCell {TD} at (2,2) size 58x24 [r=0 c=0 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 56x22 [border: (2px solid #0000FF)]
RenderInline {FONT} at (0,0) size 52x28
RenderButton {INPUT} at (2,1) size 52x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 36x14
RenderText at (0,0) size 36x13
text run at (0,0) width 36: "button"
RenderTableCell {TD} at (61,2) size 68x24 [r=0 c=1 rs=1 cs=1]
RenderTableCell {TD} at (62,2) size 68x24 [r=0 c=1 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 66x22 [border: (2px solid #0000FF)]
RenderInline {FONT} at (0,0) size 62x28
RenderMenuList {SELECT} at (2,2) size 62x18 [bgcolor=#FFFFFF]
RenderBlock (anonymous) at (0,0) size 62x18
RenderText at (8,2) size 31x13
text run at (8,2) width 31: "menu"
RenderTableCell {TD} at (131,4) size 18x19 [r=0 c=2 rs=1 cs=1]
RenderTableCell {TD} at (132,4) size 18x19 [r=0 c=2 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 16x17 [border: (2px solid #0000FF)]
RenderInline {FONT} at (0,0) size 12x28
RenderBlock {INPUT} at (2,2) size 12x13
RenderTableCell {TD} at (151,5) size 18x18 [r=0 c=3 rs=1 cs=1]
RenderTableCell {TD} at (152,5) size 18x18 [r=0 c=3 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 16x16 [border: (2px solid #0000FF)]
RenderInline {FONT} at (0,0) size 12x28
RenderBlock {INPUT} at (2,2) size 12x12
RenderTable {TABLE} at (0,172) size 171x29
RenderTableSection {TBODY} at (0,0) size 171x28
RenderTableRow {TR} at (0,2) size 171x24
RenderTableCell {TD} at (2,2) size 57x24 [r=0 c=0 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 55x22 [border: (2px solid #0000FF)]
RenderTable {TABLE} at (0,172) size 172x29
RenderTableSection {TBODY} at (0,0) size 172x28
RenderTableRow {TR} at (0,2) size 172x24
RenderTableCell {TD} at (2,2) size 58x24 [r=0 c=0 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 56x22 [border: (2px solid #0000FF)]
RenderButton {INPUT} at (2,1) size 52x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 36x14
RenderText at (0,0) size 36x13
text run at (0,0) width 36: "button"
RenderTableCell {TD} at (61,2) size 68x24 [r=0 c=1 rs=1 cs=1]
RenderTableCell {TD} at (62,2) size 68x24 [r=0 c=1 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 66x22 [border: (2px solid #0000FF)]
RenderMenuList {SELECT} at (2,2) size 62x18 [bgcolor=#FFFFFF]
RenderBlock (anonymous) at (0,0) size 62x18
RenderText at (8,2) size 31x13
text run at (8,2) width 31: "menu"
RenderTableCell {TD} at (131,4) size 18x19 [r=0 c=2 rs=1 cs=1]
RenderTableCell {TD} at (132,4) size 18x19 [r=0 c=2 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 16x17 [border: (2px solid #0000FF)]
RenderBlock {INPUT} at (2,2) size 12x13
RenderTableCell {TD} at (151,5) size 18x18 [r=0 c=3 rs=1 cs=1]
RenderTableCell {TD} at (152,5) size 18x18 [r=0 c=3 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 16x16 [border: (2px solid #0000FF)]
RenderBlock {INPUT} at (2,2) size 12x12
RenderTable {TABLE} at (0,200) size 171x29
RenderTableSection {TBODY} at (0,0) size 171x28
RenderTableRow {TR} at (0,2) size 171x24
RenderTableCell {TD} at (2,2) size 57x24 [r=0 c=0 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 55x22 [border: (2px solid #0000FF)]
RenderTable {TABLE} at (0,200) size 172x29
RenderTableSection {TBODY} at (0,0) size 172x28
RenderTableRow {TR} at (0,2) size 172x24
RenderTableCell {TD} at (2,2) size 58x24 [r=0 c=0 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 56x22 [border: (2px solid #0000FF)]
RenderInline {FONT} at (0,0) size 52x13
RenderButton {INPUT} at (2,1) size 52x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 36x14
RenderText at (0,0) size 36x13
text run at (0,0) width 36: "button"
RenderTableCell {TD} at (61,2) size 68x24 [r=0 c=1 rs=1 cs=1]
RenderTableCell {TD} at (62,2) size 68x24 [r=0 c=1 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 66x22 [border: (2px solid #0000FF)]
RenderInline {FONT} at (0,0) size 62x13
RenderMenuList {SELECT} at (2,2) size 62x18 [bgcolor=#FFFFFF]
RenderBlock (anonymous) at (0,0) size 62x18
RenderText at (8,2) size 31x13
text run at (8,2) width 31: "menu"
RenderTableCell {TD} at (131,4) size 18x19 [r=0 c=2 rs=1 cs=1]
RenderTableCell {TD} at (132,4) size 18x19 [r=0 c=2 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 16x17 [border: (2px solid #0000FF)]
RenderInline {FONT} at (0,0) size 12x13
RenderBlock {INPUT} at (2,2) size 12x13
RenderTableCell {TD} at (151,5) size 18x18 [r=0 c=3 rs=1 cs=1]
RenderTableCell {TD} at (152,5) size 18x18 [r=0 c=3 rs=1 cs=1]
RenderBlock {DIV} at (1,1) size 16x16 [border: (2px solid #0000FF)]
RenderInline {FONT} at (0,0) size 12x13
RenderBlock {INPUT} at (2,2) size 12x12
......
......@@ -12,11 +12,11 @@ layer at (0,0) size 800x600
RenderInline {A} at (0,0) size 0x0
RenderText {#text} at (0,0) size 0x0
RenderBlock (anonymous) at (0,0) size 784x28
RenderTable {TABLE} at (0,0) size 65x28
RenderTableSection {TBODY} at (0,0) size 65x28
RenderTableRow {TR} at (0,2) size 65x24
RenderTable {TABLE} at (0,0) size 66x28
RenderTableSection {TBODY} at (0,0) size 66x28
RenderTableRow {TR} at (0,2) size 66x24
RenderTableCell {TD} at (2,13) size 2x2 [r=0 c=0 rs=1 cs=1]
RenderTableCell {TD} at (6,2) size 57x24 [r=0 c=1 rs=1 cs=1]
RenderTableCell {TD} at (6,2) size 58x24 [r=0 c=1 rs=1 cs=1]
RenderButton {INPUT} at (3,2) size 52x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 36x14
RenderText at (0,0) size 36x13
......
......@@ -9,22 +9,22 @@ layer at (0,0) size 800x600
RenderTable {TABLE} at (0,18) size 784x26
RenderTableSection {TBODY} at (0,0) size 784x26
RenderTableRow {TR} at (0,1) size 784x24
RenderTableCell {TD} at (1,1) size 66x24 [r=0 c=0 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 64x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 48x14
RenderTableCell {TD} at (1,1) size 67x24 [r=0 c=0 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 65x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 49x14
RenderText at (0,0) size 49x13
text run at (0,0) width 49: "New Mail"
RenderTableCell {TD} at (68,1) size 46x24 [r=0 c=1 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 44x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 28x14
RenderTableCell {TD} at (69,1) size 47x24 [r=0 c=1 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 45x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 29x14
RenderText at (0,0) size 29x13
text run at (0,0) width 29: "Reply"
RenderTableCell {TD} at (115,1) size 64x24 [r=0 c=2 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 62x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 46x14
RenderTableCell {TD} at (117,1) size 65x24 [r=0 c=2 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 63x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 47x14
RenderText at (0,0) size 47x13
text run at (0,0) width 47: "Reply All"
RenderTableCell {TD} at (180,3) size 603x20 [r=0 c=3 rs=1 cs=1]
RenderTableCell {TD} at (183,3) size 600x20 [r=0 c=3 rs=1 cs=1]
RenderText {#text} at (1,1) size 4x18
text run at (1,1) width 4: " "
RenderBlock (anonymous) at (0,44) size 784x36
......@@ -33,21 +33,21 @@ layer at (0,0) size 800x600
RenderTable {TABLE} at (0,80) size 784x26
RenderTableSection {TBODY} at (0,0) size 784x26
RenderTableRow {TR} at (0,1) size 784x24
RenderTableCell {TD} at (1,1) size 66x24 [r=0 c=0 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 64x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 48x14
RenderTableCell {TD} at (1,1) size 67x24 [r=0 c=0 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 65x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 49x14
RenderText at (0,0) size 49x13
text run at (0,0) width 49: "New Mail"
RenderTableCell {TD} at (68,1) size 46x24 [r=0 c=1 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 44x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 28x14
RenderTableCell {TD} at (69,1) size 47x24 [r=0 c=1 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 45x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 29x14
RenderText at (0,0) size 29x13
text run at (0,0) width 29: "Reply"
RenderTableCell {TD} at (115,1) size 64x24 [r=0 c=2 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 62x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 46x14
RenderTableCell {TD} at (117,1) size 65x24 [r=0 c=2 rs=1 cs=1]
RenderButton {INPUT} at (1,2) size 63x19 [bgcolor=#C0C0C0]
RenderBlock (anonymous) at (8,2) size 47x14
RenderText at (0,0) size 47x13
text run at (0,0) width 47: "Reply All"
RenderTableCell {TD} at (180,3) size 603x20 [r=0 c=3 rs=1 cs=1]
RenderTableCell {TD} at (183,3) size 600x20 [r=0 c=3 rs=1 cs=1]
RenderText {#text} at (1,1) size 4x18
text run at (1,1) width 4: " "
......@@ -9,12 +9,12 @@ layer at (0,0) size 800x600
RenderTable {TABLE} at (0,18) size 784x22
RenderTableSection {TBODY} at (0,0) size 784x22
RenderTableRow {TR} at (0,1) size 784x20
RenderTableCell {TD} at (1,1) size 7x20 [r=0 c=0 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 6x12
RenderTableCell {TD} at (9,1) size 7x20 [r=0 c=1 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 6x12
RenderTableCell {TD} at (17,1) size 7x20 [r=0 c=2 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 6x12
RenderTableCell {TD} at (25,1) size 758x20 [r=0 c=3 rs=1 cs=1]
RenderTableCell {TD} at (1,1) size 8x20 [r=0 c=0 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 7x12
RenderTableCell {TD} at (10,1) size 8x20 [r=0 c=1 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 7x12
RenderTableCell {TD} at (19,1) size 8x20 [r=0 c=2 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 7x12
RenderTableCell {TD} at (28,1) size 755x20 [r=0 c=3 rs=1 cs=1]
RenderText {#text} at (1,1) size 4x18
text run at (1,1) width 4: " "
......@@ -9,12 +9,12 @@ layer at (0,0) size 800x600
RenderTable {TABLE} at (0,18) size 784x23
RenderTableSection {TBODY} at (0,0) size 784x23
RenderTableRow {TR} at (0,1) size 784x21
RenderTableCell {TD} at (1,1) size 7x21 [r=0 c=0 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 6x13
RenderTableCell {TD} at (9,1) size 7x21 [r=0 c=1 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 6x13
RenderTableCell {TD} at (17,1) size 7x21 [r=0 c=2 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 6x13
RenderTableCell {TD} at (25,1) size 758x20 [r=0 c=3 rs=1 cs=1]
RenderTableCell {TD} at (1,1) size 8x21 [r=0 c=0 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 7x13
RenderTableCell {TD} at (10,1) size 8x21 [r=0 c=1 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 7x13
RenderTableCell {TD} at (19,1) size 8x21 [r=0 c=2 rs=1 cs=1]
RenderBlock {INPUT} at (3,4) size 7x13
RenderTableCell {TD} at (28,1) size 755x20 [r=0 c=3 rs=1 cs=1]
RenderText {#text} at (1,1) size 4x18
text run at (1,1) width 4: " "
layer at (0,0) size 785x610
RenderView at (0,0) size 785x600
layer at (0,0) size 785x610
RenderBlock {HTML} at (0,0) size 785x610
RenderBody {BODY} at (8,8) size 769x594
RenderBlock {P} at (0,0) size 769x12
layer at (0,0) size 800x600
RenderView at (0,0) size 800x600
layer at (0,0) size 800x600
RenderBlock {HTML} at (0,0) size 800x600
RenderBody {BODY} at (8,8) size 784x584
RenderBlock {P} at (0,0) size 784x12
RenderText {#text} at (0,0) size 437x12
text run at (0,0) width 437: "This tests rowIndex, in particular in cases where the table sections are in different orders."
RenderBlock {P} at (0,22) size 769x12
RenderBlock {P} at (0,22) size 784x12
RenderText {#text} at (0,0) size 354x12
text run at (0,0) width 354: "A: This table has the header and footer before the body (\"normal\" order)."
RenderTable {TABLE} at (0,44) size 154x98 [border: (1px outset #808080)]
RenderTableSection {THEAD} at (1,1) size 152x32
RenderTableRow {TR} at (0,2) size 152x28
RenderTableCell {TD} at (2,2) size 77x28 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderText {#text} at (2,2) size 38x24
text run at (2,2) width 38: "table A,"
text run at (2,14) width 34: "header"
RenderTableCell {TD} at (81,2) size 69x28 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 57x24
text run at (2,2) width 57: "rowIndex ="
text run at (2,14) width 7: "0"
RenderTableSection {TFOOT} at (1,65) size 152x32
RenderTableRow {TR} at (0,2) size 152x28
RenderTableCell {TD} at (2,8) size 77x16 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderTable {TABLE} at (0,44) size 156x62 [border: (1px outset #808080)]
RenderTableSection {THEAD} at (1,1) size 154x20
RenderTableRow {TR} at (0,2) size 154x16
RenderTableCell {TD} at (2,2) size 78x16 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderText {#text} at (2,2) size 74x12
text run at (2,2) width 74: "table A, header"
RenderTableCell {TD} at (82,2) size 70x16 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 66x12
text run at (2,2) width 66: "rowIndex = 0"
RenderTableSection {TFOOT} at (1,41) size 154x20
RenderTableRow {TR} at (0,2) size 154x16
RenderTableCell {TD} at (2,2) size 78x16 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderText {#text} at (2,2) size 70x12
text run at (2,2) width 70: "table A, footer"
RenderTableCell {TD} at (81,2) size 69x28 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 57x24
text run at (2,2) width 57: "rowIndex ="
text run at (2,14) width 7: "2"
RenderTableSection {TBODY} at (1,33) size 152x32
RenderTableRow {TR} at (0,2) size 152x28
RenderTableCell {TD} at (2,8) size 77x16 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderTableCell {TD} at (82,2) size 70x16 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 66x12
text run at (2,2) width 66: "rowIndex = 2"
RenderTableSection {TBODY} at (1,21) size 154x20
RenderTableRow {TR} at (0,2) size 154x16
RenderTableCell {TD} at (2,2) size 78x16 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderText {#text} at (2,2) size 65x12
text run at (2,2) width 65: "table A, body"
RenderTableCell {TD} at (81,2) size 69x28 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 57x24
text run at (2,2) width 57: "rowIndex ="
text run at (2,14) width 7: "1"
RenderBlock {P} at (0,152) size 769x12
RenderTableCell {TD} at (82,2) size 70x16 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 66x12
text run at (2,2) width 66: "rowIndex = 1"
RenderBlock {P} at (0,116) size 784x12
RenderText {#text} at (0,0) size 351x12
text run at (0,0) width 351: "B: This table has the footer before the body and both before the header."
RenderTable {TABLE} at (0,174) size 153x98 [border: (1px outset #808080)]
RenderTableSection {TFOOT} at (1,65) size 151x32
RenderTableRow {TR} at (0,2) size 151x28
RenderTableCell {TD} at (2,8) size 76x16 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderTable {TABLE} at (0,138) size 155x62 [border: (1px outset #808080)]
RenderTableSection {TFOOT} at (1,41) size 153x20
RenderTableRow {TR} at (0,2) size 153x16
RenderTableCell {TD} at (2,2) size 77x16 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderText {#text} at (2,2) size 69x12
text run at (2,2) width 69: "table B, footer"
RenderTableCell {TD} at (80,2) size 69x28 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 57x24
text run at (2,2) width 57: "rowIndex ="
text run at (2,14) width 7: "2"
RenderTableSection {TBODY} at (1,33) size 151x32
RenderTableRow {TR} at (0,2) size 151x28
RenderTableCell {TD} at (2,8) size 76x16 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderTableCell {TD} at (81,2) size 70x16 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 66x12
text run at (2,2) width 66: "rowIndex = 2"
RenderTableSection {TBODY} at (1,21) size 153x20
RenderTableRow {TR} at (0,2) size 153x16
RenderTableCell {TD} at (2,2) size 77x16 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderText {#text} at (2,2) size 64x12
text run at (2,2) width 64: "table B, body"
RenderTableCell {TD} at (80,2) size 69x28 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 57x24
text run at (2,2) width 57: "rowIndex ="
text run at (2,14) width 7: "1"
RenderTableSection {THEAD} at (1,1) size 151x32
RenderTableRow {TR} at (0,2) size 151x28
RenderTableCell {TD} at (2,2) size 76x28 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderText {#text} at (2,2) size 37x24
text run at (2,2) width 37: "table B,"
text run at (2,14) width 34: "header"
RenderTableCell {TD} at (80,2) size 69x28 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 57x24
text run at (2,2) width 57: "rowIndex ="
text run at (2,14) width 7: "0"
RenderBlock {P} at (0,282) size 769x12
RenderTableCell {TD} at (81,2) size 70x16 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 66x12
text run at (2,2) width 66: "rowIndex = 1"
RenderTableSection {THEAD} at (1,1) size 153x20
RenderTableRow {TR} at (0,2) size 153x16
RenderTableCell {TD} at (2,2) size 77x16 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
RenderText {#text} at (2,2) size 73x12
text run at (2,2) width 73: "table B, header"
RenderTableCell {TD} at (81,2) size 70x16 [border: (1px inset #808080)] [r=0 c=1 rs=1 cs=1]
RenderText {#text} at (2,2) size 66x12
text run at (2,2) width 66: "rowIndex = 0"
RenderBlock {P} at (0,210) size 784x12
RenderText {#text} at (0,0) size 673x12
text run at (0,0) width 673: "C: This table has two footers before two bodies before two heads. The rows inside the extra footers and heads don't get row indices at all."