Currently we depend on Layer Push Properties doing the right thing and then we use LayerImpl's transform to update the the transform tree during commit.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6c3404e93ce4c3817c33d064f6f9cdca4934c04c commit 6c3404e93ce4c3817c33d064f6f9cdca4934c04c Author: jaydasika <jaydasika@chromium.org> Date: Thu May 19 02:40:36 2016 cc : Track transform animation changes on transform tree BUG= 609208 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/1987123002 Cr-Commit-Position: refs/heads/master@{#394642} [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/animation/element_animations.cc [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/animation/element_animations.h [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/animation/element_animations_unittest.cc [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/layers/layer.cc [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/layers/layer.h [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/layers/layer_impl.cc [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/layers/layer_impl.h [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/proto/property_tree.proto [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/test/animation_timelines_test_common.cc [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/test/animation_timelines_test_common.h [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/trees/layer_tree_host.cc [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/trees/layer_tree_host.h [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/trees/layer_tree_host_common_unittest.cc [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/trees/layer_tree_host_impl.cc [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/trees/layer_tree_host_impl.h [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/trees/mutator_host_client.h [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/trees/property_tree.cc [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/trees/property_tree.h [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/trees/property_tree_builder.cc [modify] https://crrev.com/6c3404e93ce4c3817c33d064f6f9cdca4934c04c/cc/trees/property_tree_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/f2778b2fb94176efcbaab7502cc65279ee8e64e8 commit f2778b2fb94176efcbaab7502cc65279ee8e64e8 Author: jaydasika <jaydasika@chromium.org> Date: Fri May 20 17:52:20 2016 cc : Add IsInIdtoIndexMap to property tres And use that to update during animations. BUG= 609208 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/1994333002 Cr-Commit-Position: refs/heads/master@{#395109} [modify] https://crrev.com/f2778b2fb94176efcbaab7502cc65279ee8e64e8/cc/layers/layer.cc [modify] https://crrev.com/f2778b2fb94176efcbaab7502cc65279ee8e64e8/cc/layers/layer_impl.cc [modify] https://crrev.com/f2778b2fb94176efcbaab7502cc65279ee8e64e8/cc/trees/property_tree.cc [modify] https://crrev.com/f2778b2fb94176efcbaab7502cc65279ee8e64e8/cc/trees/property_tree.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/63e95dd15a2f88abac85ae5ce9bb2a4fa4c0c1c2 commit 63e95dd15a2f88abac85ae5ce9bb2a4fa4c0c1c2 Author: jaydasika <jaydasika@chromium.org> Date: Mon May 23 19:47:40 2016 Revert of cc : Add IsInIdtoIndexMap to property tres (patchset #4 id:60001 of https://codereview.chromium.org/1994333002/ ) Reason for revert: Breaking android perf test: crbug.com/614022 Original issue's description: > cc : Add IsInIdtoIndexMap to property tres > > And use that to update during animations. > > BUG= 609208 > CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel > > Committed: https://crrev.com/f2778b2fb94176efcbaab7502cc65279ee8e64e8 > Cr-Commit-Position: refs/heads/master@{#395109} TBR=weiliangc@chromium.org,ajuma@chromium.org,vollick@chromium.org BUG= 609208 patch from issue 2000253003 at patchset 1 (http://crrev.com/2000253003#ps1) CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/2004973002 Cr-Commit-Position: refs/heads/master@{#395389} [modify] https://crrev.com/63e95dd15a2f88abac85ae5ce9bb2a4fa4c0c1c2/cc/layers/layer.cc [modify] https://crrev.com/63e95dd15a2f88abac85ae5ce9bb2a4fa4c0c1c2/cc/layers/layer_impl.cc [modify] https://crrev.com/63e95dd15a2f88abac85ae5ce9bb2a4fa4c0c1c2/cc/trees/property_tree.cc [modify] https://crrev.com/63e95dd15a2f88abac85ae5ce9bb2a4fa4c0c1c2/cc/trees/property_tree.h
This was also turning the GPU FYI Nexus 5 and Nexus 6 bots red. (It seemed to be flaky on the 5X.) Interestingly, the Nexus 9 stayed green.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5d9c03a0e675528d3381753c3788d759202f4293 commit 5d9c03a0e675528d3381753c3788d759202f4293 Author: jaydasika <jaydasika@chromium.org> Date: Thu May 26 19:21:05 2016 cc : Reland Add IsInIdtoIndexMap to property tres And use that to update during animations. This patch also makes Layer::OnOpacityAnimated (and other animation functions in LayerImpl) independent of property tree indices stored on LayerImpl. This is needed to ensure we don't depend on the order in which we push layer properties. BUG= 609208 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel patch from issue 1994333002 at patchset 60001 (http://crrev.com/1994333002#ps60001) Review-Url: https://codereview.chromium.org/2014533005 Cr-Commit-Position: refs/heads/master@{#396250} [modify] https://crrev.com/5d9c03a0e675528d3381753c3788d759202f4293/cc/layers/layer.cc [modify] https://crrev.com/5d9c03a0e675528d3381753c3788d759202f4293/cc/layers/layer_impl.cc [modify] https://crrev.com/5d9c03a0e675528d3381753c3788d759202f4293/cc/layers/scrollbar_layer_unittest.cc [modify] https://crrev.com/5d9c03a0e675528d3381753c3788d759202f4293/cc/trees/property_tree.cc [modify] https://crrev.com/5d9c03a0e675528d3381753c3788d759202f4293/cc/trees/property_tree.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b9f4613f226aaca4ed11658c42cfacbe5eb48f22 commit b9f4613f226aaca4ed11658c42cfacbe5eb48f22 Author: jaydasika <jaydasika@chromium.org> Date: Wed Jun 01 19:17:56 2016 cc : Use transform node data to determine which transform wins at commit Since the transform tree tracks whether there is a curretly running transform animation, it can be used to determine whether the local transform in transform tree node should be overwritten at commit time BUG= 609208 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/2027073002 Cr-Commit-Position: refs/heads/master@{#397201} [modify] https://crrev.com/b9f4613f226aaca4ed11658c42cfacbe5eb48f22/cc/layers/layer_impl.cc [modify] https://crrev.com/b9f4613f226aaca4ed11658c42cfacbe5eb48f22/cc/trees/layer_tree_host_unittest.cc [modify] https://crrev.com/b9f4613f226aaca4ed11658c42cfacbe5eb48f22/cc/trees/layer_tree_impl.cc [modify] https://crrev.com/b9f4613f226aaca4ed11658c42cfacbe5eb48f22/cc/trees/layer_tree_impl.h [modify] https://crrev.com/b9f4613f226aaca4ed11658c42cfacbe5eb48f22/cc/trees/property_tree_builder.cc
Comment 1 by jaydasika@chromium.org
, May 12 2016Owner: jaydasika@chromium.org
Status: Started (was: Available)