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

Issue 2495973002: [SPv2] Add filter support in PaintArtifactCompositor (Closed)

Created:
4 years, 1 month ago by trchen
Modified:
4 years 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, pdr+graphicswatchlist_chromium.org, rwlbuis, Stephen Chennney
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

[SPv2] Add filter support in PaintArtifactCompositor This CL enables CSS filter support by doing the following: 1. Now each effect node creates a render surface by default. This wasn't needed before because cc can apply accumulated transparency on layers directly, as long as the layers don't overlap. Filters always need render surface to apply. This also fixes multiple overlapping paint chunks under same opacity group. 2. Ensure proper clip nesting in compositing tree. The concept of input clip is introduced in effect node. The input clip node itself is not stored on the effect node but only computed during property tree building. The input clip represents the cull region for the compositing children of the effect. The input clip must be a common ancestor of all child paint chunk's clip node and child effect's output clip. 3. Because of 2., we no longer creates dummy clip node for effects. 4. Copy blink effect filter to cc effect, which is one line. BUG=609937 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Committed: https://crrev.com/b91d2f0d740683d361ba648148f5dd492552fdfb Cr-Commit-Position: refs/heads/master@{#434888}

Patch Set 1 #

Total comments: 4

Patch Set 2 : rebase & add expectation & add comment #

Total comments: 1

Patch Set 3 : revise comments #

Patch Set 4 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+21 lines, -24 lines) Patch
M third_party/WebKit/LayoutTests/FlagExpectations/enable-slimming-paint-v2 View 1 2 3 5 chunks +0 lines, -7 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h View 1 1 chunk +5 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp View 1 2 3 chunks +10 lines, -6 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/compositing/PaintArtifactCompositor.cpp View 1 2 3 2 chunks +6 lines, -11 lines 0 comments Download

Messages

Total messages: 40 (23 generated)
trchen
Note: this CL depends on https://codereview.chromium.org/2490273004/
4 years, 1 month ago (2016-11-12 04:41:48 UTC) #5
pdr.
Looks great overall! https://codereview.chromium.org/2495973002/diff/1/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h File third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h (right): https://codereview.chromium.org/2495973002/diff/1/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h#newcode73 third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h:73: const ClipPaintPropertyNode* inputClipOfCurrentEffect = nullptr; Nit: ...
4 years, 1 month ago (2016-11-14 19:25:07 UTC) #8
chrishtr
https://codereview.chromium.org/2495973002/diff/1/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp File third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp (right): https://codereview.chromium.org/2495973002/diff/1/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp#newcode387 third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp:387: expansionHint = outputClip; Why is it called expansionHint? It's ...
4 years, 1 month ago (2016-11-14 19:45:10 UTC) #10
chrishtr
Also, please add some newly passing SPv2 tests that involve effects.
4 years, 1 month ago (2016-11-14 19:45:41 UTC) #11
chrishtr
ping - what's the status of this CL?
4 years, 1 month ago (2016-11-17 20:43:22 UTC) #12
trchen
Waiting for a dependency to land. Then I'll update FlagExpectation.
4 years, 1 month ago (2016-11-17 22:10:00 UTC) #13
trchen
https://codereview.chromium.org/2495973002/diff/1/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp File third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp (right): https://codereview.chromium.org/2495973002/diff/1/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp#newcode387 third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp:387: expansionHint = outputClip; On 2016/11/14 19:45:10, chrishtr wrote: > ...
4 years, 1 month ago (2016-11-23 04:47:18 UTC) #15
chrishtr
https://codereview.chromium.org/2495973002/diff/30001/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp File third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp (right): https://codereview.chromium.org/2495973002/diff/30001/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp#newcode424 third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp:424: // TODO(trchen): Change input clip to expansion hint created ...
4 years ago (2016-11-23 17:40:52 UTC) #20
trchen
On 2016/11/23 17:40:52, chrishtr wrote: > https://codereview.chromium.org/2495973002/diff/30001/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp > File third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp (right): > > https://codereview.chromium.org/2495973002/diff/30001/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp#newcode424 > ...
4 years ago (2016-11-23 19:22:41 UTC) #21
chrishtr
On 2016/11/23 at 19:22:41, trchen wrote: > On 2016/11/23 17:40:52, chrishtr wrote: > > https://codereview.chromium.org/2495973002/diff/30001/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp ...
4 years ago (2016-11-23 20:06:02 UTC) #22
chrishtr
lgtm
4 years ago (2016-11-23 20:07:26 UTC) #23
pdr.
On 2016/11/23 at 20:07:26, chrishtr wrote: > lgtm LGTM 2
4 years ago (2016-11-23 21:55:20 UTC) #24
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/2495973002/50001
4 years ago (2016-11-29 00:25:05 UTC) #31
commit-bot: I haz the power
Try jobs failed on following builders: ios-device on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/ios-device/builds/113258) ios-simulator on master.tryserver.chromium.mac (JOB_FAILED, ...
4 years ago (2016-11-29 00:29:27 UTC) #33
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/2495973002/70001
4 years ago (2016-11-29 02:25:14 UTC) #36
commit-bot: I haz the power
Committed patchset #4 (id:70001)
4 years ago (2016-11-29 04:18:20 UTC) #38
commit-bot: I haz the power
4 years ago (2016-11-29 04:22:26 UTC) #40
Message was sent while issue was closed.
Patchset 4 (id:??) landed as
https://crrev.com/b91d2f0d740683d361ba648148f5dd492552fdfb
Cr-Commit-Position: refs/heads/master@{#434888}

Powered by Google App Engine
This is Rietveld 408576698