Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(114)

Issue 2861653006: Fix LayoutTableRow::AddOverflowFromCell() (Closed)

Created:
3 years, 7 months ago by Xianzhu
Modified:
3 years, 7 months ago
Reviewers:
dgrogan, wkorman
CC:
chromium-reviews, pdr+renderingwatchlist_chromium.org, zoltan1, blink-reviews-layout_chromium.org, szager+layoutwatch_chromium.org, eae+blinkwatch, leviw+renderwatch, jchaffraix+rendering, blink-reviews
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix LayoutTableRow::AddOverflowFromCell() This fixes the following problems: 1. Incorrect offset of contents overflow from cell: This was changed in https://codereview.chromium.org/2786463004 Both the old version and the new version are incorrect: Should adjust by the difference of locations of row and cell. 2. Missing cell overflow propagating to row when the cell doesn't span rows. 3. Checking of HasBackground made row's visual overflow depend on the existence of background. Just remove the check to avoid tricky logic which otherwise would be required to invalidate row's overflow on background existence change. 4. Cell generates not only visual overflow, but also layout overflow (e.g. when there is a relative-positioned child). This fix doesn't change behavior because row doesn't use the layout overflow. However, this makes it possible to optimize LayoutTableSection:: ComputeOverflowFromCell() to just accumulate overflows from rows instead of all cells. The optimization will be in the next CL. BUG=719106, 603993, 646015 R=wkorman@chromium.org Review-Url: https://codereview.chromium.org/2861653006 . Cr-Commit-Position: refs/heads/master@{#470166} Committed: https://chromium.googlesource.com/chromium/src/+/0391059128167dc8dc8fdbcbc7d3e3b81b7edefb

Patch Set 1 #

Total comments: 1

Patch Set 2 : - #

Patch Set 3 : - #

Patch Set 4 : - #

Patch Set 5 : - #

Patch Set 6 : Rebaseline #

Patch Set 7 : Deflake the test #

Unified diffs Side-by-side diffs Delta from patch set Stats (+183 lines, -258 lines) Patch
M third_party/WebKit/LayoutTests/TestExpectations View 1 2 3 4 5 1 chunk +0 lines, -3 lines 0 comments Download
D third_party/WebKit/LayoutTests/paint/invalidation/hover-invalidation-table.html View 1 2 3 4 5 6 1 chunk +0 lines, -49 lines 0 comments Download
D third_party/WebKit/LayoutTests/paint/invalidation/hover-invalidation-table-expected.html View 1 2 3 4 5 6 1 chunk +0 lines, -31 lines 0 comments Download
M third_party/WebKit/LayoutTests/paint/invalidation/hover-invalidation-table-expected.txt View 1 2 3 4 5 6 1 chunk +0 lines, -26 lines 0 comments Download
A third_party/WebKit/LayoutTests/paint/invalidation/table/row-change-background-rowspan-cell.html View 1 2 3 4 5 6 1 chunk +34 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/paint/invalidation/table/row-change-background-rowspan-cell-expected.html View 1 2 3 4 5 6 1 chunk +27 lines, -0 lines 0 comments Download
A third_party/WebKit/LayoutTests/paint/invalidation/table/row-change-background-rowspan-cell-expected.txt View 1 2 3 4 5 6 1 chunk +24 lines, -0 lines 0 comments Download
D third_party/WebKit/LayoutTests/platform/linux/virtual/disable-spinvalidation/paint/invalidation/hover-invalidation-table-expected.txt View 1 2 3 4 5 1 chunk +0 lines, -26 lines 0 comments Download
D third_party/WebKit/LayoutTests/platform/mac-mac10.11/virtual/disable-spinvalidation/paint/invalidation/hover-invalidation-table-expected.txt View 1 2 3 4 5 1 chunk +0 lines, -26 lines 0 comments Download
D third_party/WebKit/LayoutTests/platform/mac-retina/virtual/disable-spinvalidation/paint/invalidation/hover-invalidation-table-expected.txt View 1 2 3 4 5 1 chunk +0 lines, -26 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/win7/virtual/disable-spinvalidation/paint/invalidation/hover-invalidation-table-expected.txt View 1 2 3 4 5 6 1 chunk +0 lines, -26 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutTableRow.cpp View 1 2 3 1 chunk +23 lines, -18 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutTableRowTest.cpp View 1 2 3 1 chunk +75 lines, -27 lines 0 comments Download

Dependent Patchsets:

Messages

Total messages: 43 (35 generated)
Xianzhu
https://codereview.chromium.org/2861653006/diff/1/third_party/WebKit/Source/core/layout/LayoutTableRow.cpp File third_party/WebKit/Source/core/layout/LayoutTableRow.cpp (left): https://codereview.chromium.org/2861653006/diff/1/third_party/WebKit/Source/core/layout/LayoutTableRow.cpp#oldcode309 third_party/WebKit/Source/core/layout/LayoutTableRow.cpp:309: cell_visual_overflow_rect.MoveBy(-Location()); cell_visual_overflow_rect is in cell's coordinates. To convert to ...
3 years, 7 months ago (2017-05-06 00:12:47 UTC) #4
Xianzhu
Now this patch fixes more issues of LayoutTableRow::AddOverflowFromCell(). https://codereview.chromium.org/2861653006/diff/100001/third_party/WebKit/LayoutTests/TestExpectations File third_party/WebKit/LayoutTests/TestExpectations (right): https://codereview.chromium.org/2861653006/diff/100001/third_party/WebKit/LayoutTests/TestExpectations#newcode75 third_party/WebKit/LayoutTests/TestExpectations:75: crbug.com/646015 ...
3 years, 7 months ago (2017-05-08 16:07:01 UTC) #24
wkorman
lgtm https://codereview.chromium.org/2861653006/diff/100001/third_party/WebKit/LayoutTests/TestExpectations File third_party/WebKit/LayoutTests/TestExpectations (right): https://codereview.chromium.org/2861653006/diff/100001/third_party/WebKit/LayoutTests/TestExpectations#newcode75 third_party/WebKit/LayoutTests/TestExpectations:75: crbug.com/646015 virtual/disable-spinvalidation/paint/invalidation/hover-invalidation-table.html [ NeedsRebaseline ] On 2017/05/08 16:07:00, ...
3 years, 7 months ago (2017-05-08 17:32:14 UTC) #29
Xianzhu
On 2017/05/08 17:32:14, wkorman wrote: > lgtm > > https://codereview.chromium.org/2861653006/diff/100001/third_party/WebKit/LayoutTests/TestExpectations > File third_party/WebKit/LayoutTests/TestExpectations (right): > ...
3 years, 7 months ago (2017-05-08 17:56:48 UTC) #31
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2861653006/120001
3 years, 7 months ago (2017-05-08 17:58:12 UTC) #34
commit-bot: I haz the power
CQ is trying da patch. Follow status at: https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2861653006/140001
3 years, 7 months ago (2017-05-08 20:47:46 UTC) #37
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_rel_ng/builds/439069)
3 years, 7 months ago (2017-05-09 02:21:28 UTC) #39
Xianzhu
3 years, 7 months ago (2017-05-09 03:49:40 UTC) #43
Message was sent while issue was closed.
Committed patchset #7 (id:140001) manually as
0391059128167dc8dc8fdbcbc7d3e3b81b7edefb (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698