Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
getBoundingClientRect() returns wrong value for tr, td and its descen…
…dants for a vertical table getBoundingClientRect() returns wrong value for tr, td and its descendants for a vertical table https://bugs.webkit.org/show_bug.cgi?id=170768 Reviewed by Ryosuke Niwa. Patch Authored by Yuki Sekiguchi RenderTableRow grows toward y axis even if the writing-mode of the table is vertical-rl. The reason is that RenderTableSection::layoutRows() sets the physical x/y instead of the logical x/y. The layout() should set the logical ones. A RenderTableCell is relative to a RenderTableSection. Since the container of the RenderTableCell is a RenderTableRow, RenderTableCell::offsetFromContainer() should subtract the offset of the RenderTableRow. Since offsetFromContainer() returns the physical offset, it should subtract the flipped x/y of the RenderTableRow. However, it uses the unflipped x/y. Since offsetFromContainer() of the parent returns the flipped offset, RenderTableCell::offsetFromContainer() can use it. * Source/WebCore/rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::offsetFromContainer): Used offsetFromContainer() to get the offset of RenderTableRow * Source/WebCore/rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::layoutRows): Set the logical x/y instead of the physical x/y * LayoutTests/fast/dom/Element/getBoundingClientRect-vertical-child.html: Added Test Case * LayoutTests/fast/dom/Element/getBoundingClientRect-vertical-child-expected.txt: Added Test Case Expectations * LayoutTests/fast/dom/Element/getBoundingClientRect-vertical-td.html: Added Test Case * LayoutTests/fast/dom/Element/getBoundingClientRect-vertical-td-expected.txt: Added Test Case Expectations * LayoutTests/fast/dom/Element/getBoundingClientRect-vertical-tr.html: Added Test Case * LayoutTests/fast/dom/Element/getBoundingClientRect-vertical-tr-expected.txt: Added Test Case Expectations * LayoutTests/platform/glib/fast/css/h1-in-section-elements-expected.txt: Updated Test Expectations * LayoutTests/platform/glib/fast/writing-mode/border-styles-vertical-lr-expected.txt: Updated Test Expectations * LayoutTests/platform/fast/writing-mode/border-styles-vertical-lr-mixed-expected.txt: Updated Test Expectations * LayoutTests/platform/fast/writing-mode/border-styles-vertical-rl-expected.txt: Updated Test Expectations * LayoutTests/platform/fast/writing-mode/border-styles-vertical-rl-mixed-expected.txt: Updated Test Expectations * LayoutTests/platform/glib/tables/mozilla_expected_failures/bugs/bug7113-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/text/text-letter-spacing-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/writing-mode/vertical-align-table-baseline-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/tables/mozilla/bugs/bug2962-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/css/h1-in-section-elements-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/overflow/overflow-rtl-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/027-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/028-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/038-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/040-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/border-collapsing/equal-precedence-resolution-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/rowspan-paint-order-vertical-expected.txt: Updated Test Expectations * LayoutTest/platform/ios/fast/table/table-display-types-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/overflow/overflow-rtl-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/table/border-collapsing/001-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/table/border-collapsing/002-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/table/border-collapsing/003-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/table/border-collapsing/004-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/table/border-collapsing/004-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/table/border-collapsing/equal-precedence-resolution-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected: Updated Test Expectations * LayoutTests/fast/table/border-collapsing/collapsed-borders-adjoining-sections-vertical-rl-expected.png: Updated Test Expectations * LayoutTests/fast/table/border-collapsing/collapsed-borders-adjoining-sections-vertical-rl-expected.txt: Updated Test Expectations * LayoutTests/fast/table/growCellForImageQuirk-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/auto-with-percent-height-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/border-collapsing/001-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/border-collapsing/002-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/border-collapsing/003-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/table/border-collapsing/004-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/ios/fast/writing-mode/vertical-align-table-baseline-expected.png: Updated Test Expectations * LayoutTests/platform/ios/fast/writing-mode/vertical-align-table-baseline-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/css/h1-in-section-elements-expected.png: Updated Test Expectations * LayoutTests/platform/mac/fast/css/h1-in-section-elements-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/overflow/overflow-rtl-expected.png: Updated Test Expectations * LayoutTests/platform/mac/overflow/overflow-rtl-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/overflow/overflow-rtl-vertical-expected.png: Updated Test Expectations * LayoutTests/platform/mac/overflow/overflow-rtl-vertical-expected.txt: Updated Test Expectations * LayoutTest/platform/mac/fast/table/027-vertical-expected.png: Updated Test Expectations * LayoutTest/platform/mac/fast/table/027-vertical-expected.txt: Updated Test Expectations * LayoutTest/platform/mac/fast/table/028-vertical-expected.png: Updated Test Expectations * LayoutTest/platform/mac/fast/table/028-vertical-expected.txt: Updated Test Expectations * LayoutTest/platform/mac/fast/table/038-vertical-expected.png: Updated Test Expectations * LayoutTest/platform/mac/fast/table/038-vertical-expected.txt: Updated Test Expectations * LayoutTest/platform/mac/fast/table/040-vertical-expected.png: Updated Test Expectations * LayoutTest/platform/mac/fast/table/040-vertical-expected.txt: Updated Test Expectations * LayoutTest/platform/mac/fast/table/auto-with-percent-height-vertical-expected.png: Updated Test Expectations * LayoutTest/platform/mac/fast/table/auto-with-percent-height-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/glib/fast/table/border-collapsing/002-vertical-expected.txt: Updated Test Expectations * LayoutTests/fast/repaint/table-writing-modes-h-expected.txt: Updated Test Expectations * LayoutTests/fast/repaint/table-writing-modes-v-expected.txt: Updated Test Expectations * LayoutTests/platform/glib/fast/tables/027-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/glib/fast/tables/028-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/tables/038-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/tables/040-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/glib/fast/table/border-collapsing/002-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/table/auto-with-percent-height-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/table/001-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/table/003-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/table/004-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/table/rowspan-paint-order-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/table/table-disply-types-vertical-expected.png: Updated Test Expectations * LayoutTests/platform/mac/fast/table/table-disply-types-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/mac/fast/writing-mode/vertical-align-table-baseline-expected: Updated Test Expectations * LayoutTests/platform/glib/fast/table/border-collapsing/equal-precedence-resolution-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/glib/fast/table/table-display-types-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/table/border-collapsing/rtl-border-collapsing-vertical-expected.txt: Updated Test Expectations * LayoutTests/platform/gtk/fast/table/rowspan-paint-order-vertical-expected.txt: Updated Test Expectations Canonical link: https://commits.webkit.org/254918@main
- Loading branch information