New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 618074 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jul 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Bug

Blocking:
issue 529938



Sign in to add a comment

Repeating thead columns missing with cc/rtree patch applied.

Project Member Reported by wkorman@chromium.org, Jun 7 2016

Issue description

Breakout from  http://crbug.com/529938  --

Three newly added thead layout tests are failing with http://crrev.com/1484163002 (switch cc raster to use rtree w/ display items) applied.

fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only.html
fragmentation/single-line-cells-repeating-thead-starts-middle-of-page.html
fragmentation/single-line-cells-repeating-thead.html

Sample failures at:

https://storage.googleapis.com/chromium-layout-test-archives/linux_blink_rel/86852/layout-test-results/results.html

The thead columns are just absent after the first column. Likely the visual rects are wrong for the involved table cells for some reason.
 
Tests added in http://crrev.com/2021703002 just for reference.
Cc: wkorman@chromium.org
Owner: chrishtr@chromium.org
Possibly related to what remains for  http://crbug.com/604883 
The problem here is that the table header is a single LayoutObject that is 
painted into multiple columns. The fix needs to be to union over all of the
positions its in in all columns.
LayoutFlowThread::mapToVisualRectInAncestorSpace calls fragmentsBoundingBox,
which maps from flow thread and visual coordinates.

This works just fine for regular fragmented boxes, which have contiguous sizes
in flow thread space before being cut into fragmented pieces.

However, a repeating column header is special, since it has one-off code that forces it to
paint at the top of each column, pushing other content down.

It seems we need some special code to handle that.
Project Member

Comment 6 by bugdroid1@chromium.org, Jul 1 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bcc3fac37a6af0781b09a1344c05873016254688

commit bcc3fac37a6af0781b09a1344c05873016254688
Author: chrishtr <chrishtr@chromium.org>
Date: Fri Jul 01 20:33:05 2016

Fix paint invalidation rects for repeating paginated table headers.

These headers are painted multiple times, not through the usual fragmentation
machinery, but one-off code that positions them on each page.

BUG= 618074 

Review-Url: https://codereview.chromium.org/2118843002
Cr-Commit-Position: refs/heads/master@{#403514}

[modify] https://crrev.com/bcc3fac37a6af0781b09a1344c05873016254688/third_party/WebKit/LayoutTests/TestExpectations
[delete] https://crrev.com/1ff090845035eb7d694dc390aeaebd7ee80f8de8/third_party/WebKit/LayoutTests/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.html
[add] https://crrev.com/bcc3fac37a6af0781b09a1344c05873016254688/third_party/WebKit/LayoutTests/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.png
[add] https://crrev.com/bcc3fac37a6af0781b09a1344c05873016254688/third_party/WebKit/LayoutTests/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.txt
[modify] https://crrev.com/bcc3fac37a6af0781b09a1344c05873016254688/third_party/WebKit/LayoutTests/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only.html
[modify] https://crrev.com/bcc3fac37a6af0781b09a1344c05873016254688/third_party/WebKit/Source/core/layout/LayoutTableSection.cpp
[modify] https://crrev.com/bcc3fac37a6af0781b09a1344c05873016254688/third_party/WebKit/Source/core/layout/LayoutTableSection.h
[modify] https://crrev.com/bcc3fac37a6af0781b09a1344c05873016254688/third_party/WebKit/Source/core/paint/TableSectionPainter.cpp

Status: Fixed (was: Assigned)
Project Member

Comment 8 by bugdroid1@chromium.org, Jul 1 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3389ef3f015d3de018952296cf6d92778d1977e9

commit 3389ef3f015d3de018952296cf6d92778d1977e9
Author: Rebaseline Bot <blink-rebaseline-bot@chromium.org>
Date: Fri Jul 01 22:05:04 2016

Auto-rebaseline for r403514

https://chromium.googlesource.com/chromium/src/+/bcc3fac37

BUG= 618074 
TBR=chrishtr@chromium.org

Review URL: https://codereview.chromium.org/2111413003 .

Cr-Commit-Position: refs/heads/master@{#403546}

[modify] https://crrev.com/3389ef3f015d3de018952296cf6d92778d1977e9/third_party/WebKit/LayoutTests/TestExpectations
[modify] https://crrev.com/3389ef3f015d3de018952296cf6d92778d1977e9/third_party/WebKit/LayoutTests/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.txt
[rename] https://crrev.com/3389ef3f015d3de018952296cf6d92778d1977e9/third_party/WebKit/LayoutTests/platform/linux/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.png
[add] https://crrev.com/3389ef3f015d3de018952296cf6d92778d1977e9/third_party/WebKit/LayoutTests/platform/linux/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.txt
[add] https://crrev.com/3389ef3f015d3de018952296cf6d92778d1977e9/third_party/WebKit/LayoutTests/platform/mac-mac10.9/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.png
[add] https://crrev.com/3389ef3f015d3de018952296cf6d92778d1977e9/third_party/WebKit/LayoutTests/platform/mac/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.png
[add] https://crrev.com/3389ef3f015d3de018952296cf6d92778d1977e9/third_party/WebKit/LayoutTests/platform/win/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.png

Project Member

Comment 9 by bugdroid1@chromium.org, Sep 25 2016

Labels: merge-merged-2785
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/17183d060a09ff49738ae30579ce52b2e98424ab

commit 17183d060a09ff49738ae30579ce52b2e98424ab
Author: Robert Hogan <robhogan@gmail.com>
Date: Sun Sep 25 17:38:09 2016

Fix paint invalidation rects for repeating paginated table headers.

These headers are painted multiple times, not through the usual fragmentation
machinery, but one-off code that positions them on each page.

BUG= 618074 

Review-Url: https://codereview.chromium.org/2118843002
Cr-Commit-Position: refs/heads/master@{#403514}
(cherry picked from commit bcc3fac37a6af0781b09a1344c05873016254688)

Review URL: https://codereview.chromium.org/2366193002 .

Cr-Commit-Position: refs/branch-heads/2785@{#926}
Cr-Branched-From: 68623971be0cfc492a2cb0427d7f478e7b214c24-refs/heads/master@{#403382}

[modify] https://crrev.com/17183d060a09ff49738ae30579ce52b2e98424ab/third_party/WebKit/LayoutTests/TestExpectations
[delete] https://crrev.com/f33d44362232c20d1ce2111c53ea8730698f3c88/third_party/WebKit/LayoutTests/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.html
[add] https://crrev.com/17183d060a09ff49738ae30579ce52b2e98424ab/third_party/WebKit/LayoutTests/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.png
[add] https://crrev.com/17183d060a09ff49738ae30579ce52b2e98424ab/third_party/WebKit/LayoutTests/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only-expected.txt
[modify] https://crrev.com/17183d060a09ff49738ae30579ce52b2e98424ab/third_party/WebKit/LayoutTests/fragmentation/single-line-cells-repeating-thead-break-inside-on-thead-only.html
[modify] https://crrev.com/17183d060a09ff49738ae30579ce52b2e98424ab/third_party/WebKit/Source/core/layout/LayoutTableSection.cpp
[modify] https://crrev.com/17183d060a09ff49738ae30579ce52b2e98424ab/third_party/WebKit/Source/core/layout/LayoutTableSection.h
[modify] https://crrev.com/17183d060a09ff49738ae30579ce52b2e98424ab/third_party/WebKit/Source/core/paint/TableSectionPainter.cpp

Cc: kerz@chromium.org anan...@chromium.org amineer@chromium.org
This bug got merged to M53 Stable without merge request and approval.

Sign in to add a comment