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

Issue 2840723005: Don't always invalidate collapsed borders during table layout (Closed)

Created:
3 years, 8 months ago by Xianzhu
Modified:
3 years, 7 months ago
Reviewers:
pdr., 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

Don't always invalidate collapsed borders during table layout Many layout changes e.g. resizing doesn't affect computed collapsed borders so don't need to invalidate collapsed borders. We need to invalidate collapsed borders when 1. Table sections are set need recalc (when table structure changes); 2. A cell is appended into a row (which could belong to 1 but we have an optimization not to recalc table sections if the added cell is the last cell of the table); 3. Border style changes; 4. border-collapse CSS property changes; This CL will reduce frame time of PerformanceTests/Mutation/large- table-row-height-change-with-collapsed-border.html (in https://codereview.chromium.org/2842313002/) by about 35% by avoiding unnecessary collapsed border recalculations. BUG=626748 Review-Url: https://codereview.chromium.org/2840723005 Cr-Commit-Position: refs/heads/master@{#467694} Committed: https://chromium.googlesource.com/chromium/src/+/bb2388b6cee45ca8cba764245b2886727b3fafb8

Patch Set 1 #

Total comments: 2
Unified diffs Side-by-side diffs Delta from patch set Stats (+16 lines, -14 lines) Patch
M third_party/WebKit/Source/core/layout/LayoutTable.h View 3 chunks +9 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutTable.cpp View 3 chunks +6 lines, -8 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutTableRow.cpp View 1 chunk +1 line, -0 lines 2 comments Download

Depends on Patchset:

Dependent Patchsets:

Messages

Total messages: 14 (9 generated)
Xianzhu
3 years, 8 months ago (2017-04-26 21:45:35 UTC) #7
wkorman
lgtm https://codereview.chromium.org/2840723005/diff/1/third_party/WebKit/Source/core/layout/LayoutTableRow.cpp File third_party/WebKit/Source/core/layout/LayoutTableRow.cpp (right): https://codereview.chromium.org/2840723005/diff/1/third_party/WebKit/Source/core/layout/LayoutTableRow.cpp#newcode175 third_party/WebKit/Source/core/layout/LayoutTableRow.cpp:175: enclosing_table->InvalidateCollapsedBorders(); Would we consider further optimizing this case? ...
3 years, 8 months ago (2017-04-26 23:57:35 UTC) #8
Xianzhu
https://codereview.chromium.org/2840723005/diff/1/third_party/WebKit/Source/core/layout/LayoutTableRow.cpp File third_party/WebKit/Source/core/layout/LayoutTableRow.cpp (right): https://codereview.chromium.org/2840723005/diff/1/third_party/WebKit/Source/core/layout/LayoutTableRow.cpp#newcode175 third_party/WebKit/Source/core/layout/LayoutTableRow.cpp:175: enclosing_table->InvalidateCollapsedBorders(); On 2017/04/26 23:57:35, wkorman wrote: > Would we ...
3 years, 7 months ago (2017-04-27 15:43:40 UTC) #9
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/2840723005/1
3 years, 7 months ago (2017-04-27 15:44:19 UTC) #11
commit-bot: I haz the power
3 years, 7 months ago (2017-04-27 15:52:11 UTC) #14
Message was sent while issue was closed.
Committed patchset #1 (id:1) as
https://chromium.googlesource.com/chromium/src/+/bb2388b6cee45ca8cba764245b28...

Powered by Google App Engine
This is Rietveld 408576698