Currently we depend on Layer Push Properties doing the right thing and then we use LayerImpl's opacity to update the opacity on the effect tree during commit.
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5121caa8626ab6991b4a751d0aa5ee8be244e4b9 commit 5121caa8626ab6991b4a751d0aa5ee8be244e4b9 Author: jaydasika <jaydasika@chromium.org> Date: Thu May 05 15:43:35 2016 cc : Add subtree hidden bool to effect tree This is required for making the property tree sync at commit time independant of layer properties. Adding it to the effect tree also makes it possible to delete LayerImpl::hide_layer_and_subtree. I have deleted it and added it to LayerImplTestProperties for tests. BUG= 609205 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/1947683007 Cr-Commit-Position: refs/heads/master@{#391809} [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/layers/layer.cc [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/layers/layer_impl.cc [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/layers/layer_impl.h [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/layers/layer_impl_test_properties.cc [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/layers/layer_impl_test_properties.h [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/proto/property_tree.proto [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/trees/draw_property_utils.cc [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/trees/layer_tree_host_common_unittest.cc [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/trees/layer_tree_host_unittest.cc [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/trees/occlusion_tracker_unittest.cc [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/trees/property_tree.cc [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/trees/property_tree.h [modify] https://crrev.com/5121caa8626ab6991b4a751d0aa5ee8be244e4b9/cc/trees/property_tree_builder.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9cb21c771b787047cf24b129859b8d6636a0c61d commit 9cb21c771b787047cf24b129859b8d6636a0c61d Author: jaydasika <jaydasika@chromium.org> Date: Tue May 10 22:37:08 2016 cc : Track opacity animation changes on effect tree BUG= 609205 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/1957533002 Cr-Commit-Position: refs/heads/master@{#392751} [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/animation/element_animations.cc [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/animation/element_animations.h [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/animation/element_animations_unittest.cc [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/layers/layer.cc [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/layers/layer.h [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/layers/layer_impl.cc [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/layers/layer_impl.h [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/proto/property_tree.proto [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/test/animation_timelines_test_common.cc [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/test/animation_timelines_test_common.h [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/trees/layer_tree_host.cc [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/trees/layer_tree_host.h [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/trees/layer_tree_host_common_unittest.cc [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/trees/layer_tree_host_impl.cc [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/trees/layer_tree_host_impl.h [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/trees/mutator_host_client.h [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/trees/property_tree.cc [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/trees/property_tree.h [modify] https://crrev.com/9cb21c771b787047cf24b129859b8d6636a0c61d/cc/trees/property_tree_builder.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2368fd5868423ab3d0bd38ff968c65b19089065f commit 2368fd5868423ab3d0bd38ff968c65b19089065f Author: jaydasika <jaydasika@chromium.org> Date: Wed May 11 19:38:29 2016 cc : Use effect node data to determine which opacity wins at commit. Since the effect tree tracks whether there is a currently running opaciy animation, it can be used to determine whether the opacity in effect tree node should be overwriiten at commit time. BUG= 609205 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/1968803002 Cr-Commit-Position: refs/heads/master@{#393029} [modify] https://crrev.com/2368fd5868423ab3d0bd38ff968c65b19089065f/cc/layers/layer_impl.cc [modify] https://crrev.com/2368fd5868423ab3d0bd38ff968c65b19089065f/cc/layers/layer_impl.h [modify] https://crrev.com/2368fd5868423ab3d0bd38ff968c65b19089065f/cc/trees/layer_tree_host_unittest.cc [modify] https://crrev.com/2368fd5868423ab3d0bd38ff968c65b19089065f/cc/trees/layer_tree_impl.cc [modify] https://crrev.com/2368fd5868423ab3d0bd38ff968c65b19089065f/cc/trees/layer_tree_impl.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/4d30f43b693d0060c9e3857e7d2ca7ce7981d120 commit 4d30f43b693d0060c9e3857e7d2ca7ce7981d120 Author: jaydasika <jaydasika@chromium.org> Date: Wed May 18 00:16:33 2016 cc : Delete Opacity/Transform/FilterIsAnimatingOnImplOnly Because we do not support impl-only animations for these properties, these functions always return false and so we don't need them BUG= 609205 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/1981283005 Cr-Commit-Position: refs/heads/master@{#394279} [modify] https://crrev.com/4d30f43b693d0060c9e3857e7d2ca7ce7981d120/cc/layers/layer.cc [modify] https://crrev.com/4d30f43b693d0060c9e3857e7d2ca7ce7981d120/cc/layers/layer_impl.cc [modify] https://crrev.com/4d30f43b693d0060c9e3857e7d2ca7ce7981d120/cc/layers/layer_impl.h [modify] https://crrev.com/4d30f43b693d0060c9e3857e7d2ca7ce7981d120/cc/trees/layer_tree_impl.cc [modify] https://crrev.com/4d30f43b693d0060c9e3857e7d2ca7ce7981d120/cc/trees/layer_tree_impl.h
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d6f778b77449dd684b12b843abb281a1fb7fc949 commit d6f778b77449dd684b12b843abb281a1fb7fc949 Author: jaydasika <jaydasika@chromium.org> Date: Thu May 19 22:51:26 2016 cc : Delete ResetFlags in property trees We had different reset flags because opacity changes used to force rebuild of property trees on main thread and so we had no change tracking on effect tree on the main thread. But, now since opacity chnages don't force rebuild and its possible to do change tracking on effect tree on the main thread, we have to reset change tracking on both transform and effect trees every time. So, this flag is no longer needed. BUG= 609205 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/1995133002 Cr-Commit-Position: refs/heads/master@{#394891} [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/layers/layer_impl_unittest.cc [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/layers/layer_unittest.cc [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/layers/render_surface_unittest.cc [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/trees/damage_tracker_unittest.cc [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/trees/layer_tree_host.cc [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/trees/layer_tree_host_impl.cc [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/trees/layer_tree_host_unittest.cc [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/trees/layer_tree_impl.cc [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/trees/layer_tree_impl.h [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/trees/property_tree.cc [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/trees/property_tree.h [modify] https://crrev.com/d6f778b77449dd684b12b843abb281a1fb7fc949/cc/trees/tree_synchronizer_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6b6ee83e652f8f148c48ad1fb210b5b07e919a37 commit 6b6ee83e652f8f148c48ad1fb210b5b07e919a37 Author: jaydasika <jaydasika@chromium.org> Date: Fri May 20 00:30:19 2016 cc : Delete code not used outside tests related to impl-only animations This is a follow-up to crrev.com/1981283005. It deletes code in cc/animation for impl-only animations of opacity, transform and filter as we don't support impl-only animations for these properties. BUG= 609205 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/1988293003 Cr-Commit-Position: refs/heads/master@{#394926} [modify] https://crrev.com/6b6ee83e652f8f148c48ad1fb210b5b07e919a37/cc/animation/animation_host.cc [modify] https://crrev.com/6b6ee83e652f8f148c48ad1fb210b5b07e919a37/cc/animation/animation_host.h [modify] https://crrev.com/6b6ee83e652f8f148c48ad1fb210b5b07e919a37/cc/animation/element_animations.cc [modify] https://crrev.com/6b6ee83e652f8f148c48ad1fb210b5b07e919a37/cc/animation/element_animations.h [modify] https://crrev.com/6b6ee83e652f8f148c48ad1fb210b5b07e919a37/cc/animation/element_animations_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3093be3ace64cb9049fd76ccbcc749e2a48cd58d commit 3093be3ace64cb9049fd76ccbcc749e2a48cd58d Author: jaydasika <jaydasika@chromium.org> Date: Wed May 25 19:23:55 2016 cc : Initialize solid color scrollbar layer on main thread to 0. We currently initialize it to 0 on the compositor thread. This is required to make property trees on the compositor thread independent of opacity stored on LayerImpl (with the goal of deleting LayerImpl::opacity) BUG= 609205 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/1999783003 Cr-Commit-Position: refs/heads/master@{#395959} [modify] https://crrev.com/3093be3ace64cb9049fd76ccbcc749e2a48cd58d/cc/layers/layer.h [modify] https://crrev.com/3093be3ace64cb9049fd76ccbcc749e2a48cd58d/cc/layers/scrollbar_layer_unittest.cc [modify] https://crrev.com/3093be3ace64cb9049fd76ccbcc749e2a48cd58d/cc/layers/solid_color_scrollbar_layer.cc [modify] https://crrev.com/3093be3ace64cb9049fd76ccbcc749e2a48cd58d/cc/layers/solid_color_scrollbar_layer.h [modify] https://crrev.com/3093be3ace64cb9049fd76ccbcc749e2a48cd58d/cc/layers/solid_color_scrollbar_layer_impl.cc [modify] https://crrev.com/3093be3ace64cb9049fd76ccbcc749e2a48cd58d/cc/trees/layer_tree_host_impl_unittest.cc
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ab317e073bd7b2cb74c405f23008d0a6d4db6270 commit ab317e073bd7b2cb74c405f23008d0a6d4db6270 Author: jaydasika <jaydasika@chromium.org> Date: Wed Jun 01 00:53:18 2016 cc : Delete LayerImpl::opacity Since property trees have the required opacity info. To to this, this CL : (opacity = LayerImpl::opacity) - Removes pushing opacity at commit and activation. - Removes SetOpacity in OnOpacityAnimated - Removes SetOpacity in ScrollbarImplBase::PushPropertiesTo - For tests, adds opacity to LayerImplTestProperties. BUG= 609205 CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel Review-Url: https://codereview.chromium.org/2018833002 Cr-Commit-Position: refs/heads/master@{#397000} [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/input/scrollbar_animation_controller_linear_fade_unittest.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/input/scrollbar_animation_controller_thinning.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/input/scrollbar_animation_controller_thinning_unittest.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/layers/layer.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/layers/layer_impl.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/layers/layer_impl.h [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/layers/layer_impl_test_properties.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/layers/layer_impl_test_properties.h [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/layers/layer_impl_unittest.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/layers/render_surface_unittest.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/layers/scrollbar_layer_impl_base.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/layers/solid_color_scrollbar_layer_impl_unittest.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/test/layer_tree_json_parser_unittest.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/trees/damage_tracker_unittest.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/trees/layer_tree_host_common_unittest.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/trees/layer_tree_host_impl_unittest.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/trees/property_tree_builder.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/cc/trees/tree_synchronizer_unittest.cc [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/third_party/WebKit/Source/platform/graphics/CompositorMutableState.cpp [modify] https://crrev.com/ab317e073bd7b2cb74c405f23008d0a6d4db6270/third_party/WebKit/Source/platform/graphics/CompositorMutableStateTest.cpp
Comment 1 by jaydasika@chromium.org
, May 4 2016