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

Issue 603147 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 3
Type: Feature

Blocking:
issue 557194



Sign in to add a comment

Use the scroll tree to determine if a layer scrolls a drawn RSLL member

Project Member Reported by ajuma@chromium.org, Apr 13 2016

Issue description

Currently, the computation of ScrollsOrScrollbarAnyDrawnRenderSurfaceLayerListMember in layer_tree_impl.cc uses LayerImpl::layer_or_descendant_is_drawn() and LayerImpl::scroll_children(). The information needed to compute this should be moved to the scroll tree (that is, each scroll node should know whether it has a drawn descendant), and LayerImpl::layer_or_descendant_is_drawn() should be deleted (since this implicitly assumes a layer tree).


 

Comment 1 by ajuma@chromium.org, Apr 13 2016

Labels: -OS-Linux

Comment 2 by ajuma@chromium.org, Apr 13 2016

Owner: ajuma@chromium.org
Status: Assigned (was: Available)
Project Member

Comment 3 by bugdroid1@chromium.org, Apr 19 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5c8f5db211972b428577a3e268d25dccef61c366

commit 5c8f5db211972b428577a3e268d25dccef61c366
Author: ajuma <ajuma@chromium.org>
Date: Tue Apr 19 17:29:11 2016

cc: Construct the RSLL without using layer hierarchy

This removes recursion over the layer tree from the construction of the
render surface layer list. Instead, we iterate over the layers in
stacking order to produce an initial render surface layer list (that
might include surfaces that later turn out to have empty content rects),
then iterate backwards over the top-level list of surfaces in order to
compute their content rects, and then iterate over the top-level list of
surfaces to produce the final RSLL that includes only non-empty surfaces.

BUG= 568799 , 603147 
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel

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

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

[modify] https://crrev.com/5c8f5db211972b428577a3e268d25dccef61c366/cc/layers/layer_impl.cc
[modify] https://crrev.com/5c8f5db211972b428577a3e268d25dccef61c366/cc/layers/layer_impl.h
[modify] https://crrev.com/5c8f5db211972b428577a3e268d25dccef61c366/cc/layers/render_surface_impl.h
[modify] https://crrev.com/5c8f5db211972b428577a3e268d25dccef61c366/cc/trees/layer_tree_host_common.cc
[modify] https://crrev.com/5c8f5db211972b428577a3e268d25dccef61c366/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/5c8f5db211972b428577a3e268d25dccef61c366/cc/trees/layer_tree_impl.cc
[modify] https://crrev.com/5c8f5db211972b428577a3e268d25dccef61c366/cc/trees/property_tree.cc
[modify] https://crrev.com/5c8f5db211972b428577a3e268d25dccef61c366/cc/trees/property_tree.h

Comment 4 by ajuma@chromium.org, Apr 19 2016

Status: Fixed (was: Assigned)

Sign in to add a comment