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

Issue 2297873002: Remove unnecessary checks in PaintLayer::backgroundIsKnownToBeOpaqueInRect (Closed)

Created:
4 years, 3 months ago by Stephen Chennney
Modified:
4 years, 3 months ago
Reviewers:
chrishtr
CC:
blink-reviews, blink-reviews-paint_chromium.org, chromium-reviews, dshwang, slimming-paint-reviews_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Remove unnecessary checks in PaintLayer::backgroundIsKnownToBeOpaqueInRect The PaintLayer::backgroundIsKnownToBeOpaque method is currently only called by GraphicsLayers on their owning paint layer, or by the recursive child call. The former is by definition always called on a self painting layer, while the latter already has a test to prevent consideration of layers that do not paint into the backing in question. Hence we can remove the check for self painting layer status. Also convert a test for dirty stacking order lists to a DCHECK, because the test never fires on any layout test. These checks cause chicken-and-egg problems when the method is called by the layer itself in order to identify compositing reasons. In such cases we are not concerned with self layer status; we are in fact trying to determine that status. R=chrishtr@chromium.org BUG=381840 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Committed: https://crrev.com/a879db6c440ffd9c296b1a3f272458212eac48b5 Cr-Commit-Position: refs/heads/master@{#416628}

Patch Set 1 #

Total comments: 3

Patch Set 2 : Fix spelling #

Total comments: 1

Patch Set 3 : Rebased. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+9 lines, -10 lines) Patch
M third_party/WebKit/Source/core/paint/PaintLayer.cpp View 1 2 3 chunks +9 lines, -10 lines 0 comments Download

Messages

Total messages: 37 (21 generated)
Stephen Chennney
Clean up in preparation for compositing opaque scrollers. Should be no change in behavior based ...
4 years, 3 months ago (2016-08-30 19:58:31 UTC) #4
chrishtr
https://codereview.chromium.org/2297873002/diff/1/third_party/WebKit/Source/core/paint/PaintLayer.cpp File third_party/WebKit/Source/core/paint/PaintLayer.cpp (left): https://codereview.chromium.org/2297873002/diff/1/third_party/WebKit/Source/core/paint/PaintLayer.cpp#oldcode2400 third_party/WebKit/Source/core/paint/PaintLayer.cpp:2400: if (!isSelfPaintingLayer() && !hasSelfPaintingLayerDescendant()) childBackgroundIsKnownToBeOpaqueInRect calls backgroundIsKnownToBeOpaqueInRect on all ...
4 years, 3 months ago (2016-08-30 20:49:02 UTC) #7
Stephen Chennney
https://codereview.chromium.org/2297873002/diff/1/third_party/WebKit/Source/core/paint/PaintLayer.cpp File third_party/WebKit/Source/core/paint/PaintLayer.cpp (left): https://codereview.chromium.org/2297873002/diff/1/third_party/WebKit/Source/core/paint/PaintLayer.cpp#oldcode2400 third_party/WebKit/Source/core/paint/PaintLayer.cpp:2400: if (!isSelfPaintingLayer() && !hasSelfPaintingLayerDescendant()) On 2016/08/30 20:49:01, chrishtr wrote: ...
4 years, 3 months ago (2016-08-30 20:58:51 UTC) #8
chrishtr
https://codereview.chromium.org/2297873002/diff/1/third_party/WebKit/Source/core/paint/PaintLayer.cpp File third_party/WebKit/Source/core/paint/PaintLayer.cpp (left): https://codereview.chromium.org/2297873002/diff/1/third_party/WebKit/Source/core/paint/PaintLayer.cpp#oldcode2400 third_party/WebKit/Source/core/paint/PaintLayer.cpp:2400: if (!isSelfPaintingLayer() && !hasSelfPaintingLayerDescendant()) On 2016/08/30 at 20:58:51, Stephen ...
4 years, 3 months ago (2016-08-30 21:15:39 UTC) #9
Stephen Chennney
On 2016/08/30 21:15:39, chrishtr wrote: > https://codereview.chromium.org/2297873002/diff/1/third_party/WebKit/Source/core/paint/PaintLayer.cpp > File third_party/WebKit/Source/core/paint/PaintLayer.cpp (left): > > https://codereview.chromium.org/2297873002/diff/1/third_party/WebKit/Source/core/paint/PaintLayer.cpp#oldcode2400 > ...
4 years, 3 months ago (2016-08-31 17:08:51 UTC) #15
chrishtr
On 2016/08/31 at 17:08:51, schenney wrote: > On 2016/08/30 21:15:39, chrishtr wrote: > > https://codereview.chromium.org/2297873002/diff/1/third_party/WebKit/Source/core/paint/PaintLayer.cpp ...
4 years, 3 months ago (2016-08-31 18:40:41 UTC) #18
Stephen Chennney
On 2016/08/31 18:40:41, chrishtr wrote: > On 2016/08/31 at 17:08:51, schenney wrote: > > On ...
4 years, 3 months ago (2016-08-31 20:17:31 UTC) #21
chrishtr
Ok. Fair points about it being safe enough for non-self-painting layers. Last question: how does ...
4 years, 3 months ago (2016-09-01 23:24:59 UTC) #22
Stephen Chennney
On 2016/09/01 23:24:59, chrishtr wrote: > Ok. Fair points about it being safe enough for ...
4 years, 3 months ago (2016-09-02 18:44:10 UTC) #24
chrishtr
lgtm
4 years, 3 months ago (2016-09-02 19:57:52 UTC) #25
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/2297873002/80001
4 years, 3 months ago (2016-09-02 19:58:29 UTC) #27
commit-bot: I haz the power
Try jobs failed on following builders: win_chromium_x64_rel_ng on master.tryserver.chromium.win (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_x64_rel_ng/builds/273974)
4 years, 3 months ago (2016-09-02 21:56:35 UTC) #29
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/2297873002/140001
4 years, 3 months ago (2016-09-06 13:21:20 UTC) #33
commit-bot: I haz the power
Committed patchset #3 (id:140001)
4 years, 3 months ago (2016-09-06 15:04:58 UTC) #34
commit-bot: I haz the power
Patchset 3 (id:??) landed as https://crrev.com/a879db6c440ffd9c296b1a3f272458212eac48b5 Cr-Commit-Position: refs/heads/master@{#416628}
4 years, 3 months ago (2016-09-06 15:08:34 UTC) #36
lushnikov
4 years, 3 months ago (2016-09-06 23:51:59 UTC) #37
Message was sent while issue was closed.
A revert of this CL (patchset #3 id:140001) has been created in
https://codereview.chromium.org/2315693003/ by lushnikov@chromium.org.

The reason for reverting is: This makes Win Tests builder to hit the DCHECK,
e.g.:

https://build.chromium.org/p/chromium.win/builders/Win7%20Tests%20%28dbg%29%2...


.

Powered by Google App Engine
This is Rietveld 408576698