DescriptionRemove the HashMap in RenderLayerCompositor's overlap map
The only reason we had a HashMap in the overlap map was to handle a recursive
treewalk in the case where we need to be composited because of our children. It
turns out the HashMap was wrong in the case where those children got composited
into another non-root layer. In that case, they would already be in the overlap
map and would be excluded in the recursive walk.
This CL removes the HashMap and instead just unites the bounds of all the
children during the normal recusive walk. If we need to composite ourself
because of our decendants, we use the united rect instead of recursively adding
all the descendant rects individually. This is both faster (3% on the
toggle_drawer compositing update) and more correct (see test).
R=enne@chromium.org
Patch Set 1 #
Total comments: 8
Patch Set 2 : Address comments #Patch Set 3 : rebase #Patch Set 4 : Now with out param #
Messages
Total messages: 10 (0 generated)
|