OLD | NEW |
1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "cc/trees/layer_tree_host_common.h" | 5 #include "cc/trees/layer_tree_host_common.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/trace_event/trace_event.h" | 9 #include "base/trace_event/trace_event.h" |
10 #include "cc/base/math_util.h" | 10 #include "cc/base/math_util.h" |
11 #include "cc/layers/heads_up_display_layer_impl.h" | 11 #include "cc/layers/heads_up_display_layer_impl.h" |
12 #include "cc/layers/layer.h" | 12 #include "cc/layers/layer.h" |
13 #include "cc/layers/layer_impl.h" | 13 #include "cc/layers/layer_impl.h" |
14 #include "cc/layers/layer_iterator.h" | 14 #include "cc/layers/layer_iterator.h" |
| 15 #include "cc/layers/render_surface_draw_properties.h" |
15 #include "cc/layers/render_surface_impl.h" | 16 #include "cc/layers/render_surface_impl.h" |
16 #include "cc/trees/draw_property_utils.h" | 17 #include "cc/trees/draw_property_utils.h" |
17 #include "cc/trees/layer_tree_host.h" | 18 #include "cc/trees/layer_tree_host.h" |
18 #include "cc/trees/layer_tree_impl.h" | 19 #include "cc/trees/layer_tree_impl.h" |
19 #include "ui/gfx/geometry/rect_conversions.h" | 20 #include "ui/gfx/geometry/rect_conversions.h" |
20 #include "ui/gfx/geometry/vector2d_conversions.h" | 21 #include "ui/gfx/geometry/vector2d_conversions.h" |
21 #include "ui/gfx/transform.h" | 22 #include "ui/gfx/transform.h" |
22 #include "ui/gfx/transform_util.h" | 23 #include "ui/gfx/transform_util.h" |
23 | 24 |
24 namespace cc { | 25 namespace cc { |
(...skipping 2236 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2261 if (delta > tolerance) | 2262 if (delta > tolerance) |
2262 return false; | 2263 return false; |
2263 } | 2264 } |
2264 } | 2265 } |
2265 | 2266 |
2266 return true; | 2267 return true; |
2267 } | 2268 } |
2268 | 2269 |
2269 void VerifyPropertyTreeValuesForSurface(RenderSurfaceImpl* render_surface, | 2270 void VerifyPropertyTreeValuesForSurface(RenderSurfaceImpl* render_surface, |
2270 PropertyTrees* property_trees) { | 2271 PropertyTrees* property_trees) { |
2271 const bool render_surface_draw_transforms_match = | 2272 RenderSurfaceDrawProperties draw_properties; |
2272 ApproximatelyEqual(render_surface->draw_transform(), | 2273 ComputeSurfaceDrawPropertiesUsingPropertyTrees(render_surface, property_trees, |
2273 DrawTransformOfRenderSurfaceFromPropertyTrees( | 2274 &draw_properties); |
2274 render_surface, property_trees->transform_tree)); | 2275 |
| 2276 // content_rect has to be computed recursively, so is computed separately from |
| 2277 // other draw properties. |
| 2278 draw_properties.content_rect = |
| 2279 render_surface->content_rect_from_property_trees(); |
| 2280 |
| 2281 const bool render_surface_draw_transforms_match = ApproximatelyEqual( |
| 2282 render_surface->draw_transform(), draw_properties.draw_transform); |
2275 CHECK(render_surface_draw_transforms_match) | 2283 CHECK(render_surface_draw_transforms_match) |
2276 << "expected: " << render_surface->draw_transform().ToString() | 2284 << "expected: " << render_surface->draw_transform().ToString() |
2277 << " actual: " | 2285 << " actual: " << draw_properties.draw_transform.ToString(); |
2278 << DrawTransformOfRenderSurfaceFromPropertyTrees( | |
2279 render_surface, property_trees->transform_tree) | |
2280 .ToString(); | |
2281 | 2286 |
2282 const bool render_surface_screen_space_transform_match = | 2287 const bool render_surface_screen_space_transform_match = |
2283 ApproximatelyEqual(render_surface->screen_space_transform(), | 2288 ApproximatelyEqual(render_surface->screen_space_transform(), |
2284 ScreenSpaceTransformOfRenderSurfaceFromPropertyTrees( | 2289 draw_properties.screen_space_transform); |
2285 render_surface, property_trees->transform_tree)); | |
2286 CHECK(render_surface_screen_space_transform_match) | 2290 CHECK(render_surface_screen_space_transform_match) |
2287 << "expected: " << render_surface->screen_space_transform().ToString() | 2291 << "expected: " << render_surface->screen_space_transform().ToString() |
2288 << " actual: " | 2292 << " actual: " << draw_properties.screen_space_transform.ToString(); |
2289 << ScreenSpaceTransformOfRenderSurfaceFromPropertyTrees( | |
2290 render_surface, property_trees->transform_tree) | |
2291 .ToString(); | |
2292 | 2293 |
2293 const bool render_surface_replica_draw_transforms_match = | 2294 const bool render_surface_replica_draw_transforms_match = |
2294 ApproximatelyEqual(render_surface->replica_draw_transform(), | 2295 ApproximatelyEqual(render_surface->replica_draw_transform(), |
2295 DrawTransformOfRenderSurfaceReplicaFromPropertyTrees( | 2296 draw_properties.replica_draw_transform); |
2296 render_surface, property_trees->transform_tree)); | |
2297 CHECK(render_surface_replica_draw_transforms_match) | 2297 CHECK(render_surface_replica_draw_transforms_match) |
2298 << "expected: " << render_surface->replica_draw_transform().ToString() | 2298 << "expected: " << render_surface->replica_draw_transform().ToString() |
2299 << " actual: " | 2299 << " actual: " << draw_properties.replica_draw_transform.ToString(); |
2300 << DrawTransformOfRenderSurfaceReplicaFromPropertyTrees( | |
2301 render_surface, property_trees->transform_tree) | |
2302 .ToString(); | |
2303 | 2300 |
2304 const bool render_surface_replica_screen_space_transforms_match = | 2301 const bool render_surface_replica_screen_space_transforms_match = |
2305 ApproximatelyEqual( | 2302 ApproximatelyEqual(render_surface->replica_screen_space_transform(), |
2306 render_surface->replica_screen_space_transform(), | 2303 draw_properties.replica_screen_space_transform); |
2307 ScreenSpaceTransformOfRenderSurfaceReplicaFromPropertyTrees( | |
2308 render_surface, property_trees->transform_tree)); | |
2309 CHECK(render_surface_replica_screen_space_transforms_match) | 2304 CHECK(render_surface_replica_screen_space_transforms_match) |
2310 << "expected: " | 2305 << "expected: " |
2311 << render_surface->replica_screen_space_transform().ToString() | 2306 << render_surface->replica_screen_space_transform().ToString() |
2312 << " actual: " | 2307 << " actual: " |
2313 << ScreenSpaceTransformOfRenderSurfaceReplicaFromPropertyTrees( | 2308 << draw_properties.replica_screen_space_transform.ToString(); |
2314 render_surface, property_trees->transform_tree) | |
2315 .ToString(); | |
2316 | 2309 |
2317 CHECK_EQ(render_surface->is_clipped(), | 2310 CHECK_EQ(render_surface->is_clipped(), draw_properties.is_clipped); |
2318 RenderSurfaceIsClippedFromPropertyTrees(render_surface, | |
2319 property_trees->clip_tree)); | |
2320 | 2311 |
2321 const bool render_surface_clip_rects_match = | 2312 const bool render_surface_clip_rects_match = ApproximatelyEqual( |
2322 ApproximatelyEqual(render_surface->clip_rect(), | 2313 render_surface->clip_rect(), draw_properties.clip_rect); |
2323 ClipRectOfRenderSurfaceFromPropertyTrees( | |
2324 render_surface, property_trees->clip_tree)); | |
2325 CHECK(render_surface_clip_rects_match) | 2314 CHECK(render_surface_clip_rects_match) |
2326 << "expected: " << render_surface->clip_rect().ToString() << " actual: " | 2315 << "expected: " << render_surface->clip_rect().ToString() |
2327 << ClipRectOfRenderSurfaceFromPropertyTrees(render_surface, | 2316 << " actual: " << draw_properties.clip_rect.ToString(); |
2328 property_trees->clip_tree) | |
2329 .ToString(); | |
2330 | 2317 |
2331 const bool render_surface_content_rects_match = | 2318 CHECK_EQ(render_surface->draw_opacity(), draw_properties.draw_opacity); |
2332 ApproximatelyEqual(render_surface->content_rect(), | 2319 |
2333 render_surface->content_rect_from_property_trees()); | 2320 const bool render_surface_content_rects_match = ApproximatelyEqual( |
| 2321 render_surface->content_rect(), draw_properties.content_rect); |
2334 CHECK(render_surface_content_rects_match) | 2322 CHECK(render_surface_content_rects_match) |
2335 << "expected: " << render_surface->content_rect().ToString() | 2323 << "expected: " << render_surface->content_rect().ToString() |
2336 << " actual: " | 2324 << " actual: " << draw_properties.content_rect.ToString(); |
2337 << render_surface->content_rect_from_property_trees().ToString(); | |
2338 | |
2339 CHECK_EQ(render_surface->draw_opacity(), | |
2340 DrawOpacityOfRenderSurfaceFromPropertyTrees( | |
2341 render_surface, property_trees->effect_tree)); | |
2342 } | 2325 } |
2343 | 2326 |
2344 void VerifyPropertyTreeValuesForLayer(LayerImpl* current_layer, | 2327 void VerifyPropertyTreeValuesForLayer(LayerImpl* current_layer, |
2345 PropertyTrees* property_trees, | 2328 PropertyTrees* property_trees, |
2346 bool layers_always_allowed_lcd_text, | 2329 bool layers_always_allowed_lcd_text, |
2347 bool can_use_lcd_text) { | 2330 bool can_use_lcd_text) { |
2348 const bool visible_rects_match = | 2331 DrawProperties draw_properties; |
2349 ApproximatelyEqual(current_layer->visible_layer_rect(), | 2332 ComputeLayerDrawPropertiesUsingPropertyTrees( |
2350 current_layer->visible_rect_from_property_trees()); | 2333 current_layer, property_trees, layers_always_allowed_lcd_text, |
| 2334 can_use_lcd_text, &draw_properties); |
| 2335 |
| 2336 const bool visible_rects_match = ApproximatelyEqual( |
| 2337 current_layer->visible_layer_rect(), draw_properties.visible_layer_rect); |
2351 CHECK(visible_rects_match) | 2338 CHECK(visible_rects_match) |
2352 << "expected: " << current_layer->visible_layer_rect().ToString() | 2339 << "expected: " << current_layer->visible_layer_rect().ToString() |
2353 << " actual: " | 2340 << " actual: " << draw_properties.visible_layer_rect.ToString(); |
2354 << current_layer->visible_rect_from_property_trees().ToString(); | |
2355 | 2341 |
2356 const bool draw_transforms_match = | 2342 const bool draw_transforms_match = ApproximatelyEqual( |
2357 ApproximatelyEqual(current_layer->draw_transform(), | 2343 current_layer->draw_transform(), draw_properties.target_space_transform); |
2358 DrawTransformFromPropertyTrees( | |
2359 current_layer, property_trees->transform_tree)); | |
2360 CHECK(draw_transforms_match) | 2344 CHECK(draw_transforms_match) |
2361 << "expected: " << current_layer->draw_transform().ToString() | 2345 << "expected: " << current_layer->draw_transform().ToString() |
2362 << " actual: " | 2346 << " actual: " << draw_properties.target_space_transform.ToString(); |
2363 << DrawTransformFromPropertyTrees( | |
2364 current_layer, property_trees->transform_tree).ToString(); | |
2365 | 2347 |
2366 const bool draw_opacities_match = | 2348 CHECK_EQ(current_layer->draw_opacity(), draw_properties.opacity); |
2367 current_layer->draw_opacity() == | 2349 CHECK_EQ(current_layer->can_use_lcd_text(), draw_properties.can_use_lcd_text); |
2368 DrawOpacityFromPropertyTrees(current_layer, property_trees->effect_tree); | |
2369 CHECK(draw_opacities_match) | |
2370 << "expected: " << current_layer->draw_opacity() | |
2371 << " actual: " << DrawOpacityFromPropertyTrees( | |
2372 current_layer, property_trees->effect_tree); | |
2373 | |
2374 const bool can_use_lcd_text_match = | |
2375 CanUseLcdTextFromPropertyTrees( | |
2376 current_layer, layers_always_allowed_lcd_text, can_use_lcd_text, | |
2377 property_trees) == current_layer->can_use_lcd_text(); | |
2378 CHECK(can_use_lcd_text_match); | |
2379 | |
2380 CHECK_EQ(current_layer->screen_space_transform_is_animating(), | 2350 CHECK_EQ(current_layer->screen_space_transform_is_animating(), |
2381 ScreenSpaceTransformIsAnimatingFromPropertyTrees( | 2351 draw_properties.screen_space_transform_is_animating); |
2382 current_layer, property_trees->transform_tree)); | |
2383 | 2352 |
2384 const bool drawable_content_rects_match = | 2353 const bool drawable_content_rects_match = |
2385 ApproximatelyEqual(current_layer->drawable_content_rect(), | 2354 ApproximatelyEqual(current_layer->drawable_content_rect(), |
2386 DrawableContentRectFromPropertyTrees( | 2355 draw_properties.drawable_content_rect); |
2387 current_layer, property_trees->transform_tree)); | |
2388 CHECK(drawable_content_rects_match) | 2356 CHECK(drawable_content_rects_match) |
2389 << "expected: " << current_layer->drawable_content_rect().ToString() | 2357 << "expected: " << current_layer->drawable_content_rect().ToString() |
2390 << " actual: " | 2358 << " actual: " << draw_properties.drawable_content_rect.ToString(); |
2391 << DrawableContentRectFromPropertyTrees(current_layer, | |
2392 property_trees->transform_tree) | |
2393 .ToString(); | |
2394 | 2359 |
2395 const bool clip_rects_match = ApproximatelyEqual( | 2360 const bool clip_rects_match = |
2396 current_layer->clip_rect(), | 2361 ApproximatelyEqual(current_layer->clip_rect(), draw_properties.clip_rect); |
2397 ClipRectFromPropertyTrees(current_layer, property_trees->transform_tree)); | |
2398 CHECK(clip_rects_match) << "expected: " | 2362 CHECK(clip_rects_match) << "expected: " |
2399 << current_layer->clip_rect().ToString() | 2363 << current_layer->clip_rect().ToString() |
2400 << " actual: " | 2364 << " actual: " |
2401 << ClipRectFromPropertyTrees( | 2365 << draw_properties.clip_rect.ToString(); |
2402 current_layer, property_trees->transform_tree) | |
2403 .ToString(); | |
2404 | 2366 |
2405 CHECK_EQ(current_layer->draw_properties().maximum_animation_contents_scale, | 2367 CHECK_EQ(current_layer->draw_properties().maximum_animation_contents_scale, |
2406 MaximumAnimationTargetScaleFromPropertyTrees( | 2368 draw_properties.maximum_animation_contents_scale); |
2407 current_layer, property_trees->transform_tree)); | |
2408 CHECK_EQ(current_layer->draw_properties().starting_animation_contents_scale, | 2369 CHECK_EQ(current_layer->draw_properties().starting_animation_contents_scale, |
2409 StartingAnimationScaleFromPropertyTrees( | 2370 draw_properties.starting_animation_contents_scale); |
2410 current_layer, property_trees->transform_tree)); | |
2411 } | 2371 } |
2412 | 2372 |
2413 void VerifyPropertyTreeValues( | 2373 void VerifyPropertyTreeValues( |
2414 LayerTreeHostCommon::CalcDrawPropsImplInputs* inputs) { | 2374 LayerTreeHostCommon::CalcDrawPropsImplInputs* inputs) { |
2415 LayerIterator it, end; | 2375 LayerIterator it, end; |
2416 for (it = LayerIterator::Begin(inputs->render_surface_layer_list), | 2376 for (it = LayerIterator::Begin(inputs->render_surface_layer_list), |
2417 end = LayerIterator::End(inputs->render_surface_layer_list); | 2377 end = LayerIterator::End(inputs->render_surface_layer_list); |
2418 it != end; ++it) { | 2378 it != end; ++it) { |
2419 LayerImpl* current_layer = *it; | 2379 LayerImpl* current_layer = *it; |
2420 if (it.represents_target_render_surface()) | 2380 if (it.represents_target_render_surface()) |
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2575 if (render_to_separate_surface) { | 2535 if (render_to_separate_surface) { |
2576 if (IsRootLayer(layer)) { | 2536 if (IsRootLayer(layer)) { |
2577 // The root layer's surface content rect is always the entire viewport. | 2537 // The root layer's surface content rect is always the entire viewport. |
2578 gfx::Rect viewport = | 2538 gfx::Rect viewport = |
2579 gfx::ToEnclosingRect(property_trees->clip_tree.ViewportClip()); | 2539 gfx::ToEnclosingRect(property_trees->clip_tree.ViewportClip()); |
2580 layer->render_surface()->SetAccumulatedContentRect(viewport); | 2540 layer->render_surface()->SetAccumulatedContentRect(viewport); |
2581 } else { | 2541 } else { |
2582 // If the owning layer of a render surface draws content, the content | 2542 // If the owning layer of a render surface draws content, the content |
2583 // rect of the render surface is initialized to the drawable content | 2543 // rect of the render surface is initialized to the drawable content |
2584 // rect of the layer. | 2544 // rect of the layer. |
2585 gfx::Rect content_rect = | 2545 gfx::Rect content_rect = layer->DrawsContent() |
2586 layer->DrawsContent() ? DrawableContentRectFromPropertyTrees( | 2546 ? layer->drawable_content_rect() |
2587 layer, property_trees->transform_tree) | 2547 : gfx::Rect(); |
2588 : gfx::Rect(); | |
2589 layer->render_surface()->SetAccumulatedContentRect(content_rect); | 2548 layer->render_surface()->SetAccumulatedContentRect(content_rect); |
2590 } | 2549 } |
2591 } else if (!layer_should_be_skipped && | 2550 } else if (!layer_should_be_skipped && |
2592 !IsRootLayer(layer->render_target())) { | 2551 !IsRootLayer(layer->render_target())) { |
2593 // In this case, the layer's drawable content rect can expand the | 2552 // In this case, the layer's drawable content rect can expand the |
2594 // content rect of the render surface it is drawing into. | 2553 // content rect of the render surface it is drawing into. |
2595 gfx::Rect surface_content_rect = | 2554 gfx::Rect surface_content_rect = |
2596 layer->render_target()->render_surface()->accumulated_content_rect(); | 2555 layer->render_target()->render_surface()->accumulated_content_rect(); |
2597 surface_content_rect.Union(DrawableContentRectFromPropertyTrees( | 2556 surface_content_rect.Union(layer->drawable_content_rect()); |
2598 layer, property_trees->transform_tree)); | |
2599 layer->render_target()->render_surface()->SetAccumulatedContentRect( | 2557 layer->render_target()->render_surface()->SetAccumulatedContentRect( |
2600 surface_content_rect); | 2558 surface_content_rect); |
2601 } | 2559 } |
2602 } | 2560 } |
2603 | 2561 |
2604 for (auto& child_layer : layer->children()) { | 2562 for (auto& child_layer : layer->children()) { |
2605 CalculateRenderSurfaceLayerListInternal( | 2563 CalculateRenderSurfaceLayerListInternal( |
2606 child_layer, property_trees, render_surface_layer_list, descendants, | 2564 child_layer, property_trees, render_surface_layer_list, descendants, |
2607 nearest_occlusion_immune_ancestor, layer_is_drawn, | 2565 nearest_occlusion_immune_ancestor, layer_is_drawn, |
2608 can_render_to_separate_surface, current_render_surface_layer_list_id, | 2566 can_render_to_separate_surface, current_render_surface_layer_list_id, |
(...skipping 18 matching lines...) Expand all Loading... |
2627 } | 2585 } |
2628 | 2586 |
2629 if (render_to_separate_surface && !IsRootLayer(layer) && | 2587 if (render_to_separate_surface && !IsRootLayer(layer) && |
2630 layer->render_surface()->layer_list().empty()) { | 2588 layer->render_surface()->layer_list().empty()) { |
2631 RemoveSurfaceForEarlyExit(layer, render_surface_layer_list); | 2589 RemoveSurfaceForEarlyExit(layer, render_surface_layer_list); |
2632 return; | 2590 return; |
2633 } | 2591 } |
2634 | 2592 |
2635 if (verify_property_trees && render_to_separate_surface && | 2593 if (verify_property_trees && render_to_separate_surface && |
2636 !IsRootLayer(layer)) { | 2594 !IsRootLayer(layer)) { |
2637 if (!layer->replica_layer() && | 2595 if (!layer->replica_layer() && layer->render_surface()->is_clipped()) { |
2638 RenderSurfaceIsClippedFromPropertyTrees(layer->render_surface(), | |
2639 property_trees->clip_tree)) { | |
2640 // Here, we clip the render surface's content rect with its clip rect. | 2596 // Here, we clip the render surface's content rect with its clip rect. |
2641 // As the clip rect of render surface is in the surface's target space, | 2597 // As the clip rect of render surface is in the surface's target space, |
2642 // we first map the content rect into the target space, intersect it with | 2598 // we first map the content rect into the target space, intersect it with |
2643 // clip rect and project back the result to the surface space. | 2599 // clip rect and project back the result to the surface space. |
2644 gfx::Rect surface_content_rect = | 2600 gfx::Rect surface_content_rect = |
2645 layer->render_surface()->accumulated_content_rect(); | 2601 layer->render_surface()->accumulated_content_rect(); |
2646 | 2602 |
2647 if (!surface_content_rect.IsEmpty()) { | 2603 if (!surface_content_rect.IsEmpty()) { |
2648 gfx::Rect surface_clip_rect = LayerTreeHostCommon::CalculateVisibleRect( | 2604 gfx::Rect surface_clip_rect = LayerTreeHostCommon::CalculateVisibleRect( |
2649 ClipRectOfRenderSurfaceFromPropertyTrees(layer->render_surface(), | 2605 layer->render_surface()->clip_rect(), surface_content_rect, |
2650 property_trees->clip_tree), | 2606 layer->render_surface()->draw_transform()); |
2651 surface_content_rect, | |
2652 DrawTransformOfRenderSurfaceFromPropertyTrees( | |
2653 layer->render_surface(), property_trees->transform_tree)); | |
2654 surface_content_rect.Intersect(surface_clip_rect); | 2607 surface_content_rect.Intersect(surface_clip_rect); |
2655 layer->render_surface()->SetAccumulatedContentRect( | 2608 layer->render_surface()->SetAccumulatedContentRect( |
2656 surface_content_rect); | 2609 surface_content_rect); |
2657 } | 2610 } |
2658 } | 2611 } |
2659 layer->render_surface()->SetContentRectFromPropertyTrees( | 2612 layer->render_surface()->SetContentRectFromPropertyTrees( |
2660 layer->render_surface()->accumulated_content_rect()); | 2613 layer->render_surface()->accumulated_content_rect()); |
2661 if (!IsRootLayer(layer->parent()->render_target())) { | 2614 if (!IsRootLayer(layer->parent()->render_target())) { |
2662 // The surface's drawable content rect may expand the content rect | 2615 // The surface's drawable content rect may expand the content rect |
2663 // of its target's surface(surface's target's surface). | 2616 // of its target's surface(surface's target's surface). |
2664 gfx::Rect surface_target_rect = layer->parent() | 2617 gfx::Rect surface_target_rect = layer->parent() |
2665 ->render_target() | 2618 ->render_target() |
2666 ->render_surface() | 2619 ->render_surface() |
2667 ->accumulated_content_rect(); | 2620 ->accumulated_content_rect(); |
2668 surface_target_rect.Union(DrawableContentRectOfSurfaceFromPropertyTrees( | 2621 surface_target_rect.Union( |
2669 layer->render_surface(), property_trees->transform_tree)); | 2622 gfx::ToEnclosedRect(layer->render_surface()->DrawableContentRect())); |
2670 layer->parent() | 2623 layer->parent() |
2671 ->render_target() | 2624 ->render_target() |
2672 ->render_surface() | 2625 ->render_surface() |
2673 ->SetAccumulatedContentRect(surface_target_rect); | 2626 ->SetAccumulatedContentRect(surface_target_rect); |
2674 } | 2627 } |
2675 } | 2628 } |
2676 | 2629 |
2677 if (verify_property_trees && IsRootLayer(layer)) | 2630 if (verify_property_trees && IsRootLayer(layer)) |
2678 layer->render_surface()->SetContentRectFromPropertyTrees( | 2631 layer->render_surface()->SetContentRectFromPropertyTrees( |
2679 layer->render_surface()->accumulated_content_rect()); | 2632 layer->render_surface()->accumulated_content_rect()); |
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2824 | 2777 |
2825 PropertyTrees* GetPropertyTrees(Layer* layer) { | 2778 PropertyTrees* GetPropertyTrees(Layer* layer) { |
2826 return layer->layer_tree_host()->property_trees(); | 2779 return layer->layer_tree_host()->property_trees(); |
2827 } | 2780 } |
2828 | 2781 |
2829 PropertyTrees* GetPropertyTrees(LayerImpl* layer) { | 2782 PropertyTrees* GetPropertyTrees(LayerImpl* layer) { |
2830 return layer->layer_tree_impl()->property_trees(); | 2783 return layer->layer_tree_impl()->property_trees(); |
2831 } | 2784 } |
2832 | 2785 |
2833 } // namespace cc | 2786 } // namespace cc |
OLD | NEW |