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

Issue 2652273004: Paint invisible layer content in presence of composited animations. (Closed)

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

Description

Paint invisible layer content in presence of composited animations. For SPv2 we must paint layer content even if the content is invisible w.r.t. opacity. This is required (a) so that we have a paint chunk, which will produce a layer, which is required by the animation subsystem, and (b) so that cc has the paint commands needed in order to actually enact the animation compositor-side through mutating the property tree state and re-rastering as needed. In SPv1 this code path (PaintLayerPainter::paintedOutputInvisible) is skipped when painting a layer for composited animated content. Instead of calling PaintLayerPainter::paint(), we end up painting the GraphicsLayer for the composited animation via CompositedLayerMapping::doPaintTask -> PaintLayerPainter::paintLayerContents. BUG=684842 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Review-Url: https://codereview.chromium.org/2652273004 Cr-Commit-Position: refs/heads/master@{#446605} Committed: https://chromium.googlesource.com/chromium/src/+/9ce0839c605303284391c7efacccdcc00dc38437

Patch Set 1 #

Total comments: 6

Patch Set 2 : Add tests and sync to head. #

Messages

Total messages: 14 (6 generated)
wkorman
Will add tests presuming this passes initial review. https://codereview.chromium.org/2652273004/diff/1/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp File third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp (left): https://codereview.chromium.org/2652273004/diff/1/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp#oldcode514 third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp:514: CompositingReasonFinder::requiresCompositingForEffectAnimation(style); ...
3 years, 11 months ago (2017-01-26 22:47:56 UTC) #3
pdr.
LGTM
3 years, 11 months ago (2017-01-26 22:49:35 UTC) #4
pdr.
https://codereview.chromium.org/2652273004/diff/1/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp File third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp (right): https://codereview.chromium.org/2652273004/diff/1/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp#newcode74 third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp:74: if (layoutObject.styleRef().opacity()) Do you need to check opacity > ...
3 years, 11 months ago (2017-01-26 22:50:38 UTC) #5
wkorman
https://codereview.chromium.org/2652273004/diff/1/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp File third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp (right): https://codereview.chromium.org/2652273004/diff/1/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp#newcode74 third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp:74: if (layoutObject.styleRef().opacity()) On 2017/01/26 at 22:50:38, pdr. wrote: > ...
3 years, 11 months ago (2017-01-26 23:09:12 UTC) #6
pdr.
On 2017/01/26 at 23:09:12, wkorman wrote: > https://codereview.chromium.org/2652273004/diff/1/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp > File third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp (right): > > https://codereview.chromium.org/2652273004/diff/1/third_party/WebKit/Source/core/paint/PaintLayerPainter.cpp#newcode74 ...
3 years, 11 months ago (2017-01-27 00:48:45 UTC) #7
wkorman
Added tests. https://codereview.chromium.org/2652273004/diff/1/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp File third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp (left): https://codereview.chromium.org/2652273004/diff/1/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp#oldcode514 third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp:514: CompositingReasonFinder::requiresCompositingForEffectAnimation(style); On 2017/01/26 at 22:47:56, wkorman wrote: ...
3 years, 10 months ago (2017-01-27 03:53:12 UTC) #8
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/2652273004/20001
3 years, 10 months ago (2017-01-27 03:53:55 UTC) #11
commit-bot: I haz the power
3 years, 10 months ago (2017-01-27 05:48:44 UTC) #14
Message was sent while issue was closed.
Committed patchset #2 (id:20001) as
https://chromium.googlesource.com/chromium/src/+/9ce0839c605303284391c7efaccc...

Powered by Google App Engine
This is Rietveld 408576698