| 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 #include <set> | 8 #include <set> |
| 9 | 9 |
| 10 #include "cc/animation/layer_animation_controller.h" | 10 #include "cc/animation/layer_animation_controller.h" |
| (...skipping 1165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1176 true, | 1176 true, |
| 1177 false); | 1177 false); |
| 1178 | 1178 |
| 1179 gfx::Transform translate; | 1179 gfx::Transform translate; |
| 1180 translate.Translate(50, 50); | 1180 translate.Translate(50, 50); |
| 1181 { | 1181 { |
| 1182 RenderSurfaceLayerList render_surface_layer_list; | 1182 RenderSurfaceLayerList render_surface_layer_list; |
| 1183 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( | 1183 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( |
| 1184 root.get(), root->bounds(), translate, &render_surface_layer_list); | 1184 root.get(), root->bounds(), translate, &render_surface_layer_list); |
| 1185 inputs.can_adjust_raster_scales = true; | 1185 inputs.can_adjust_raster_scales = true; |
| 1186 inputs.property_trees->needs_rebuild = true; |
| 1186 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 1187 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 1187 EXPECT_EQ(translate, root->draw_properties().target_space_transform); | 1188 EXPECT_EQ(translate, root->draw_properties().target_space_transform); |
| 1188 EXPECT_EQ(translate, child->draw_properties().target_space_transform); | 1189 EXPECT_EQ(translate, child->draw_properties().target_space_transform); |
| 1189 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); | 1190 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); |
| 1190 EXPECT_EQ(1.f, root->draw_properties().device_scale_factor); | 1191 EXPECT_EQ(1.f, root->draw_properties().device_scale_factor); |
| 1191 EXPECT_EQ(1.f, child->draw_properties().device_scale_factor); | 1192 EXPECT_EQ(1.f, child->draw_properties().device_scale_factor); |
| 1192 } | 1193 } |
| 1193 | 1194 |
| 1194 gfx::Transform scale; | 1195 gfx::Transform scale; |
| 1195 scale.Scale(2, 2); | 1196 scale.Scale(2, 2); |
| 1196 { | 1197 { |
| 1197 RenderSurfaceLayerList render_surface_layer_list; | 1198 RenderSurfaceLayerList render_surface_layer_list; |
| 1198 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( | 1199 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( |
| 1199 root.get(), root->bounds(), scale, &render_surface_layer_list); | 1200 root.get(), root->bounds(), scale, &render_surface_layer_list); |
| 1200 inputs.can_adjust_raster_scales = true; | 1201 inputs.can_adjust_raster_scales = true; |
| 1202 inputs.property_trees->needs_rebuild = true; |
| 1201 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 1203 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 1202 EXPECT_EQ(scale, root->draw_properties().target_space_transform); | 1204 EXPECT_EQ(scale, root->draw_properties().target_space_transform); |
| 1203 EXPECT_EQ(scale, child->draw_properties().target_space_transform); | 1205 EXPECT_EQ(scale, child->draw_properties().target_space_transform); |
| 1204 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); | 1206 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); |
| 1205 EXPECT_EQ(2.f, root->draw_properties().device_scale_factor); | 1207 EXPECT_EQ(2.f, root->draw_properties().device_scale_factor); |
| 1206 EXPECT_EQ(2.f, child->draw_properties().device_scale_factor); | 1208 EXPECT_EQ(2.f, child->draw_properties().device_scale_factor); |
| 1207 } | 1209 } |
| 1208 | 1210 |
| 1209 gfx::Transform rotate; | 1211 gfx::Transform rotate; |
| 1210 rotate.Rotate(2); | 1212 rotate.Rotate(2); |
| 1211 { | 1213 { |
| 1212 RenderSurfaceLayerList render_surface_layer_list; | 1214 RenderSurfaceLayerList render_surface_layer_list; |
| 1213 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( | 1215 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( |
| 1214 root.get(), root->bounds(), rotate, &render_surface_layer_list); | 1216 root.get(), root->bounds(), rotate, &render_surface_layer_list); |
| 1215 inputs.can_adjust_raster_scales = true; | 1217 inputs.can_adjust_raster_scales = true; |
| 1218 inputs.property_trees->needs_rebuild = true; |
| 1216 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 1219 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 1217 EXPECT_EQ(rotate, root->draw_properties().target_space_transform); | 1220 EXPECT_EQ(rotate, root->draw_properties().target_space_transform); |
| 1218 EXPECT_EQ(rotate, child->draw_properties().target_space_transform); | 1221 EXPECT_EQ(rotate, child->draw_properties().target_space_transform); |
| 1219 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); | 1222 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); |
| 1220 EXPECT_EQ(1.f, root->draw_properties().device_scale_factor); | 1223 EXPECT_EQ(1.f, root->draw_properties().device_scale_factor); |
| 1221 EXPECT_EQ(1.f, child->draw_properties().device_scale_factor); | 1224 EXPECT_EQ(1.f, child->draw_properties().device_scale_factor); |
| 1222 } | 1225 } |
| 1223 | 1226 |
| 1224 gfx::Transform composite; | 1227 gfx::Transform composite; |
| 1225 composite.ConcatTransform(translate); | 1228 composite.ConcatTransform(translate); |
| 1226 composite.ConcatTransform(scale); | 1229 composite.ConcatTransform(scale); |
| 1227 composite.ConcatTransform(rotate); | 1230 composite.ConcatTransform(rotate); |
| 1228 { | 1231 { |
| 1229 RenderSurfaceLayerList render_surface_layer_list; | 1232 RenderSurfaceLayerList render_surface_layer_list; |
| 1230 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( | 1233 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( |
| 1231 root.get(), root->bounds(), composite, &render_surface_layer_list); | 1234 root.get(), root->bounds(), composite, &render_surface_layer_list); |
| 1232 inputs.can_adjust_raster_scales = true; | 1235 inputs.can_adjust_raster_scales = true; |
| 1236 inputs.property_trees->needs_rebuild = true; |
| 1233 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 1237 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 1234 EXPECT_EQ(composite, root->draw_properties().target_space_transform); | 1238 EXPECT_EQ(composite, root->draw_properties().target_space_transform); |
| 1235 EXPECT_EQ(composite, child->draw_properties().target_space_transform); | 1239 EXPECT_EQ(composite, child->draw_properties().target_space_transform); |
| 1236 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); | 1240 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); |
| 1237 } | 1241 } |
| 1238 | 1242 |
| 1239 // Verify it composes correctly with device scale. | 1243 // Verify it composes correctly with device scale. |
| 1240 float device_scale_factor = 1.5f; | 1244 float device_scale_factor = 1.5f; |
| 1241 | 1245 |
| 1242 { | 1246 { |
| 1243 RenderSurfaceLayerList render_surface_layer_list; | 1247 RenderSurfaceLayerList render_surface_layer_list; |
| 1244 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( | 1248 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( |
| 1245 root.get(), root->bounds(), translate, &render_surface_layer_list); | 1249 root.get(), root->bounds(), translate, &render_surface_layer_list); |
| 1246 inputs.device_scale_factor = device_scale_factor; | 1250 inputs.device_scale_factor = device_scale_factor; |
| 1247 inputs.can_adjust_raster_scales = true; | 1251 inputs.can_adjust_raster_scales = true; |
| 1252 inputs.property_trees->needs_rebuild = true; |
| 1248 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 1253 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 1249 gfx::Transform device_scaled_translate = translate; | 1254 gfx::Transform device_scaled_translate = translate; |
| 1250 device_scaled_translate.Scale(device_scale_factor, device_scale_factor); | 1255 device_scaled_translate.Scale(device_scale_factor, device_scale_factor); |
| 1251 EXPECT_EQ(device_scaled_translate, | 1256 EXPECT_EQ(device_scaled_translate, |
| 1252 root->draw_properties().target_space_transform); | 1257 root->draw_properties().target_space_transform); |
| 1253 EXPECT_EQ(device_scaled_translate, | 1258 EXPECT_EQ(device_scaled_translate, |
| 1254 child->draw_properties().target_space_transform); | 1259 child->draw_properties().target_space_transform); |
| 1255 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); | 1260 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); |
| 1256 EXPECT_EQ(device_scale_factor, root->draw_properties().device_scale_factor); | 1261 EXPECT_EQ(device_scale_factor, root->draw_properties().device_scale_factor); |
| 1257 EXPECT_EQ(device_scale_factor, | 1262 EXPECT_EQ(device_scale_factor, |
| 1258 child->draw_properties().device_scale_factor); | 1263 child->draw_properties().device_scale_factor); |
| 1259 } | 1264 } |
| 1260 | 1265 |
| 1261 // Verify it composes correctly with page scale. | 1266 // Verify it composes correctly with page scale. |
| 1262 float page_scale_factor = 2.f; | 1267 float page_scale_factor = 2.f; |
| 1263 | 1268 |
| 1264 { | 1269 { |
| 1265 RenderSurfaceLayerList render_surface_layer_list; | 1270 RenderSurfaceLayerList render_surface_layer_list; |
| 1266 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( | 1271 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( |
| 1267 root.get(), root->bounds(), translate, &render_surface_layer_list); | 1272 root.get(), root->bounds(), translate, &render_surface_layer_list); |
| 1268 inputs.page_scale_factor = page_scale_factor; | 1273 inputs.page_scale_factor = page_scale_factor; |
| 1269 inputs.page_scale_application_layer = root.get(); | 1274 inputs.page_scale_application_layer = root.get(); |
| 1270 inputs.can_adjust_raster_scales = true; | 1275 inputs.can_adjust_raster_scales = true; |
| 1276 inputs.property_trees->needs_rebuild = true; |
| 1271 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 1277 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 1272 gfx::Transform page_scaled_translate = translate; | 1278 gfx::Transform page_scaled_translate = translate; |
| 1273 page_scaled_translate.Scale(page_scale_factor, page_scale_factor); | 1279 page_scaled_translate.Scale(page_scale_factor, page_scale_factor); |
| 1274 EXPECT_EQ(translate, root->draw_properties().target_space_transform); | 1280 EXPECT_EQ(translate, root->draw_properties().target_space_transform); |
| 1275 EXPECT_EQ(page_scaled_translate, | 1281 EXPECT_EQ(page_scaled_translate, |
| 1276 child->draw_properties().target_space_transform); | 1282 child->draw_properties().target_space_transform); |
| 1277 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); | 1283 EXPECT_EQ(identity_matrix, root->render_surface()->draw_transform()); |
| 1278 EXPECT_EQ(1.f, root->draw_properties().device_scale_factor); | 1284 EXPECT_EQ(1.f, root->draw_properties().device_scale_factor); |
| 1279 EXPECT_EQ(1.f, child->draw_properties().device_scale_factor); | 1285 EXPECT_EQ(1.f, child->draw_properties().device_scale_factor); |
| 1280 } | 1286 } |
| (...skipping 3415 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4696 page_scale_factor = 1.25f; | 4702 page_scale_factor = 1.25f; |
| 4697 | 4703 |
| 4698 { | 4704 { |
| 4699 RenderSurfaceLayerList render_surface_layer_list; | 4705 RenderSurfaceLayerList render_surface_layer_list; |
| 4700 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( | 4706 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( |
| 4701 root.get(), root->bounds(), &render_surface_layer_list); | 4707 root.get(), root->bounds(), &render_surface_layer_list); |
| 4702 inputs.device_scale_factor = device_scale_factor; | 4708 inputs.device_scale_factor = device_scale_factor; |
| 4703 inputs.page_scale_factor = page_scale_factor; | 4709 inputs.page_scale_factor = page_scale_factor; |
| 4704 inputs.page_scale_application_layer = root.get(); | 4710 inputs.page_scale_application_layer = root.get(); |
| 4705 inputs.can_adjust_raster_scales = true; | 4711 inputs.can_adjust_raster_scales = true; |
| 4712 inputs.property_trees->needs_rebuild = true; |
| 4706 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 4713 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 4707 | 4714 |
| 4708 EXPECT_CONTENTS_SCALE_EQ( | 4715 EXPECT_CONTENTS_SCALE_EQ( |
| 4709 device_scale_factor * page_scale_factor * initial_parent_scale, parent); | 4716 device_scale_factor * page_scale_factor * initial_parent_scale, parent); |
| 4710 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor * | 4717 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor * |
| 4711 initial_parent_scale * initial_child_scale, | 4718 initial_parent_scale * initial_child_scale, |
| 4712 child_scale); | 4719 child_scale); |
| 4713 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor * | 4720 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor * |
| 4714 initial_parent_scale * initial_child_scale, | 4721 initial_parent_scale * initial_child_scale, |
| 4715 child_empty); | 4722 child_empty); |
| 4716 EXPECT_CONTENTS_SCALE_EQ(1, child_no_scale); | 4723 EXPECT_CONTENTS_SCALE_EQ(1, child_no_scale); |
| 4717 } | 4724 } |
| 4718 | 4725 |
| 4719 // If the transform changes, we expect the raster scale to be reset to 1.0. | 4726 // If the transform changes, we expect the raster scale to be reset to 1.0. |
| 4720 SkMScalar second_child_scale = 1.75; | 4727 SkMScalar second_child_scale = 1.75; |
| 4721 child_scale_matrix.Scale(second_child_scale / initial_child_scale, | 4728 child_scale_matrix.Scale(second_child_scale / initial_child_scale, |
| 4722 second_child_scale / initial_child_scale); | 4729 second_child_scale / initial_child_scale); |
| 4723 child_scale->SetTransform(child_scale_matrix); | 4730 child_scale->SetTransform(child_scale_matrix); |
| 4724 child_empty->SetTransform(child_scale_matrix); | 4731 child_empty->SetTransform(child_scale_matrix); |
| 4725 | 4732 |
| 4726 { | 4733 { |
| 4727 RenderSurfaceLayerList render_surface_layer_list; | 4734 RenderSurfaceLayerList render_surface_layer_list; |
| 4728 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( | 4735 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( |
| 4729 root.get(), root->bounds(), &render_surface_layer_list); | 4736 root.get(), root->bounds(), &render_surface_layer_list); |
| 4730 inputs.device_scale_factor = device_scale_factor; | 4737 inputs.device_scale_factor = device_scale_factor; |
| 4731 inputs.page_scale_factor = page_scale_factor; | 4738 inputs.page_scale_factor = page_scale_factor; |
| 4732 inputs.page_scale_application_layer = root.get(); | 4739 inputs.page_scale_application_layer = root.get(); |
| 4733 inputs.can_adjust_raster_scales = true; | 4740 inputs.can_adjust_raster_scales = true; |
| 4741 inputs.property_trees->needs_rebuild = true; |
| 4734 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 4742 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 4735 | 4743 |
| 4736 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor * | 4744 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor * |
| 4737 initial_parent_scale, | 4745 initial_parent_scale, |
| 4738 parent); | 4746 parent); |
| 4739 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor, | 4747 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor, |
| 4740 child_scale); | 4748 child_scale); |
| 4741 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor, | 4749 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor, |
| 4742 child_empty); | 4750 child_empty); |
| 4743 EXPECT_CONTENTS_SCALE_EQ(1, child_no_scale); | 4751 EXPECT_CONTENTS_SCALE_EQ(1, child_no_scale); |
| 4744 } | 4752 } |
| 4745 | 4753 |
| 4746 // If the device_scale_factor or page_scale_factor changes, then it should be | 4754 // If the device_scale_factor or page_scale_factor changes, then it should be |
| 4747 // updated, but still using 1.0 as the raster scale. | 4755 // updated, but still using 1.0 as the raster scale. |
| 4748 device_scale_factor = 2.75f; | 4756 device_scale_factor = 2.75f; |
| 4749 page_scale_factor = 1.75f; | 4757 page_scale_factor = 1.75f; |
| 4750 | 4758 |
| 4751 { | 4759 { |
| 4752 RenderSurfaceLayerList render_surface_layer_list; | 4760 RenderSurfaceLayerList render_surface_layer_list; |
| 4753 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( | 4761 LayerTreeHostCommon::CalcDrawPropsMainInputsForTesting inputs( |
| 4754 root.get(), root->bounds(), &render_surface_layer_list); | 4762 root.get(), root->bounds(), &render_surface_layer_list); |
| 4755 inputs.device_scale_factor = device_scale_factor; | 4763 inputs.device_scale_factor = device_scale_factor; |
| 4756 inputs.page_scale_factor = page_scale_factor; | 4764 inputs.page_scale_factor = page_scale_factor; |
| 4757 inputs.page_scale_application_layer = root.get(); | 4765 inputs.page_scale_application_layer = root.get(); |
| 4758 inputs.can_adjust_raster_scales = true; | 4766 inputs.can_adjust_raster_scales = true; |
| 4767 inputs.property_trees->needs_rebuild = true; |
| 4759 LayerTreeHostCommon::CalculateDrawProperties(&inputs); | 4768 LayerTreeHostCommon::CalculateDrawProperties(&inputs); |
| 4760 | 4769 |
| 4761 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor * | 4770 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor * |
| 4762 initial_parent_scale, | 4771 initial_parent_scale, |
| 4763 parent); | 4772 parent); |
| 4764 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor, | 4773 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor, |
| 4765 child_scale); | 4774 child_scale); |
| 4766 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor, | 4775 EXPECT_CONTENTS_SCALE_EQ(device_scale_factor * page_scale_factor, |
| 4767 child_empty); | 4776 child_empty); |
| 4768 EXPECT_CONTENTS_SCALE_EQ(1, child_no_scale); | 4777 EXPECT_CONTENTS_SCALE_EQ(1, child_no_scale); |
| (...skipping 4385 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 9154 | 9163 |
| 9155 scoped_ptr<FakeLayerTreeHost> host(CreateFakeLayerTreeHost()); | 9164 scoped_ptr<FakeLayerTreeHost> host(CreateFakeLayerTreeHost()); |
| 9156 host->SetRootLayer(root); | 9165 host->SetRootLayer(root); |
| 9157 | 9166 |
| 9158 ExecuteCalculateDrawProperties(root.get()); | 9167 ExecuteCalculateDrawProperties(root.get()); |
| 9159 | 9168 |
| 9160 gfx::Rect expected(0, 0, 50, 50); | 9169 gfx::Rect expected(0, 0, 50, 50); |
| 9161 EXPECT_EQ(expected, fixed->visible_rect_from_property_trees()); | 9170 EXPECT_EQ(expected, fixed->visible_rect_from_property_trees()); |
| 9162 } | 9171 } |
| 9163 | 9172 |
| 9173 TEST_F(LayerTreeHostCommonTest, ChangingAxisAlignmentTriggersRebuild) { |
| 9174 gfx::Transform identity; |
| 9175 gfx::Transform translate; |
| 9176 gfx::Transform rotate; |
| 9177 |
| 9178 translate.Translate(10, 10); |
| 9179 rotate.Rotate(45); |
| 9180 |
| 9181 scoped_refptr<Layer> root = Layer::Create(); |
| 9182 SetLayerPropertiesForTesting(root.get(), identity, gfx::Point3F(), |
| 9183 gfx::PointF(), gfx::Size(800, 800), true, false); |
| 9184 root->SetIsContainerForFixedPositionLayers(true); |
| 9185 |
| 9186 scoped_ptr<FakeLayerTreeHost> host(CreateFakeLayerTreeHost()); |
| 9187 host->SetRootLayer(root); |
| 9188 |
| 9189 ExecuteCalculateDrawProperties(root.get()); |
| 9190 |
| 9191 root->SetTransform(translate); |
| 9192 EXPECT_FALSE(host->property_trees()->needs_rebuild); |
| 9193 |
| 9194 root->SetTransform(rotate); |
| 9195 EXPECT_TRUE(host->property_trees()->needs_rebuild); |
| 9196 } |
| 9197 |
| 9164 } // namespace | 9198 } // namespace |
| 9165 } // namespace cc | 9199 } // namespace cc |
| OLD | NEW |