New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Starred by 42 users

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 2
Type: Feature


Sign in to add a comment
link

Issue 430155: AnimationWorklet tracking bug

Reported by vollick@chromium.org, Nov 4 2014 Project Member

Issue description

This bug will track progress on UIWorker (or a variant) as an internal experiment.
 
Showing comments 24 - 123 of 123 Older

Comment 24 by igrigo...@chromium.org, Sep 10 2015

Cc: igrigo...@chromium.org

Comment 25 by trchen@chromium.org, Nov 14 2015

Some thoughts about the CompositorProxy interface (continuing the discussion from BlinkOn and CL 1405993008):

1. In the BlinkOn talk there was suggestion that the mutable list on the proxy may be unneeded in the future. After offline discussion with vollick@ our conclusion was that the mutable list is still needed because mutating some of the properties from the default value can affect layout (transform other than none creates position container) or cause paint order change (transform other than none or opacity other than 1 creates stacking context) those are hard to handle in the compositor. The mutable list will work similar to CSS will-change property (adjusting transform:none to transform:translate(0,0), z-index:auto to z-index:0, that kind of stuff.).

2. It should be made clear what are the definition of current value, target value, computed style, and used style. And what is returned when you query a property from the proxy, what happens when you set a property to the proxy.

My mental model was that computed style is the DOM-level concept and the used style is the LayoutObject-level concept, with computed style == target value and used style == current value. My model was WRONG. At least that's not how vendors implement it nor how it's worded on W3C spec. The current spec is very unclear. There are "computed style", "used style", and sometimes "resolved style", but many documents are ambiguous about them. (And window.getComputedStyle implementation is often inconsistent across browsers.)

For the second part of the question, my understanding is that if you query a property from the proxy, it always return the will-be-used value. When you set a property to the proxy, you are actually doing two things: settings the latest will-be-used value, and marking the property being mutated. In some future synchronous point, the last will-be-used value will be set onto the element inline-style (or main-thread scroll offset) if mutation marker is true.

3. As a follow-up of 2., we also need to make it clear how CompositorWorker interacts with CSS animation and transition.

From what we've discussed, with our current implementation, CompositorWorker and other animation driver applied on the same element will fight and the user may see flash or jumpy results. The argument is that the developer is a chump if he attempts to apply conflicting animations on the same element.

However IMO instead of making it a unspecified behavior, we should make it an error and make a definitive rule to decide which animation will be in effect. My reason is because unspecified behavior or implementation-defined behavior simply don't work on web platform. Unlike C/C++, the developers have the control over what compiler they use, and they are responsible to deliver a working binary to their user. On the other hand if the developer publishes a erroneous page that renders fine on browser A but is terribly broken on browser B, the user have no choice but to switch to browser A (other than giving up), whether he thinks its browser B's fault or not.

Note that I'm not talking about the actual implementation, but how should we design the API specification. I totally agree that the API needs to be something that's implementable so it's helpful to prototype first to figure out the design constraints (like what we are doing right now!). However from my past experience it often ends up that the prototype became the standard and the specification is essentially a reverse engineering of that prototype. I think we should try to discover edge cases and resolve them as early as possible.

Comment 26 by bugdroid1@chromium.org, Dec 2 2015

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/d710cbc079b51b819349203ee408f36dc056055e

commit d710cbc079b51b819349203ee408f36dc056055e
Author: vollick <vollick@chromium.org>
Date: Wed Dec 02 02:25:32 2015

compositor-worker: Refactor CompositorWorkerManager

Much of the functionality in CompositorWorkerManager
was related to shared compositor thread state. This
patch moves that to CompositorWorkerSharedState, an
implementation detail of CompositorWorkerThread.

The shared state also now uses the real compositor
thread.

The existing compositor worker layout tests needed
to be moved to a virtual test suite since they now
depend on having a compositor thread.

BUG=430155

Review URL: https://codereview.chromium.org/1449953002

Cr-Commit-Position: refs/heads/master@{#362590}

[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/components/scheduler/child/webthread_impl_for_worker_scheduler.cc
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/components/scheduler/child/webthread_impl_for_worker_scheduler.h
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/content/child/blink_platform_impl.cc
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/content/child/blink_platform_impl.h
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/content/renderer/render_thread_impl.cc
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/content/renderer/render_thread_impl.h
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/TestExpectations
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/VirtualTestSuites
[add] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/README.txt
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-attribute-change-worker.html
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-attribute-change.html
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-disconnect-worker-terminate.html
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-disconnect-worker.html
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-disconnect.html
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-postmessage.html
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-disconnect.js
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-echo.js
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-idle.js
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-mutate.js
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/Source/modules/InitModules.cpp
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.h
[delete] http://crrev.com/56d42205139458d71b64a9b2f773b4445460e3a6/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerManager.cpp
[delete] http://crrev.com/56d42205139458d71b64a9b2f773b4445460e3a6/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerManager.h
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThread.cpp
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThread.h
[rename] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThreadTest.cpp
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/Source/modules/modules.gypi
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.cpp
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.h
[modify] http://crrev.com/d710cbc079b51b819349203ee408f36dc056055e/third_party/WebKit/public/platform/Platform.h

Comment 27 by bugdroid1@chromium.org, Dec 2 2015

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/99a58a8721111e066db995e3297b9ca554e78503

commit 99a58a8721111e066db995e3297b9ca554e78503
Author: tkent <tkent@chromium.org>
Date: Wed Dec 02 06:11:47 2015

Revert of compositor-worker: Refactor CompositorWorkerManager (patchset #16 id:290001 of https://codereview.chromium.org/1449953002/ )

Reason for revert:
It caused consistent timeout of webexposed/global-interface-listing-compositor-worker.html

https://build.chromium.org/p/chromium.webkit/builders/WebKit%20Linux%20Leak/builds/15965

Original issue's description:
> compositor-worker: Refactor CompositorWorkerManager
>
> Much of the functionality in CompositorWorkerManager
> was related to shared compositor thread state. This
> patch moves that to CompositorWorkerSharedState, an
> implementation detail of CompositorWorkerThread.
>
> The shared state also now uses the real compositor
> thread.
>
> The existing compositor worker layout tests needed
> to be moved to a virtual test suite since they now
> depend on having a compositor thread.
>
> BUG=430155
>
> Committed: https://crrev.com/d710cbc079b51b819349203ee408f36dc056055e
> Cr-Commit-Position: refs/heads/master@{#362590}

TBR=piman@chromium.org,haraken@chromium.org,rbyers@chromium.org,sadrul@chromium.org,skyostil@chromium.org,vollick@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=430155

Review URL: https://codereview.chromium.org/1494483002

Cr-Commit-Position: refs/heads/master@{#362641}

[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/components/scheduler/child/webthread_impl_for_worker_scheduler.cc
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/components/scheduler/child/webthread_impl_for_worker_scheduler.h
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/content/child/blink_platform_impl.cc
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/content/child/blink_platform_impl.h
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/content/renderer/render_thread_impl.cc
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/content/renderer/render_thread_impl.h
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/TestExpectations
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/VirtualTestSuites
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/fast/compositorworker/compositor-attribute-change-worker.html
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/fast/compositorworker/compositor-attribute-change.html
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/fast/compositorworker/compositor-proxy-disconnect-worker-terminate.html
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/fast/compositorworker/compositor-proxy-disconnect-worker.html
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/fast/compositorworker/compositor-proxy-disconnect.html
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/fast/compositorworker/compositor-proxy-postmessage.html
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/fast/compositorworker/resources/proxy-disconnect.js
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/fast/compositorworker/resources/proxy-echo.js
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/fast/compositorworker/resources/proxy-idle.js
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/LayoutTests/fast/compositorworker/resources/proxy-mutate.js
[delete] http://crrev.com/04490c19154ceb2e674609de2daf91cd1116ffc1/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/README.txt
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/Source/modules/InitModules.cpp
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.h
[add] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerManager.cpp
[add] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerManager.h
[rename] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerManagerTest.cpp
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThread.cpp
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThread.h
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/Source/modules/modules.gypi
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.cpp
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.h
[modify] http://crrev.com/99a58a8721111e066db995e3297b9ca554e78503/third_party/WebKit/public/platform/Platform.h

Comment 28 by bugdroid1@chromium.org, Dec 3 2015

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1050cc60596ea57ff3bef6185ee788ca4b9a4730

commit 1050cc60596ea57ff3bef6185ee788ca4b9a4730
Author: vollick <vollick@chromium.org>
Date: Thu Dec 03 07:04:54 2015

compositor-worker: Refactor CompositorWorkerManager

Much of the functionality in CompositorWorkerManager
was related to shared compositor thread state. This
patch moves that to CompositorWorkerSharedState, an
implementation detail of CompositorWorkerThread.

The shared state also now uses the real compositor
thread.

The existing compositor worker layout tests needed
to be moved to a virtual test suite since they now
depend on having a compositor thread.

BUG=430155

Committed: https://crrev.com/d710cbc079b51b819349203ee408f36dc056055e
Cr-Commit-Position: refs/heads/master@{#362590}

Review URL: https://codereview.chromium.org/1449953002

Cr-Commit-Position: refs/heads/master@{#362924}

[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/components/scheduler/child/webthread_impl_for_worker_scheduler.cc
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/components/scheduler/child/webthread_impl_for_worker_scheduler.h
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/content/child/blink_platform_impl.cc
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/content/child/blink_platform_impl.h
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/content/renderer/render_thread_impl.cc
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/content/renderer/render_thread_impl.h
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/TestExpectations
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/VirtualTestSuites
[add] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/README.txt
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-attribute-change-worker.html
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-attribute-change.html
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-disconnect-worker-terminate.html
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-disconnect-worker.html
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-disconnect.html
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-postmessage.html
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-disconnect.js
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-echo.js
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-idle.js
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-mutate.js
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/Source/modules/InitModules.cpp
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.h
[delete] http://crrev.com/3bfee5e3676510bf8348bb46334a7dbea4a0a181/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerManager.cpp
[delete] http://crrev.com/3bfee5e3676510bf8348bb46334a7dbea4a0a181/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerManager.h
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThread.cpp
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThread.h
[rename] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThreadTest.cpp
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/Source/modules/modules.gypi
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.cpp
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/Source/platform/testing/TestingPlatformSupport.h
[modify] http://crrev.com/1050cc60596ea57ff3bef6185ee788ca4b9a4730/third_party/WebKit/public/platform/Platform.h

Comment 29 by bugdroid1@chromium.org, Dec 8 2015

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/933f496ec9750765871f21d74a3c48eb23c5eb86

commit 933f496ec9750765871f21d74a3c48eb23c5eb86
Author: vollick <vollick@chromium.org>
Date: Tue Dec 08 04:22:05 2015

compositor-worker: plumb element id and mutable properties

For proxied elements, this CL ensures that the element id and mutable
property bitfield are propagated to the compositor.

BUG=430155
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1405993008

Cr-Commit-Position: refs/heads/master@{#363737}

[add] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/cc/animation/mutable_properties.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/cc/blink/web_layer_impl.cc
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/cc/blink/web_layer_impl.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/cc/layers/layer.cc
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/cc/layers/layer.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/cc/layers/layer_impl.cc
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/cc/layers/layer_impl.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/cc/layers/layer_impl_unittest.cc
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/cc/layers/layer_unittest.cc
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/LayoutTests/media/track/track-delete-during-setup.html
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/LayoutTests/media/track/track-word-breaking.html
[add] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-supports.html
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/core.gypi
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/css/resolver/StyleAdjuster.cpp
[add] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/dom/CompositorProxiedPropertySet.cpp
[add] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/dom/CompositorProxiedPropertySet.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/dom/CompositorProxy.cpp
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/dom/CompositorProxy.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/dom/Element.cpp
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/dom/Element.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/dom/ElementRareData.cpp
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/dom/ElementRareData.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/testing/InternalSettings.cpp
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/testing/InternalSettings.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/core/testing/InternalSettings.idl
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/platform/graphics/GraphicsLayer.cpp
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/platform/graphics/GraphicsLayer.h
[add] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/web/tests/CompositorWorkerTest.cpp
[add] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/web/tests/data/compositor-proxy-basic-disconnected.html
[add] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/web/tests/data/compositor-proxy-basic.html
[add] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/web/tests/data/compositor-proxy-plumbing-no-proxies.html
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/Source/web/web.gypi
[add] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/public/platform/WebCompositorMutableProperties.h
[modify] http://crrev.com/933f496ec9750765871f21d74a3c48eb23c5eb86/third_party/WebKit/public/platform/WebLayer.h

Comment 31 by bugdroid1@chromium.org, Jan 8 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/9c7f6d0e46a46605801d143c04b86f5e4445cd37

commit 9c7f6d0e46a46605801d143c04b86f5e4445cd37
Author: vollick <vollick@chromium.org>
Date: Fri Jan 08 04:36:38 2016

compositor-worker: Introduce WebCompositorMutableState

This change introduces a wrapper around compositer-owned state that may
be mutated by a compositor worker.

This depends on crrev.com/1405993008

BUG=430155
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1447893002

Cr-Commit-Position: refs/heads/master@{#368273}

[add] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/animation/layer_tree_mutation.h
[modify] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/blink/BUILD.gn
[modify] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/blink/cc_blink.gyp
[modify] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/blink/cc_blink_tests.gyp
[add] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/blink/web_compositor_mutable_state_impl.cc
[add] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/blink/web_compositor_mutable_state_impl.h
[add] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/blink/web_compositor_mutable_state_impl_unittest.cc
[add] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/blink/web_compositor_mutable_state_provider_impl.cc
[add] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/blink/web_compositor_mutable_state_provider_impl.h
[modify] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/layers/layer_impl.cc
[modify] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/trees/layer_tree_impl.cc
[modify] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/cc/trees/layer_tree_impl.h
[add] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/third_party/WebKit/public/platform/WebCompositorMutableState.h
[add] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/third_party/WebKit/public/platform/WebCompositorMutableStateProvider.h
[modify] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/third_party/WebKit/public/platform/WebPassOwnPtr.h
[modify] http://crrev.com/9c7f6d0e46a46605801d143c04b86f5e4445cd37/ui/gfx/transform.h

Comment 32 by bugdroid1@chromium.org, Jan 14 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11

commit ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11
Author: sadrul <sadrul@chromium.org>
Date: Thu Jan 14 20:52:20 2016

compositor worker: Use a WebThread for the compositor thread.

The first attempt (crrev.com/362924) had to be reverted (crrev.com/367051)
because it caused perf regressions ( crbug.com/565789 ). It turns out, the
regression was caused because of using the default task-runner from the
scheduler, instead of directly using the thread's task runner. To fix this,
create a slightly specialized version of WebThreadImplForWorkerScheduler
that uses the thread's task runner as the default ask runner.

BUG= 565789 , 430155

Review URL: https://codereview.chromium.org/1589463002

Cr-Commit-Position: refs/heads/master@{#369532}

[modify] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/components/html_viewer/blink_platform_impl.cc
[add] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/components/scheduler/child/compositor_worker_scheduler.cc
[add] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/components/scheduler/child/compositor_worker_scheduler.h
[modify] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/components/scheduler/child/webthread_impl_for_worker_scheduler.cc
[modify] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/components/scheduler/child/webthread_impl_for_worker_scheduler.h
[modify] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/components/scheduler/child/webthread_impl_for_worker_scheduler_unittest.cc
[modify] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/components/scheduler/scheduler.gypi
[modify] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/content/child/blink_platform_impl.cc
[modify] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/content/child/blink_platform_impl.h
[modify] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/content/renderer/render_thread_impl.cc
[modify] http://crrev.com/ff12c00a9fbf19fc5ab5621d8e76031d5bef7c11/content/renderer/render_thread_impl.h

Comment 33 by sadrul@chromium.org, Jan 14 2016

Cc: sadrul@chromium.org

Comment 34 by bugdroid1@chromium.org, Jan 22 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f

commit fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f
Author: vollick <vollick@chromium.org>
Date: Fri Jan 22 19:13:29 2016

compositor-worker: Remove code from cc_blink

In this CL, the compositor worker code in cc_blink has
been removed, mostly by moving it into
Source/platform/graphics, a more natural home for
compositor-related stuff.

An additional benefit is that much of the code in
public/platform/ is unnecessary now. It was there only
so that it could be implemented by classes in cc_blink.

There was a wrinkle when moving the test: the cc test
machinery expected a base::MessageLoop to have been
constructed to work. This violated the current DEPS
rules for platform/graphics.

I did try to remove this dependency, but the code is
quite coupled and the refactor was not only large, it
resulted in more complex code in cc.

Since platform is in general allowed to talk to base,
it seemed more reasonable to update the DEPS in
platform/graphics/ to allow the use of message_loop.h
in tests.

BUG=430155
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1599673002

Cr-Commit-Position: refs/heads/master@{#371006}

[delete] http://crrev.com/3537f56b3e87d722b1e7caa3d996874f3199f750/cc/animation/layer_tree_mutation.h
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/cc/animation/mutable_properties.h
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/cc/blink/BUILD.gn
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/cc/blink/cc_blink.gyp
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/cc/blink/cc_blink_tests.gyp
[delete] http://crrev.com/3537f56b3e87d722b1e7caa3d996874f3199f750/cc/blink/web_compositor_mutable_state_impl.cc
[delete] http://crrev.com/3537f56b3e87d722b1e7caa3d996874f3199f750/cc/blink/web_compositor_mutable_state_impl.h
[delete] http://crrev.com/3537f56b3e87d722b1e7caa3d996874f3199f750/cc/blink/web_compositor_mutable_state_impl_unittest.cc
[delete] http://crrev.com/3537f56b3e87d722b1e7caa3d996874f3199f750/cc/blink/web_compositor_mutable_state_provider_impl.cc
[delete] http://crrev.com/3537f56b3e87d722b1e7caa3d996874f3199f750/cc/blink/web_compositor_mutable_state_provider_impl.h
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/cc/blink/web_layer_impl.cc
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/cc/layers/layer.cc
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/cc/layers/layer_impl.cc
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/cc/layers/layer_impl_unittest.cc
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/cc/layers/layer_unittest.cc
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/cc/trees/layer_tree_impl.cc
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/core/css/resolver/StyleAdjuster.cpp
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/core/dom/CompositorProxiedPropertySet.cpp
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/core/dom/CompositorProxiedPropertySet.h
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/core/dom/CompositorProxy.cpp
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/core/dom/Element.cpp
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/core/paint/PaintLayerScrollableArea.cpp
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/BUILD.gn
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/blink_platform.gypi
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/blink_platform_tests.gyp
[add] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/graphics/CompositorMutableProperties.h
[add] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/graphics/CompositorMutableState.cpp
[add] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/graphics/CompositorMutableState.h
[add] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/graphics/CompositorMutableStateProvider.cpp
[add] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/graphics/CompositorMutableStateProvider.h
[add] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/graphics/CompositorMutableStateTest.cpp
[add] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/graphics/CompositorMutation.h
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/platform/graphics/DEPS
[modify] http://crrev.com/fd6e4f4a7a3f166de9d2fbc89770b4f2eb90272f/third_party/WebKit/Source/web/tests/CompositorWorkerTest.cpp
[delete] http://crrev.com/3537f56b3e87d722b1e7caa3d996874f3199f750/third_party/WebKit/public/platform/WebCompositorMutableProperties.h
[delete] http://crrev.com/3537f56b3e87d722b1e7caa3d996874f3199f750/third_party/WebKit/public/platform/WebCompositorMutableState.h
[delete] http://crrev.com/3537f56b3e87d722b1e7caa3d996874f3199f750/third_party/WebKit/public/platform/WebCompositorMutableStateProvider.h

Comment 35 by bugdroid1@chromium.org, Jan 27 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f77609d9f544961f0158fbff93e52c82e4c9dac2

commit f77609d9f544961f0158fbff93e52c82e4c9dac2
Author: sadrul <sadrul@chromium.org>
Date: Wed Jan 27 00:21:34 2016

workers: Move where idle-tasks are turned on for v8::Isolate.

Compositor-workers currently do not support idle tasks (and so does not
have idle-task-runner). So idle-tasks should not be turned on for the
compositor workers' isolate. To fix this, move the code that turns on
idle tasks for the isolate into WorkerThread::initializeIsolate(), so
that compositor worker can choose to not do this for now.

BUG= 565789 , 430155

Review URL: https://codereview.chromium.org/1612093003

Cr-Commit-Position: refs/heads/master@{#371656}

[modify] http://crrev.com/f77609d9f544961f0158fbff93e52c82e4c9dac2/third_party/WebKit/Source/core/workers/WorkerThread.cpp

Comment 36 by vollick@chromium.org, Feb 9 2016

Blockedon: chromium:585458

Comment 37 by bugdroid1@chromium.org, Apr 11 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/96452d073371da1e1ab7eb1ef724df0926f76547

commit 96452d073371da1e1ab7eb1ef724df0926f76547
Author: majidvp <majidvp@chromium.org>
Date: Mon Apr 11 20:36:04 2016

compositor-worker: cc->blink mutation plumbing

Add plubming to CC and blink to take a set of compositor mutation from LTHI
and apply them to associated elements in blink.

Compositor mutations are applied to the DOM element using a custom key frame
animation.

The following components are added:

- CompositorMutatorClient: Maintains current set mutations and
provide a callback that is invoked on main thread at begin
  main frame to trigger application of mutations.
- CompositorMutationsTarget: Interface of the components that applies the
  mutations.
- CustomCompositorAnimationManager: Takes a set of mutations and updates their
  respective elements.
- CustomCompositorAnimations: Owns custom keyframe animation for the element
  and can update it given a mutation.

The CompositorMutator and blink->cc plumbing of compositor proxies is in a followup patch: https://codereview.chromium.org/1625473002/

BUG=430155
TESTS=web/tests/CompositorWorkerTest.cpp
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review URL: https://codereview.chromium.org/1602343002

Cr-Commit-Position: refs/heads/master@{#386464}

[add] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/cc/animation/layer_tree_mutator.h
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/cc/trees/proxy_common.h
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/cc/trees/proxy_impl.cc
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/cc/trees/proxy_main.cc
[add] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/core/animation/CustomCompositorAnimationManager.cpp
[add] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/core/animation/CustomCompositorAnimationManager.h
[add] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/core/animation/CustomCompositorAnimations.cpp
[add] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/core/animation/CustomCompositorAnimations.h
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/core/animation/ElementAnimations.cpp
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/core/animation/ElementAnimations.h
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/core/core.gypi
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/core/dom/Element.cpp
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/core/dom/Element.h
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/platform/blink_platform.gypi
[add] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/platform/graphics/CompositorMutationsTarget.h
[add] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/platform/graphics/CompositorMutatorClient.cpp
[add] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/platform/graphics/CompositorMutatorClient.h
[add] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/platform/graphics/CompositorMutatorClientTest.cpp
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/platform/graphics/DEPS
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/platform/transforms/TransformationMatrix.h
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/web/tests/CompositorWorkerTest.cpp
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/Source/web/tests/data/compositor-proxy-basic.html
[add] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/public/platform/WebCompositorMutatorClient.h
[modify] https://crrev.com/96452d073371da1e1ab7eb1ef724df0926f76547/third_party/WebKit/public/web/WebWidget.h

Comment 38 by flackr@chromium.org, May 5 2016

Blocking: 512494

Comment 39 by vollick@chromium.org, May 5 2016

Blockedon: 609531

Comment 40 by vollick@chromium.org, May 5 2016

Blockedon: 609532

Comment 41 by bugdroid1@chromium.org, May 25 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/de5eb38e0da6ac0ec80b51b77fc562334edb1c47

commit de5eb38e0da6ac0ec80b51b77fc562334edb1c47
Author: flackr <flackr@chromium.org>
Date: Wed May 25 22:46:08 2016

compositor-worker: Add CompositorProxyClient worker client of CompositorWorker.

Adds the CompositorProxyClient worker to CompositorWorkers. In order to test
calling animation frame callbacks a task is created to call them when an
animation frame is requested.

BUG=430155
TEST=virtual/threaded/fast/compositorworker/request-animation-frame.html

Review-Url: https://codereview.chromium.org/1956893003
Cr-Commit-Position: refs/heads/master@{#396018}

[add] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/request-animation-frame-expected.txt
[add] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/request-animation-frame.html
[add] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/request-animation-frame.js
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/core/core.gypi
[add] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/core/dom/CompositorProxyClient.cpp
[add] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/core/dom/CompositorProxyClient.h
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/core/loader/EmptyClients.h
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/core/page/ChromeClient.h
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/modules/compositorworker/CompositorWorker.cpp
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerGlobalScope.cpp
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerGlobalScope.h
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerMessagingProxy.cpp
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerMessagingProxy.h
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThreadTest.cpp
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/ChromeClientImpl.cpp
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/ChromeClientImpl.h
[add] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/CompositorProxyClientImpl.cpp
[add] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/CompositorProxyClientImpl.h
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/WebFrameWidgetImpl.cpp
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/WebFrameWidgetImpl.h
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/WebViewFrameWidget.cpp
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/WebViewFrameWidget.h
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/Source/web/web.gypi
[modify] https://crrev.com/de5eb38e0da6ac0ec80b51b77fc562334edb1c47/third_party/WebKit/public/web/WebFrameWidget.h

Comment 43 by bugdroid1@chromium.org, May 31 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c

commit f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c
Author: flackr <flackr@chromium.org>
Date: Tue May 31 15:20:10 2016

compositor-worker: Initialize CW machinery plumbing to compositor and fire CW rAF callbacks.

BUG=430155
TEST=virtual/threaded/fast/compositorworker/request-animation-frame.html
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/1895873006
Cr-Commit-Position: refs/heads/master@{#396829}

[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/animation/layer_tree_mutator.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/test/fake_proxy.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/test/fake_proxy.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/channel_main.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/layer_tree_host.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/layer_tree_host.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/layer_tree_host_impl.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/proxy.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/proxy_impl.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/proxy_impl.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/proxy_main.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/proxy_main.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/remote_channel_impl.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/remote_channel_impl.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/remote_channel_main.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/remote_channel_main.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/single_thread_proxy.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/single_thread_proxy.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/threaded_channel.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/cc/trees/threaded_channel.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/components/scheduler/child/compositor_worker_scheduler.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/components/scheduler/child/compositor_worker_scheduler.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/content/renderer/gpu/render_widget_compositor.cc
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/content/renderer/gpu/render_widget_compositor.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/core/dom/CompositorProxyClient.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerGlobalScope.cpp
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThreadTest.cpp
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/platform/blink_platform.gypi
[add] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/platform/graphics/CompositorMutator.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/platform/graphics/CompositorMutatorClient.cpp
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/platform/graphics/CompositorMutatorClient.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/platform/graphics/CompositorMutatorClientTest.cpp
[add] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/web/CompositorMutatorImpl.cpp
[add] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/web/CompositorMutatorImpl.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/web/CompositorProxyClientImpl.cpp
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/web/CompositorProxyClientImpl.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/web/WebFrameWidgetImpl.cpp
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/web/WebFrameWidgetImpl.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/web/WebViewImpl.cpp
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/web/WebViewImpl.h
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/Source/web/web.gypi
[modify] https://crrev.com/f54e9b43c06e01f702c97ddf57cfbc0b1cb0547c/third_party/WebKit/public/platform/WebLayerTreeView.h

Comment 44 by bugdroid1@chromium.org, Jun 13 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/eb14272233cd88227efc37a31fabb9688ed831ba

commit eb14272233cd88227efc37a31fabb9688ed831ba
Author: majidvp <majidvp@chromium.org>
Date: Mon Jun 13 19:06:03 2016

[compositorworker] Register compositor proxies with proxy client

Each compositor proxy registers itself with its proxy client when created.

This populated set is later used to update the backing mutable state for each
compositor proxy.

TEST=These machinery is tested in the follow-up CL https://codereview.chromium.org/2041193005/

BUG=430155

Review-Url: https://codereview.chromium.org/1900423004
Cr-Commit-Position: refs/heads/master@{#399502}

[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-postmessage.html
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-echo.js
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/core/dom/CompositorProxy.cpp
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/core/dom/CompositorProxy.h
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/core/dom/CompositorProxyClient.h
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThreadTest.cpp
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/web/CompositorProxyClientImpl.cpp
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/web/CompositorProxyClientImpl.h

Comment 45 by bugdroid1@chromium.org, Jun 15 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/eb14272233cd88227efc37a31fabb9688ed831ba

commit eb14272233cd88227efc37a31fabb9688ed831ba
Author: majidvp <majidvp@chromium.org>
Date: Mon Jun 13 19:06:03 2016

[compositorworker] Register compositor proxies with proxy client

Each compositor proxy registers itself with its proxy client when created.

This populated set is later used to update the backing mutable state for each
compositor proxy.

TEST=These machinery is tested in the follow-up CL https://codereview.chromium.org/2041193005/

BUG=430155

Review-Url: https://codereview.chromium.org/1900423004
Cr-Commit-Position: refs/heads/master@{#399502}

[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-postmessage.html
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-echo.js
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/bindings/core/v8/ScriptValueSerializer.cpp
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/core/dom/CompositorProxy.cpp
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/core/dom/CompositorProxy.h
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/core/dom/CompositorProxyClient.h
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/modules/compositorworker/CompositorWorkerThreadTest.cpp
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/web/CompositorProxyClientImpl.cpp
[modify] https://crrev.com/eb14272233cd88227efc37a31fabb9688ed831ba/third_party/WebKit/Source/web/CompositorProxyClientImpl.h

Comment 46 by bugdroid1@chromium.org, Jun 16 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ee4cbfea75629407af2b0377ca2567540081430d

commit ee4cbfea75629407af2b0377ca2567540081430d
Author: majidvp <majidvp@chromium.org>
Date: Thu Jun 16 04:09:44 2016

[compositorworker] compositor proxy mutation updates underlying layers

The CL makes it so that changes to compositor proxies in  compositor worker to
actually mutate the underlying layers.

This is achieved by passing a reference to active layer tree to
LayerTreeMutator. This reference encapsulated by  CompositorMutableStateProvider
which is responsible for handing out  individual CompositorMutableState for each
proxy during rAF mutation.

Any mutation on the proxy updates the mutable states which in turn is reflected
on the underlying layers (main, scroll).

major changes:
- pass active layer tree impl to mutator
- set mutable state for compositor proxy during rAF
- add 'initialized' attribute to compositor worker to signal its activation
- add layout tests covering visual updates from worker
- update most of compositor worker layout tests to use a
common pattern

TEST=virtual/threaded/fast/compositorworker
BUG=430155
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

Review-Url: https://codereview.chromium.org/2041193005
Cr-Commit-Position: refs/heads/master@{#400082}

[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/cc/animation/layer_tree_mutator.h
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/cc/trees/layer_tree_host_impl.cc
[add] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/basic-plumbing-main-to-worker.html
[add] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/basic-plumbing-worker-to-main.html
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/compositor-proxy-disconnect-worker-terminate.html
[add] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/basic-plumbing-main-to-worker.js
[add] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/basic-plumbing-worker-to-main.js
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-disconnect.js
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-echo.js
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-idle.js
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/proxy-mutate.js
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/request-animation-frame.js
[add] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/visual-update.js
[add] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/resources/worker-common.js
[add] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/visual-update-expected.html
[add] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/virtual/threaded/fast/compositorworker/visual-update.html
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-compositor-worker-expected.txt
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/LayoutTests/webexposed/global-interface-listing-expected.txt
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/core/dom/CompositorProxy.cpp
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/core/dom/CompositorProxy.h
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/core/dom/CompositorProxy.idl
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/core/dom/DOMMatrix.cpp
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/core/dom/DOMMatrix.h
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/platform/graphics/CompositorMutableStateProvider.cpp
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/platform/graphics/CompositorMutableStateProvider.h
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/platform/graphics/CompositorMutableStateTest.cpp
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/platform/graphics/CompositorMutator.h
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/platform/graphics/CompositorMutatorClient.cpp
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/platform/graphics/CompositorMutatorClient.h
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/platform/graphics/CompositorMutatorClientTest.cpp
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/web/CompositorMutatorImpl.cpp
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/web/CompositorMutatorImpl.h
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/web/CompositorProxyClientImpl.cpp
[modify] https://crrev.com/ee4cbfea75629407af2b0377ca2567540081430d/third_party/WebKit/Source/web/CompositorProxyClientImpl.h

Comment 47 by bugdroid1@chromium.org, Aug 17 2016

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/43daf599823081c97f690df4a1e5431754cfeadc

commit 43daf599823081c97f690df4a1e5431754cfeadc
Author: vollick <vollick@chromium.org>
Date: Wed Aug 17 14:30:35 2016

[compositor-worker] Create property tree nodes for proxies.

BUG=430155
CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_precise_blink_rel

Review-Url: https://codereview.chromium.org/2254623002
Cr-Commit-Position: refs/heads/master@{#412518}

[modify] https://crrev.com/43daf599823081c97f690df4a1e5431754cfeadc/cc/animation/mutable_properties.h
[modify] https://crrev.com/43daf599823081c97f690df4a1e5431754cfeadc/cc/trees/layer_tree_impl_unittest.cc
[modify] https://crrev.com/43daf599823081c97f690df4a1e5431754cfeadc/cc/trees/property_tree_builder.cc

Comment 48 by flackr@chromium.org, Aug 18 2016

Blocking: -512494

Comment 49 by vollick@chromium.org, Nov 2 2016

Cc: -jdduke@chromium.org flackr@chromium.org
Labels: Hotlist-Threaded-Rendering
Owner: majidvp@chromium.org
Summary: AnimationWorklet tracking bug (was: UIWorker tracking bug)

Comment 50 by majidvp@chromium.org, Nov 16 2016

Blockedon: 666001

Comment 51 by majidvp@chromium.org, Nov 16 2016

Blockedon: 666009

Comment 52 by majidvp@chromium.org, Nov 16 2016

Blockedon: 666019

Comment 53 by majidvp@chromium.org, Nov 16 2016

Blockedon: 666032

Comment 54 by surma@chromium.org, Dec 15 2016

Cc: surma@chromium.org

Comment 55 by flackr@chromium.org, Jan 24 2017

Labels: -Hotlist-Threaded-Rendering Hotlist-ThreadedRendering

Comment 56 by rbyers@chromium.org, Apr 6 2017

Blocking: -497851

Comment 57 by rbyers@chromium.org, Apr 6 2017

Blocking: -311234

Comment 58 by majidvp@chromium.org, Jun 9 2017

Blockedon: 731727

Comment 59 by smcgruer@chromium.org, Jun 28 2017

Blockedon: 720080

Comment 60 by smcgruer@chromium.org, Jun 28 2017

Blockedon: 719517

Comment 61 by smcgruer@chromium.org, Jun 28 2017

Blockedon: 737576

Comment 62 by majidvp@chromium.org, Sep 20 2017

Blockedon: 767043

Comment 63 by petermayo@chromium.org, Sep 20 2017

Blockedon: 767210

Comment 64 by majidvp@chromium.org, Oct 23 2017

Blockedon: 776952

Comment 65 by gracec@chromium.org, Oct 27 2017

Blockedon: 776533

Comment 66 by smcgruer@chromium.org, Oct 31 2017

Blockedon: 780148

Comment 67 by smcgruer@chromium.org, Oct 31 2017

Blockedon: 780151

Comment 68 by smcgruer@chromium.org, Nov 9 2017

Blockedon: 783333

Comment 69 by dtapu...@chromium.org, Nov 27 2017

Components: -Blink>Input Blink>Animation

Comment 70 by bugdroid1@chromium.org, Jan 15 2018

Project Member
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/8b51a0c1f1388a91cf1bb60e4dbe63859317120f

commit 8b51a0c1f1388a91cf1bb60e4dbe63859317120f
Author: Majid Valipour <majidvp@chromium.org>
Date: Mon Jan 15 22:27:23 2018

Improve AnimationWorklet README.

- Introduce 3 different contexts that matter: main, compositor, animation (with a picture!)
- Introduce concept of a worklet animation and its incarnations in each context
- Explain some details about what is involves in an animation frame
- Short discussion of compositor and its current basic scheduling.


Bug: 430155
Change-Id: Ida4da0762d6b212d080eb01f25986e179ab81828
Reviewed-on: https://chromium-review.googlesource.com/825247
Commit-Queue: Majid Valipour <majidvp@chromium.org>
Reviewed-by: Robert Flack <flackr@chromium.org>
Reviewed-by: Stephen McGruer <smcgruer@chromium.org>
Cr-Commit-Position: refs/heads/master@{#529338}
[modify] https://crrev.com/8b51a0c1f1388a91cf1bb60e4dbe63859317120f/third_party/WebKit/Source/modules/animationworklet/README.md
[add] https://crrev.com/8b51a0c1f1388a91cf1bb60e4dbe63859317120f/third_party/WebKit/Source/modules/animationworklet/doc/animation-data-flow.png

Comment 71 by petermayo@chromium.org, Feb 2 2018

Labels: -Type-Bug Type-Feature

Comment 72 by petermayo@chromium.org, Feb 2 2018

Blockedon: 646572

Comment 73 by petermayo@chromium.org, Feb 2 2018

Blockedon: 791280

Comment 74 by sunyunjia@chromium.org, Feb 6 2018

Blockedon: 779189

Comment 75 by sunyunjia@chromium.org, Feb 6 2018

Blockedon: 781816

Comment 76 by petermayo@chromium.org, Feb 14 2018

Blockedon: 811922

Comment 77 by majidvp@chromium.org, Feb 22 2018

Blockedon: 814851

Comment 78 by majidvp@chromium.org, Mar 14 2018

Blockedon: 821910

Comment 79 by flackr@chromium.org, Mar 22 2018

Blockedon: 824755

Comment 80 by majidvp@chromium.org, Mar 22 2018

Blockedon: 824782

Comment 81 by majidvp@chromium.org, Mar 29 2018

Blockedon: 827194

Comment 82 by majidvp@chromium.org, Apr 3 2018

Blockedon: 828425

Comment 83 by majidvp@chromium.org, Apr 3 2018

Blockedon: 828477

Comment 84 by majidvp@chromium.org, Apr 3 2018

Blockedon: 828487

Comment 85 by majidvp@chromium.org, Apr 4 2018

Cc: majidvp@chromium.org
 Issue 467782  has been merged into this issue.

Comment 86 by majidvp@chromium.org, Apr 6 2018

Blockedon: 829924

Comment 87 by majidvp@chromium.org, Apr 6 2018

Blockedon: 829926

Comment 88 by majidvp@chromium.org, Apr 17 2018

Blockedon: 833846

Comment 89 by majidvp@chromium.org, Apr 18 2018

Blockedon: 834452

Comment 90 by majidvp@chromium.org, Apr 24 2018

Blockedon: 836393

Comment 91 by majidvp@chromium.org, Apr 25 2018

Blockedon: 818103

Comment 92 by majidvp@chromium.org, Apr 25 2018

Blockedon: 791281

Comment 93 by smcgruer@chromium.org, May 3 2018

Blockedon: 839341

Comment 94 by majidvp@chromium.org, May 3 2018

Blockedon: 839555

Comment 95 by majidvp@chromium.org, May 7 2018

Blockedon: 840383

Comment 96 by majidvp@chromium.org, May 15 2018

Blockedon: 843238

Comment 97 by majidvp@chromium.org, May 15 2018

Blockedon: 843255

Comment 98 by sunyunjia@chromium.org, May 17 2018

Blockedon: 843727

Comment 99 by majidvp@chromium.org, May 18 2018

Blocking: 844436

Comment 100 by majidvp@chromium.org, May 18 2018

Blockedon: 844641

Comment 101 by majidvp@chromium.org, Jun 13 2018

Blockedon: 852475

Comment 102 by petermayo@chromium.org, Jun 22 2018

Blockedon: 855691

Comment 103 by majidvp@chromium.org, Jul 18 2018

Blockedon: 865017

Comment 104 by majidvp@chromium.org, Aug 3

Blockedon: 870711

Comment 105 by petermayo@chromium.org, Aug 13

Blockedon: 873673

Comment 106 by majidvp@chromium.org, Aug 17

Blockedon: 819102

Comment 107 by majidvp@chromium.org, Aug 17

Blockedon: 875262

Comment 108 by majidvp@chromium.org, Sep 20

Blockedon: 887659

Comment 109 by majidvp@chromium.org, Sep 21

Blockedon: 887949

Comment 110 by majidvp@chromium.org, Oct 17

Blockedon: 896249

Comment 111 by yigu@chromium.org, Nov 1

Blockedon: 901112

Comment 112 by majidvp@google.com, Nov 9

Blockedon: 903953

Comment 113 by majidvp@chromium.org, Dec 13

Blocking: 914918

Comment 114 by majidvp@chromium.org, Dec 13

Blockedon: 883989

Comment 115 by majidvp@chromium.org, Dec 13

Blockedon: 914957

Comment 116 by majidvp@chromium.org, Dec 14

Blockedon: 915344

Comment 117 by majidvp@chromium.org, Dec 14

Blockedon: 915352

Comment 118 by majidvp@chromium.org, Jan 9

Blocking: -914918

Comment 119 by majidvp@chromium.org, Jan 21

Blockedon: 923881

Comment 120 by majidvp@chromium.org, Jan 22

Blockedon: 924159

Comment 121 by majidvp@chromium.org, Feb 5

Owner: nzolghadr@chromium.org
Assigning to nzolghadr@ who is owner of scroll customization to triage further.

Comment 122 by majidvp@chromium.org, Feb 5

Owner: majidvp@chromium.org

Comment 123 by majidvp@chromium.org, Feb 15 (5 days ago)

Blockedon: 932619
Showing comments 24 - 123 of 123 Older

Sign in to add a comment