Index: cc/trees/layer_tree_impl.cc |
diff --git a/cc/trees/layer_tree_impl.cc b/cc/trees/layer_tree_impl.cc |
index d1cc0a03b932ee59abee2191f52c66bf0840613b..96fa8d600aef640a45b26c4a228b65d032ae5848 100644 |
--- a/cc/trees/layer_tree_impl.cc |
+++ b/cc/trees/layer_tree_impl.cc |
@@ -960,9 +960,7 @@ void LayerTreeImpl::SetElementIdsForTesting() { |
} |
} |
-bool LayerTreeImpl::UpdateDrawProperties( |
- bool update_lcd_text, |
- bool force_skip_verify_visible_rect_calculations) { |
+bool LayerTreeImpl::UpdateDrawProperties(bool update_lcd_text) { |
if (!needs_update_draw_properties_) |
return true; |
@@ -993,10 +991,6 @@ bool LayerTreeImpl::UpdateDrawProperties( |
// We verify visible rect calculations whenever we verify clip tree |
// calculations except when this function is explicitly passed a flag asking |
// us to skip it. |
- bool verify_visible_rect_calculations = |
- force_skip_verify_visible_rect_calculations |
- ? false |
- : settings().verify_clip_tree_calculations; |
LayerTreeHostCommon::CalcDrawPropsImplInputs inputs( |
layer_list_[0], DrawViewportSize(), |
layer_tree_host_impl_->DrawTransform(), device_scale_factor(), |
@@ -1006,8 +1000,6 @@ bool LayerTreeImpl::UpdateDrawProperties( |
OverscrollElasticityLayer(), resource_provider()->max_texture_size(), |
can_render_to_separate_surface, |
settings().layer_transforms_should_scale_layer_contents, |
- settings().verify_clip_tree_calculations, |
- verify_visible_rect_calculations, |
&render_surface_layer_list_, &property_trees_); |
LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
if (const char* client_name = GetClientNameForMetrics()) { |
@@ -1788,39 +1780,24 @@ static bool PointIsClippedByAncestorClipNode( |
// ancestor render surface. |
// We first check if the point is clipped by viewport. |
- const PropertyTrees* property_trees = |
- layer->layer_tree_impl()->property_trees(); |
+ PropertyTrees* property_trees = layer->layer_tree_impl()->property_trees(); |
const ClipTree& clip_tree = property_trees->clip_tree; |
const TransformTree& transform_tree = property_trees->transform_tree; |
const ClipNode* clip_node = clip_tree.Node(1); |
- gfx::Rect combined_clip_in_target_space = |
- gfx::ToEnclosingRect(clip_node->combined_clip_in_target_space); |
- if (!PointHitsRect(screen_space_point, gfx::Transform(), |
- combined_clip_in_target_space, NULL)) |
+ gfx::Rect clip = gfx::ToEnclosingRect(clip_node->clip); |
+ if (!PointHitsRect(screen_space_point, gfx::Transform(), clip, NULL)) |
return true; |
for (const ClipNode* clip_node = clip_tree.Node(layer->clip_tree_index()); |
clip_node->id > ClipTree::kViewportNodeId; |
clip_node = clip_tree.parent(clip_node)) { |
if (clip_node->clip_type == ClipNode::ClipType::APPLIES_LOCAL_CLIP) { |
- const TransformNode* transform_node = |
- transform_tree.Node(clip_node->target_transform_id); |
- gfx::Rect combined_clip_in_target_space = |
- gfx::ToEnclosingRect(clip_node->combined_clip_in_target_space); |
- |
- const LayerImpl* target_layer = |
- layer->layer_tree_impl()->LayerById(transform_node->owning_layer_id); |
- DCHECK(transform_node->id == TransformTree::kRootNodeId || |
- target_layer->render_surface() || |
- layer->layer_tree_impl()->is_in_resourceless_software_draw_mode()); |
- gfx::Transform surface_screen_space_transform = |
- transform_node->id == TransformTree::kRootNodeId || |
- (layer->layer_tree_impl() |
- ->is_in_resourceless_software_draw_mode()) |
- ? gfx::Transform() |
- : SurfaceScreenSpaceTransform(target_layer); |
- if (!PointHitsRect(screen_space_point, surface_screen_space_transform, |
- combined_clip_in_target_space, NULL)) { |
+ gfx::Rect clip = gfx::ToEnclosingRect(clip_node->clip); |
+ |
+ gfx::Transform screen_space_transform = |
+ transform_tree.ToScreen(clip_node->transform_id); |
+ if (!PointHitsRect(screen_space_point, screen_space_transform, clip, |
+ NULL)) { |
return true; |
} |
} |