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

Issue 634404 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Use other robhogan account instead.
Closed: Oct 2016
Cc:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 3
Type: Bug



Sign in to add a comment

Handle repeated headers correctly when two tables start/finish near a page boundary

Project Member Reported by robhogan@chromium.org, Aug 4 2016

Issue description

..
 
thead-repeats-at-top-of-each-page-multiple-tables-top-of-page.html
6.0 KB View Download
To recreate run with run-webkit-tests.
Project Member

Comment 2 by bugdroid1@chromium.org, Aug 12 2016

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

commit 581269dfb3c302163b973edcbbbf508291fe6671
Author: robhogan <robhogan@gmail.com>
Date: Fri Aug 12 20:01:12 2016

Offset repeating theads correctly when two tables adjoin at a page border

When a header group is near a page border and doesn't fit on the page
it may get a pagination strut to move it to the top of the next page.

We need to subtract out that strut when storing the header's height for use
later (when we paint the header across pages and have to move content rows
below it).

Also, when figuring out where the header starts on a series of pages we need
to account for any strut it has so that we identify the place where the header
group starts rather than just the table.

BUG= 634404 

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

[add] https://crrev.com/581269dfb3c302163b973edcbbbf508291fe6671/third_party/WebKit/LayoutTests/fragmentation/repeating-thead-multiple-tables-page-border-expected.html
[add] https://crrev.com/581269dfb3c302163b973edcbbbf508291fe6671/third_party/WebKit/LayoutTests/fragmentation/repeating-thead-multiple-tables-page-border.html
[add] https://crrev.com/581269dfb3c302163b973edcbbbf508291fe6671/third_party/WebKit/LayoutTests/fragmentation/single-cells-multiple-tables-no-repeating-thead-expected.txt
[add] https://crrev.com/581269dfb3c302163b973edcbbbf508291fe6671/third_party/WebKit/LayoutTests/fragmentation/single-cells-multiple-tables-no-repeating-thead.html
[modify] https://crrev.com/581269dfb3c302163b973edcbbbf508291fe6671/third_party/WebKit/Source/core/layout/LayoutTable.cpp
[modify] https://crrev.com/581269dfb3c302163b973edcbbbf508291fe6671/third_party/WebKit/Source/core/layout/LayoutTableSection.cpp
[modify] https://crrev.com/581269dfb3c302163b973edcbbbf508291fe6671/third_party/WebKit/Source/core/paint/TableSectionPainter.cpp

Project Member

Comment 3 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/+/998d7a0d4ae2bacfb42f38b7c81a85ffad8c6f80

commit 998d7a0d4ae2bacfb42f38b7c81a85ffad8c6f80
Author: Robert Hogan <robhogan@gmail.com>
Date: Sun Sep 25 18:40:42 2016

Offset repeating theads correctly when two tables adjoin at a page border

When a header group is near a page border and doesn't fit on the page
it may get a pagination strut to move it to the top of the next page.

We need to subtract out that strut when storing the header's height for use
later (when we paint the header across pages and have to move content rows
below it).

Also, when figuring out where the header starts on a series of pages we need
to account for any strut it has so that we identify the place where the header
group starts rather than just the table.

BUG= 634404 

Review-Url: https://codereview.chromium.org/2219153002
Cr-Commit-Position: refs/heads/master@{#411747}
(cherry picked from commit 581269dfb3c302163b973edcbbbf508291fe6671)

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

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

[add] https://crrev.com/998d7a0d4ae2bacfb42f38b7c81a85ffad8c6f80/third_party/WebKit/LayoutTests/fragmentation/repeating-thead-multiple-tables-page-border-expected.html
[add] https://crrev.com/998d7a0d4ae2bacfb42f38b7c81a85ffad8c6f80/third_party/WebKit/LayoutTests/fragmentation/repeating-thead-multiple-tables-page-border.html
[add] https://crrev.com/998d7a0d4ae2bacfb42f38b7c81a85ffad8c6f80/third_party/WebKit/LayoutTests/fragmentation/single-cells-multiple-tables-no-repeating-thead-expected.txt
[add] https://crrev.com/998d7a0d4ae2bacfb42f38b7c81a85ffad8c6f80/third_party/WebKit/LayoutTests/fragmentation/single-cells-multiple-tables-no-repeating-thead.html
[modify] https://crrev.com/998d7a0d4ae2bacfb42f38b7c81a85ffad8c6f80/third_party/WebKit/Source/core/layout/LayoutTable.cpp
[modify] https://crrev.com/998d7a0d4ae2bacfb42f38b7c81a85ffad8c6f80/third_party/WebKit/Source/core/layout/LayoutTableSection.cpp
[modify] https://crrev.com/998d7a0d4ae2bacfb42f38b7c81a85ffad8c6f80/third_party/WebKit/Source/core/paint/TableSectionPainter.cpp

Cc: rnimmagadda@chromium.org
Labels: TE-Verified-M53 TE-Verified-53.0.2785.146
Verified the fix on Ubuntu Trusty (14.04) for Google Chrome Stable Version - 53.0.2785.146

Screen-recording is attached.

TE-Verified Labels are added.

@robhogan: Could you also please have a look and confirm the fix.

Thank you.
634404.ogv
4.4 MB View Download

Comment 5 Deleted

Comment 6 Deleted

Comment 7 by gov...@chromium.org, Sep 28 2016

P3 bug got merged to Stable without Merge request and approval. Change listed at #2 has been in Canary/Dev/Beta since August 12th. No milestone label applied to the bug.


Status: Fixed (was: Assigned)

Sign in to add a comment