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

Issue 2515363002: Introduce AnimationWorkletProxyClient and necessary plumbing to get it in worklet messaging proxy. (Closed)

Created:
4 years, 1 month ago by majidvp
Modified:
3 years, 10 months ago
CC:
flackr, chromium-reviews, shans, blink-reviews-platform-graphics_chromium.org, dshwang, eae+blinkwatch, kinuko+watch, rwlbuis, krit, drott+blinkwatch_chromium.org, Justin Novosad, blink-reviews-dom_chromium.org, dglazkov+blink, Rik, gavinp+loader_chromium.org, blink-reviews, ajuma+watch_chromium.org, Eric Willigers, rjwright, sof, jbroman, loading-reviews_chromium.org, pdr+graphicswatchlist_chromium.org, darktears, haraken, Nate Chapin, Stephen Chennney, tyoshino+watch_chromium.org, mlamouri+watch-blink_chromium.org, blink-reviews-animation_chromium.org, f(malita), danakj+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Introduce AnimationWorkletProxyClient and necessary plumbing to get it in worklet messaging proxy. The following refactoring were made to allow this: - CompositoraMutatorImpl now uses CompositorAnimator interface and no longer depends on CPCI directly. - Divide CompositorProxyClient interface into two unit separating functionality related to CompositorProxy from functionality related to Worker. This allows AnimationWorkletProxyClient to also be a CompositorProxyClient. - WebView now can create two different types of CompositorProxyClient for compositor worker and animation worklet. BUG=666001 Review-Url: https://codereview.chromium.org/2515363002 Cr-Commit-Position: refs/heads/master@{#449619} Committed: https://chromium.googlesource.com/chromium/src/+/4f443d0a5d9fb3dfd0f8bbbd91b9511fef7c54f8

Patch Set 1 #

Patch Set 2 : Create AW proxy client and hook it up to messaging proxy #

Patch Set 3 : rebase #

Patch Set 4 : Add default case #

Patch Set 5 : minor clean up #

Patch Set 6 : git cl try #

Patch Set 7 : Fix build file #

Total comments: 8

Patch Set 8 : address feedback #

Total comments: 20

Patch Set 9 : Address dcheng@ feedback and remove factory to cimplify #

Patch Set 10 : Merge master #

Patch Set 11 : Make CompositorProxyClient a GC instead of a GCMixin #

Patch Set 12 : Export CompositorAnimator #

Total comments: 3

Patch Set 13 : Use two methods instead of one #

Patch Set 14 : merge master #

Patch Set 15 : Move CompositorAnimator from platform/graphics to web/ (fix windows compile issue) #

Patch Set 16 : Move CompositorAnimator from platform/graphics to web/ #

Patch Set 17 : Remove unnecessary PLATFORM_EXPORT #

Unified diffs Side-by-side diffs Delta from patch set Stats (+414 lines, -335 lines) Patch
A third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +23 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/dom/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/dom/CompositorProxy.cpp View 1 2 3 4 5 6 7 8 9 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/dom/CompositorProxyClient.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +5 lines, -19 lines 0 comments Download
D third_party/WebKit/Source/core/dom/CompositorProxyClient.cpp View 1 2 3 4 5 6 7 8 9 10 1 chunk +0 lines, -25 lines 0 comments Download
A third_party/WebKit/Source/core/dom/CompositorWorkerProxyClient.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +45 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/core/dom/CompositorWorkerProxyClient.cpp View 1 chunk +25 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/loader/EmptyClients.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/page/ChromeClient.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +6 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +7 lines, -1 line 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/AnimationWorkletMessagingProxy.h View 1 2 3 4 5 6 7 2 chunks +4 lines, -1 line 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/AnimationWorkletMessagingProxy.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +4 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/AnimationWorkletThread.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +1 line, -1 line 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/CompositorWorker.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +5 lines, -5 lines 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/CompositorWorkerGlobalScope.h View 1 2 3 4 5 6 7 8 9 1 chunk +0 lines, -1 line 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/CompositorWorkerGlobalScope.cpp View 1 2 3 4 5 6 7 3 chunks +4 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThreadTest.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 3 chunks +5 lines, -8 lines 0 comments Download
M third_party/WebKit/Source/platform/graphics/CompositorMutator.h View 1 chunk +1 line, -1 line 0 comments Download
A third_party/WebKit/Source/web/AnimationWorkletProxyClientImpl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +49 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/web/AnimationWorkletProxyClientImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 chunk +47 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 chunks +5 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/web/ChromeClientImpl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +5 lines, -1 line 0 comments Download
M third_party/WebKit/Source/web/ChromeClientImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +13 lines, -3 lines 0 comments Download
A third_party/WebKit/Source/web/CompositorAnimator.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +25 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/web/CompositorMutatorImpl.h View 1 2 3 4 5 6 7 8 9 3 chunks +11 lines, -11 lines 0 comments Download
M third_party/WebKit/Source/web/CompositorMutatorImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +14 lines, -13 lines 0 comments Download
D third_party/WebKit/Source/web/CompositorProxyClientImpl.h View 1 chunk +0 lines, -60 lines 0 comments Download
D third_party/WebKit/Source/web/CompositorProxyClientImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +0 lines, -120 lines 0 comments Download
A + third_party/WebKit/Source/web/CompositorWorkerProxyClientImpl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 3 chunks +20 lines, -19 lines 0 comments Download
A + third_party/WebKit/Source/web/CompositorWorkerProxyClientImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 5 chunks +24 lines, -21 lines 0 comments Download
M third_party/WebKit/Source/web/WebFrameWidgetBase.h View 1 2 3 4 5 6 7 8 9 10 11 12 2 chunks +5 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/web/WebFrameWidgetImpl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +5 lines, -1 line 0 comments Download
M third_party/WebKit/Source/web/WebFrameWidgetImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +15 lines, -3 lines 0 comments Download
M third_party/WebKit/Source/web/WebViewFrameWidget.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +2 lines, -1 line 0 comments Download
M third_party/WebKit/Source/web/WebViewFrameWidget.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 1 chunk +8 lines, -2 lines 0 comments Download
M third_party/WebKit/Source/web/WebViewImpl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +5 lines, -1 line 0 comments Download
M third_party/WebKit/Source/web/WebViewImpl.cpp View 1 2 3 4 5 6 7 8 9 10 11 12 13 2 chunks +13 lines, -3 lines 0 comments Download

Messages

Total messages: 93 (77 generated)
majidvp
4 years ago (2016-11-23 19:04:44 UTC) #27
ikilpatrick
+nhiroki
4 years ago (2016-11-23 22:39:21 UTC) #31
nhiroki
LGTM with minor comments https://codereview.chromium.org/2515363002/diff/110001/third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h File third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h (right): https://codereview.chromium.org/2515363002/diff/110001/third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h#newcode24 third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h:24: #endif // AnimationWorkerProxyClient_h AnimationWorkletProxyClient_h https://codereview.chromium.org/2515363002/diff/110001/third_party/WebKit/Source/modules/compositorworker/AnimationWorkletMessagingProxy.h ...
4 years ago (2016-11-24 06:59:01 UTC) #32
majidvp
https://codereview.chromium.org/2515363002/diff/110001/third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h File third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h (right): https://codereview.chromium.org/2515363002/diff/110001/third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h#newcode24 third_party/WebKit/Source/core/dom/AnimationWorkletProxyClient.h:24: #endif // AnimationWorkerProxyClient_h On 2016/11/24 06:59:00, nhiroki (slow-sheriff) wrote: ...
4 years ago (2016-11-28 14:43:21 UTC) #33
majidvp
+dcheng@: Please review Source/core and Source/web
4 years ago (2016-11-28 14:46:09 UTC) #35
ikilpatrick
lgtm https://codereview.chromium.org/2515363002/diff/130001/third_party/WebKit/Source/core/dom/CompositorWorkerProxyClient.h File third_party/WebKit/Source/core/dom/CompositorWorkerProxyClient.h (right): https://codereview.chromium.org/2515363002/diff/130001/third_party/WebKit/Source/core/dom/CompositorWorkerProxyClient.h#newcode13 third_party/WebKit/Source/core/dom/CompositorWorkerProxyClient.h:13: #include <v8.h> not needed? https://codereview.chromium.org/2515363002/diff/130001/third_party/WebKit/Source/web/CompositorWorkerProxyClientImpl.h File third_party/WebKit/Source/web/CompositorWorkerProxyClientImpl.h (right): ...
4 years ago (2016-11-28 16:43:42 UTC) #36
dcheng
https://codereview.chromium.org/2515363002/diff/130001/third_party/WebKit/Source/core/dom/CompositorProxyClient.h File third_party/WebKit/Source/core/dom/CompositorProxyClient.h (right): https://codereview.chromium.org/2515363002/diff/130001/third_party/WebKit/Source/core/dom/CompositorProxyClient.h#newcode15 third_party/WebKit/Source/core/dom/CompositorProxyClient.h:15: class CORE_EXPORT CompositorProxyClient : public GarbageCollectedMixin { Nit: it ...
4 years ago (2016-11-28 21:17:32 UTC) #37
haraken
LGTM https://codereview.chromium.org/2515363002/diff/130001/third_party/WebKit/Source/web/AnimationWorkletProxyClientImpl.cpp File third_party/WebKit/Source/web/AnimationWorkletProxyClientImpl.cpp (right): https://codereview.chromium.org/2515363002/diff/130001/third_party/WebKit/Source/web/AnimationWorkletProxyClientImpl.cpp#newcode37 third_party/WebKit/Source/web/AnimationWorkletProxyClientImpl.cpp:37: m_proxies.add(proxy); DCHECK(!isMainThread()) ? I'm a fan of having ...
4 years ago (2016-11-29 02:35:36 UTC) #39
majidvp
https://codereview.chromium.org/2515363002/diff/130001/third_party/WebKit/Source/core/dom/CompositorProxyClient.h File third_party/WebKit/Source/core/dom/CompositorProxyClient.h (right): https://codereview.chromium.org/2515363002/diff/130001/third_party/WebKit/Source/core/dom/CompositorProxyClient.h#newcode15 third_party/WebKit/Source/core/dom/CompositorProxyClient.h:15: class CORE_EXPORT CompositorProxyClient : public GarbageCollectedMixin { On 2016/11/28 ...
3 years, 11 months ago (2017-01-20 15:48:57 UTC) #56
dcheng
https://codereview.chromium.org/2515363002/diff/210001/third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp File third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp (right): https://codereview.chromium.org/2515363002/diff/210001/third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp#newcode40 third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp:40: static_cast<AnimationWorkletProxyClient*>(client); Rather than downcasting here and below, we should ...
3 years, 11 months ago (2017-01-24 22:56:26 UTC) #63
majidvp
https://codereview.chromium.org/2515363002/diff/210001/third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp File third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp (right): https://codereview.chromium.org/2515363002/diff/210001/third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp#newcode40 third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp:40: static_cast<AnimationWorkletProxyClient*>(client); On 2017/01/24 22:56:26, dcheng wrote: > Rather than ...
3 years, 11 months ago (2017-01-26 15:00:04 UTC) #64
dcheng
On 2017/01/26 15:00:04, majidvp wrote: > https://codereview.chromium.org/2515363002/diff/210001/third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp > File third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp > (right): > > https://codereview.chromium.org/2515363002/diff/210001/third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp#newcode40 ...
3 years, 10 months ago (2017-01-27 08:58:16 UTC) #65
majidvp
On 2017/01/27 08:58:16, dcheng wrote: > On 2017/01/26 15:00:04, majidvp wrote: > > > https://codereview.chromium.org/2515363002/diff/210001/third_party/WebKit/Source/modules/compositorworker/AnimationWorklet.cpp ...
3 years, 10 months ago (2017-02-07 13:53:33 UTC) #74
dcheng
LGTM
3 years, 10 months ago (2017-02-08 03:16:36 UTC) #75
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/2515363002/310001
3 years, 10 months ago (2017-02-10 14:42:52 UTC) #90
commit-bot: I haz the power
3 years, 10 months ago (2017-02-10 14:49:38 UTC) #93
Message was sent while issue was closed.
Committed patchset #17 (id:310001) as
https://chromium.googlesource.com/chromium/src/+/4f443d0a5d9fb3dfd0f8bbbd91b9...

Powered by Google App Engine
This is Rietveld 408576698