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

Issue 1584903002: Improvement handling of background and outline paint phases (Closed)

Created:
4 years, 11 months ago by Xianzhu
Modified:
4 years, 11 months ago
Reviewers:
pdr., chrishtr
CC:
blink-reviews, blink-reviews-layout_chromium.org, blink-reviews-paint_chromium.org, chromium-reviews, dshwang, eae+blinkwatch, jchaffraix+rendering, leviw+renderwatch, pdr+renderingwatchlist_chromium.org, slimming-paint-reviews_chromium.org, szager+layoutwatch_chromium.org, zoltan1
Base URL:
https://chromium.googlesource.com/chromium/src.git@PaintPhaseRename
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Improvement handling of background and outline paint phases - Add 'Only' postfix to PaintPhaseSelfBlockBackground PaintPhaseDescendantBlockBackgrounds, PaintPhaseSelfOutline and PaintPhaseDescendantOutlines; - Add shouldPaintSelfBlockBackground(), shouldPaintSelfOutline(), shouldPaintDescendantBlockBackgrounds(), shouldPaintDescendantOutlines(); - Use PaintInfo::forDescendants(); - Fix improper handling of the paint phases in TablePainter, TableSectionPainter and TableRowPainter. Previously they paint descendant outlines in PaintPhaseSelfOutlineOnly and ignore PaintPhaseDescendantOutlinesOnly. - Add checks/early returns for PaintPhaseSelfBlockBackgroundOnly and PaintPhaseSelfOutlineOnly to avoid execution of unnecessary code. BUG=574938 Committed: https://crrev.com/7cbfbcef3ed11feafc3f77c0225b73008abb6d85 Cr-Commit-Position: refs/heads/master@{#369657}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : #

Total comments: 4

Patch Set 6 : Fix TablePainter and TableRowPainter #

Total comments: 4

Patch Set 7 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+169 lines, -135 lines) Patch
M third_party/WebKit/Source/core/layout/LayoutReplaced.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutTextControlSingleLine.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/BlockPainter.cpp View 1 2 3 6 chunks +32 lines, -34 lines 0 comments Download
M third_party/WebKit/Source/core/paint/BoxClipper.cpp View 1 1 chunk +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/FileUploadControlPainter.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/InlineFlowBoxPainter.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/InlinePainter.cpp View 1 2 3 1 chunk +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/paint/InlineTextBoxPainter.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/LayoutObjectDrawingRecorderTest.cpp View 1 chunk +5 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/core/paint/LineBoxListPainter.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/ObjectPainter.cpp View 1 2 3 4 5 6 3 chunks +19 lines, -19 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintInfo.h View 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintInfoTest.cpp View 6 chunks +6 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp View 1 4 chunks +6 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintPhase.h View 3 chunks +26 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PartPainter.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/ReplacedPainter.cpp View 1 chunk +2 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/paint/SVGContainerPainter.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/SVGImagePainter.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/SVGRootPainter.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/SVGShapePainter.cpp View 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/paint/TablePainter.cpp View 1 2 3 4 5 6 1 chunk +25 lines, -29 lines 0 comments Download
M third_party/WebKit/Source/core/paint/TableRowPainter.cpp View 1 2 3 4 5 1 chunk +14 lines, -4 lines 0 comments Download
M third_party/WebKit/Source/core/paint/TableSectionPainter.cpp View 1 2 7 chunks +14 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/core/paint/TextPainterTest.cpp View 1 chunk +1 line, -1 line 0 comments Download

Depends on Patchset:

Messages

Total messages: 17 (7 generated)
Xianzhu
4 years, 11 months ago (2016-01-13 22:05:23 UTC) #4
Xianzhu
The BlockPainter part has a bug. Fixing.
4 years, 11 months ago (2016-01-14 01:04:33 UTC) #5
Xianzhu
On 2016/01/14 01:04:33, Xianzhu wrote: > The BlockPainter part has a bug. Fixing. Done.
4 years, 11 months ago (2016-01-14 01:15:25 UTC) #6
pdr.
https://codereview.chromium.org/1584903002/diff/80001/third_party/WebKit/Source/core/paint/ObjectPainter.cpp File third_party/WebKit/Source/core/paint/ObjectPainter.cpp (right): https://codereview.chromium.org/1584903002/diff/80001/third_party/WebKit/Source/core/paint/ObjectPainter.cpp#newcode537 third_party/WebKit/Source/core/paint/ObjectPainter.cpp:537: if (paintInfo.phase == PaintPhaseSelection || paintInfo.phase == PaintPhaseTextClip) { ...
4 years, 11 months ago (2016-01-14 19:51:50 UTC) #7
pdr.
LGTM https://codereview.chromium.org/1584903002/diff/100001/third_party/WebKit/Source/core/paint/PaintPhase.h File third_party/WebKit/Source/core/paint/PaintPhase.h (right): https://codereview.chromium.org/1584903002/diff/100001/third_party/WebKit/Source/core/paint/PaintPhase.h#newcode92 third_party/WebKit/Source/core/paint/PaintPhase.h:92: return phase == PaintPhaseBlockBackground || phase == PaintPhaseSelfBlockBackgroundOnly; ...
4 years, 11 months ago (2016-01-14 19:56:45 UTC) #8
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1584903002/120001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1584903002/120001
4 years, 11 months ago (2016-01-15 00:46:03 UTC) #11
Xianzhu
https://codereview.chromium.org/1584903002/diff/80001/third_party/WebKit/Source/core/paint/ObjectPainter.cpp File third_party/WebKit/Source/core/paint/ObjectPainter.cpp (right): https://codereview.chromium.org/1584903002/diff/80001/third_party/WebKit/Source/core/paint/ObjectPainter.cpp#newcode537 third_party/WebKit/Source/core/paint/ObjectPainter.cpp:537: if (paintInfo.phase == PaintPhaseSelection || paintInfo.phase == PaintPhaseTextClip) { ...
4 years, 11 months ago (2016-01-15 01:05:33 UTC) #12
pdr.
Lgtm
4 years, 11 months ago (2016-01-15 01:48:48 UTC) #13
commit-bot: I haz the power
Committed patchset #7 (id:120001)
4 years, 11 months ago (2016-01-15 02:14:12 UTC) #15
commit-bot: I haz the power
4 years, 11 months ago (2016-01-15 02:15:36 UTC) #17
Message was sent while issue was closed.
Patchset 7 (id:??) landed as
https://crrev.com/7cbfbcef3ed11feafc3f77c0225b73008abb6d85
Cr-Commit-Position: refs/heads/master@{#369657}

Powered by Google App Engine
This is Rietveld 408576698