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

Issue 1921503008: Blink CompositorWorker: Use CompositorElementId and CompositorIdToElementMap. (Closed)

Created:
4 years, 7 months ago by loyso (OOO)
Modified:
4 years, 7 months ago
Reviewers:
Ian Vollick, ajuma, esprehn
CC:
blink-reviews, blink-reviews-dom_chromium.org, blink-reviews-layout_chromium.org, chromium-reviews, dglazkov+blink, eae+blinkwatch, jchaffraix+rendering, leviw+renderwatch, pdr+renderingwatchlist_chromium.org, rwlbuis, sof, szager+layoutwatch_chromium.org, zoltan1
Base URL:
https://chromium.googlesource.com/chromium/src.git@elementid
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Blink CompositorWorker: Use CompositorElementId and CompositorIdToElementMap. THIS IS A SKETCH. PREVIEW ONLY. Switch from DomNodeIds to externally provided global unique ids. Next CL: Port CC Animations to use ElementId. BUG=510960

Patch Set 1 #

Patch Set 2 : Fix. #

Patch Set 3 : Remove ASSERT. #

Patch Set 4 : Fix. #

Patch Set 5 : Rebase. #

Patch Set 6 : Rebase. #

Patch Set 7 : Assign ElementId dynamically in ElementAnimations. #

Patch Set 8 : Vend ids via local blink nextCompositorElementId. #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+130 lines, -11 lines) Patch
M third_party/WebKit/Source/core/animation/ElementAnimations.h View 1 2 3 4 5 6 3 chunks +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/animation/ElementAnimations.cpp View 1 2 3 4 5 6 7 1 chunk +4 lines, -1 line 2 comments Download
M third_party/WebKit/Source/core/core.gypi View 1 2 3 4 5 6 7 1 chunk +2 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/core/dom/CompositorIdToElementMap.h View 1 chunk +26 lines, -0 lines 0 comments Download
A third_party/WebKit/Source/core/dom/CompositorIdToElementMap.cpp View 1 2 1 chunk +64 lines, -0 lines 2 comments Download
M third_party/WebKit/Source/core/dom/CompositorProxy.cpp View 1 2 3 4 5 6 4 chunks +7 lines, -8 lines 0 comments Download
M third_party/WebKit/Source/core/dom/Element.h View 1 2 3 4 5 6 2 chunks +4 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/dom/Element.cpp View 1 2 3 4 5 6 1 chunk +13 lines, -0 lines 0 comments Download
M third_party/WebKit/Source/core/layout/compositing/CompositedLayerMapping.cpp View 1 2 3 4 5 6 2 chunks +3 lines, -1 line 0 comments Download
M third_party/WebKit/Source/core/layout/compositing/PaintLayerCompositor.cpp View 1 2 3 4 5 6 2 chunks +3 lines, -1 line 0 comments Download

Depends on Patchset:

Dependent Patchsets:

Messages

Total messages: 6 (3 generated)
loyso (OOO)
4 years, 7 months ago (2016-04-28 02:09:48 UTC) #3
esprehn
https://codereview.chromium.org/1921503008/diff/140001/third_party/WebKit/Source/core/animation/ElementAnimations.cpp File third_party/WebKit/Source/core/animation/ElementAnimations.cpp (right): https://codereview.chromium.org/1921503008/diff/140001/third_party/WebKit/Source/core/animation/ElementAnimations.cpp#newcode37 third_party/WebKit/Source/core/animation/ElementAnimations.cpp:37: static CompositorElementId s_nextCompositorElementId = 1; You should use DOMNodeIds, ...
4 years, 7 months ago (2016-05-10 22:46:58 UTC) #5
loyso (OOO)
4 years, 7 months ago (2016-05-12 05:55:39 UTC) #6
https://codereview.chromium.org/1921503008/diff/140001/third_party/WebKit/Sou...
File third_party/WebKit/Source/core/animation/ElementAnimations.cpp (right):

https://codereview.chromium.org/1921503008/diff/140001/third_party/WebKit/Sou...
third_party/WebKit/Source/core/animation/ElementAnimations.cpp:37: static
CompositorElementId s_nextCompositorElementId = 1;
On 2016/05/10 22:46:57, esprehn wrote:
> You should use DOMNodeIds, why can't you allocate an id the first time someone
> needs to read ElementAnimations::elementId() ?
Not every Compositor Animation subsystem has associated Element. See
ScrollAnimatorCompositorCoordinator.cpp and LinkHighlightImpl.cpp in the
dependent CL.

https://codereview.chromium.org/1921503008/diff/140001/third_party/WebKit/Sou...
File third_party/WebKit/Source/core/dom/CompositorIdToElementMap.cpp (right):

https://codereview.chromium.org/1921503008/diff/140001/third_party/WebKit/Sou...
third_party/WebKit/Source/core/dom/CompositorIdToElementMap.cpp:46: using
IdToElement = HeapHashMap<CompositorElementId, WeakMember<Element>>;
On 2016/05/10 22:46:57, esprehn wrote:
> I don't want to add more maps, use DOMNodeIds for this. We shouldn't have
other
> maps that do the same thing.

Acknowledged.

Powered by Google App Engine
This is Rietveld 408576698