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

Issue 2549553002: Verify paintedOutputOfObjectHasNoEffectRegardlessOfSize during painting (Closed)

Created:
4 years ago by Xianzhu
Modified:
4 years ago
Reviewers:
chrishtr, pdr.
CC:
ajuma+watch_chromium.org, blink-reviews, blink-reviews-platform-graphics_chromium.org, Rik, chromium-reviews, danakj+watch_chromium.org, dshwang, drott+blinkwatch_chromium.org, krit, f(malita), jbroman, Justin Novosad, pdr+graphicswatchlist_chromium.org, rwlbuis, Stephen Chennney
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Verify paintedOutputOfObjectHasNoEffectRegardlessOfSize during painting Checks that nothing should be painted if paintedOutputOfObjectHasNoEffectRegardlessOfSize() is true, to catch under-invalidations caused by it. The verification also works during the first paint, so the existing layout tests have enough coverage for the function. Also fixed some check failures: - LayoutDetailsMarker: was actual under-invalidation. - LayoutView: as display item client of frame scroll corner. Was not an actual under-invalidation because scroll controls are invalidated separately, but change code to avoid the check failure. This is not applicable to rootLayerScrolling. - LayoutSVGBlock (LayoutSVGText and LayoutSVGForeignObject): now assume there is always SVG effects. Objects painted in SkPictureBuilder are not checked. One example is LayoutSVGResourceClipper which doesn't have any painting on the backing, but may output paint operations in SkPictureBuilder for the clipped object. BUG=669327 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Committed: https://crrev.com/31a69618a214eb36bad90baa1a4f4d6bc15d008e Cr-Commit-Position: refs/heads/master@{#436455}

Patch Set 1 #

Patch Set 2 : - #

Patch Set 3 : -- #

Patch Set 4 : - #

Patch Set 5 : - #

Patch Set 6 : rebaseline-cl #

Patch Set 7 : - #

Total comments: 2

Patch Set 8 : Remove from LayoutObject.h #

Unified diffs Side-by-side diffs Delta from patch set Stats (+106 lines, -15 lines) Patch
M third_party/WebKit/LayoutTests/paint/invalidation/resize-scrollable-iframe-expected.txt View 1 2 3 4 5 2 chunks +14 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/linux/paint/invalidation/resize-scrollable-iframe-expected.txt View 1 2 3 4 5 2 chunks +14 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/mac/paint/invalidation/line-flow-with-floats-9-expected.txt View 1 2 3 4 5 2 chunks +9 lines, -0 lines 0 comments Download
M third_party/WebKit/LayoutTests/platform/win/paint/invalidation/line-flow-with-floats-9-expected.txt View 1 2 3 4 5 2 chunks +9 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutDetailsMarker.h View 1 2 3 1 chunk +3 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutObject.h View 1 2 3 4 5 6 7 1 chunk +0 lines, -12 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutView.h View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/LayoutView.cpp View 1 2 3 4 1 chunk +9 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/svg/LayoutSVGBlock.h View 1 2 3 4 1 chunk +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h View 1 chunk +14 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/DrawingRecorder.cpp View 1 2 3 4 5 6 1 chunk +12 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/PaintController.h View 1 2 3 4 5 6 2 chunks +6 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/paint/SkPictureBuilder.cpp View 1 2 3 4 5 6 2 chunks +9 lines, -1 line 0 comments Download

Messages

Total messages: 46 (37 generated)
Xianzhu
4 years ago (2016-12-04 05:13:53 UTC) #30
chrishtr
lgtm
4 years ago (2016-12-05 21:20:28 UTC) #32
chrishtr
https://codereview.chromium.org/2549553002/diff/120001/third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h File third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h (right): https://codereview.chromium.org/2549553002/diff/120001/third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h#newcode68 third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h:68: virtual bool paintedOutputOfObjectHasNoEffectRegardlessOfSize() const { Remove this method from ...
4 years ago (2016-12-05 21:21:12 UTC) #34
Xianzhu
https://codereview.chromium.org/2549553002/diff/120001/third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h File third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h (right): https://codereview.chromium.org/2549553002/diff/120001/third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h#newcode68 third_party/WebKit/Source/platform/graphics/paint/DisplayItemClient.h:68: virtual bool paintedOutputOfObjectHasNoEffectRegardlessOfSize() const { On 2016/12/05 21:21:12, chrishtr ...
4 years ago (2016-12-05 21:29:15 UTC) #36
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/2549553002/140001
4 years ago (2016-12-05 21:29:55 UTC) #39
commit-bot: I haz the power
Committed patchset #8 (id:140001)
4 years ago (2016-12-05 23:43:22 UTC) #42
commit-bot: I haz the power
Patchset 8 (id:??) landed as https://crrev.com/31a69618a214eb36bad90baa1a4f4d6bc15d008e Cr-Commit-Position: refs/heads/master@{#436455}
4 years ago (2016-12-05 23:47:01 UTC) #44
Xianzhu
A revert of this CL (patchset #8 id:140001) has been created in https://codereview.chromium.org/2550333002/ by wangxianzhu@chromium.org. ...
4 years ago (2016-12-06 01:01:21 UTC) #45
findit-for-me
4 years ago (2016-12-06 01:38:15 UTC) #46
Message was sent while issue was closed.
FYI: Findit identified this CL at revision 436455 as the culprit for
failures in the build cycles as shown on:
https://findit-for-me.appspot.com/waterfall/culprit?key=ag9zfmZpbmRpdC1mb3Itb...

Powered by Google App Engine
This is Rietveld 408576698