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 1950573003: Improve handling of PaintInvalidationLayer (renamed to PaintInvalidationSubtree) (Closed)

Created:
4 years, 7 months ago by Xianzhu
Modified:
4 years, 7 months ago
Reviewers:
chrishtr
CC:
blink-reviews, blink-reviews-layout_chromium.org, blink-reviews-paint_chromium.org, blink-reviews-platform-graphics_chromium.org, blink-reviews-style_chromium.org, Rik, chromium-reviews, danakj+watch_chromium.org, dshwang, drott+blinkwatch_chromium.org, krit, eae+blinkwatch, f(malita), jbroman, jchaffraix+rendering, Justin Novosad, kinuko+watch, leviw+renderwatch, pdr+graphicswatchlist_chromium.org, pdr+renderingwatchlist_chromium.org, rwlbuis, Stephen Chennney, slimming-paint-reviews_chromium.org, szager+layoutwatch_chromium.org, zoltan1
Base URL:
https://chromium.googlesource.com/chromium/src.git@LocationChange
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Improve handling of PaintInvalidationLayer Rename PaintInvalidationLayer to PaintInvalidationSubtree. In LayoutObject::setShouldDoFullPaintInvalidationIncludingNonCompositingDescendants(), instead of traverse the tree to setShouldDoFullPaintInvalidation(), set PaintInvalidationSubtree on the root of the subtree. During paint invalidation, if a LayoutObject is marked PaintInvalidationSubtree, force full paint invalidation of the subtree (within the paintInvalidationContainer). BUG=410097 Committed: https://crrev.com/2848739b13b1f454930307439ba00ddd55bb9b40 Cr-Commit-Position: refs/heads/master@{#392861}

Patch Set 1 #

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Patch Set 5 : #

Patch Set 6 : #

Total comments: 9

Patch Set 7 : #

Total comments: 2

Patch Set 8 : #

Patch Set 9 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+186 lines, -106 lines) Patch
M third_party/WebKit/LayoutTests/TestExpectations View 1 2 3 4 5 6 7 8 2 chunks +81 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutBox.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutBox.cpp View 1 2 3 4 5 6 7 8 2 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutBoxModelObject.cpp View 1 2 3 4 5 6 3 chunks +4 lines, -7 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutObject.h View 1 2 3 4 5 6 2 chunks +2 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutObject.cpp View 1 2 3 4 5 6 7 8 9 chunks +20 lines, -29 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutTable.cpp View 1 2 3 4 5 6 1 chunk +2 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/layout/PaintInvalidationState.h View 1 2 3 4 5 6 3 chunks +17 lines, -7 lines 0 comments Download
M third_party/WebKit/Source/core/layout/PaintInvalidationState.cpp View 1 2 3 4 5 6 7 5 chunks +38 lines, -20 lines 0 comments Download
M third_party/WebKit/Source/core/layout/VisualRectMappingTest.cpp View 1 2 3 4 5 6 7 8 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/layout/svg/LayoutSVGInline.cpp View 1 2 3 4 1 chunk +1 line, -7 lines 0 comments Download
M third_party/WebKit/Source/core/layout/svg/LayoutSVGModelObject.cpp View 1 2 3 4 1 chunk +2 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/core/layout/svg/LayoutSVGText.cpp View 1 2 3 4 1 chunk +1 line, -7 lines 0 comments Download
M third_party/WebKit/Source/core/style/ComputedStyle.h View 1 2 3 4 5 6 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/core/style/ComputedStyle.cpp View 1 2 chunks +3 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/core/style/StyleDifference.h View 2 chunks +5 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/PaintInvalidationReason.h View 1 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/platform/graphics/PaintInvalidationReason.cpp View 1 1 chunk +2 lines, -2 lines 0 comments Download

Messages

Total messages: 19 (6 generated)
Xianzhu
4 years, 7 months ago (2016-05-05 23:53:40 UTC) #3
Xianzhu
https://codereview.chromium.org/1950573003/diff/100001/third_party/WebKit/Source/core/layout/LayoutBoxModelObject.cpp File third_party/WebKit/Source/core/layout/LayoutBoxModelObject.cpp (left): https://codereview.chromium.org/1950573003/diff/100001/third_party/WebKit/Source/core/layout/LayoutBoxModelObject.cpp#oldcode402 third_party/WebKit/Source/core/layout/LayoutBoxModelObject.cpp:402: paintInvalidationState.pushDelayedPaintInvalidationTarget(*this); This is moved into PaintInvalidationState::updateForChildren().
4 years, 7 months ago (2016-05-05 23:56:33 UTC) #4
Xianzhu
ping...
4 years, 7 months ago (2016-05-09 18:28:20 UTC) #5
chrishtr
Still working on it. It's a big CL, sorry for the delay.
4 years, 7 months ago (2016-05-09 21:45:51 UTC) #6
chrishtr
https://codereview.chromium.org/1950573003/diff/100001/third_party/WebKit/Source/core/layout/LayoutObject.cpp File third_party/WebKit/Source/core/layout/LayoutObject.cpp (left): https://codereview.chromium.org/1950573003/diff/100001/third_party/WebKit/Source/core/layout/LayoutObject.cpp#oldcode1842 third_party/WebKit/Source/core/layout/LayoutObject.cpp:1842: if (diff.needsPaintInvalidationLayer() && !hasLayer()) { Why can this code ...
4 years, 7 months ago (2016-05-09 22:20:42 UTC) #7
Xianzhu
https://codereview.chromium.org/1950573003/diff/100001/third_party/WebKit/Source/core/layout/LayoutObject.cpp File third_party/WebKit/Source/core/layout/LayoutObject.cpp (left): https://codereview.chromium.org/1950573003/diff/100001/third_party/WebKit/Source/core/layout/LayoutObject.cpp#oldcode1842 third_party/WebKit/Source/core/layout/LayoutObject.cpp:1842: if (diff.needsPaintInvalidationLayer() && !hasLayer()) { On 2016/05/09 22:20:41, chrishtr ...
4 years, 7 months ago (2016-05-10 17:17:12 UTC) #8
chrishtr
https://codereview.chromium.org/1950573003/diff/120001/third_party/WebKit/Source/core/layout/PaintInvalidationState.cpp File third_party/WebKit/Source/core/layout/PaintInvalidationState.cpp (right): https://codereview.chromium.org/1950573003/diff/120001/third_party/WebKit/Source/core/layout/PaintInvalidationState.cpp#newcode151 third_party/WebKit/Source/core/layout/PaintInvalidationState.cpp:151: m_forcedSubtreeInvalidationFlags &= FullInvalidationForStackedContents; |= instead of &= ?
4 years, 7 months ago (2016-05-10 18:15:54 UTC) #9
Xianzhu
https://codereview.chromium.org/1950573003/diff/100001/third_party/WebKit/Source/core/layout/LayoutObject.cpp File third_party/WebKit/Source/core/layout/LayoutObject.cpp (left): https://codereview.chromium.org/1950573003/diff/100001/third_party/WebKit/Source/core/layout/LayoutObject.cpp#oldcode1842 third_party/WebKit/Source/core/layout/LayoutObject.cpp:1842: if (diff.needsPaintInvalidationLayer() && !hasLayer()) { On 2016/05/10 17:17:12, Xianzhu ...
4 years, 7 months ago (2016-05-10 19:09:20 UTC) #10
chrishtr
lgtm
4 years, 7 months ago (2016-05-11 01:21:23 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1950573003/160001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1950573003/160001
4 years, 7 months ago (2016-05-11 03:52:57 UTC) #14
commit-bot: I haz the power
Committed patchset #9 (id:160001)
4 years, 7 months ago (2016-05-11 05:33:55 UTC) #16
commit-bot: I haz the power
Patchset 9 (id:??) landed as https://crrev.com/2848739b13b1f454930307439ba00ddd55bb9b40 Cr-Commit-Position: refs/heads/master@{#392861}
4 years, 7 months ago (2016-05-11 05:35:05 UTC) #18
prasadv
4 years, 7 months ago (2016-05-11 16:59:42 UTC) #19
Message was sent while issue was closed.
A revert of this CL (patchset #9 id:160001) has been created in
https://codereview.chromium.org/1968123002/ by prasadv@chromium.org.

The reason for reverting is: [Perf bot health sheriff]Breaking blink_perf.css
benchmarks on chromium.perf waterfall..

Powered by Google App Engine
This is Rietveld 408576698