Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(37)

Side by Side Diff: cc/layers/layer_impl.cc

Issue 2026033002: cc: Remove can_use_lcd_text from draw properties (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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/layers/layer_impl.h" 5 #include "cc/layers/layer_impl.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <algorithm> 10 #include <algorithm>
(...skipping 1304 matching lines...) Expand 10 before | Expand all | Expand 10 after
1315 gfx::Transform LayerImpl::ScreenSpaceTransform() const { 1315 gfx::Transform LayerImpl::ScreenSpaceTransform() const {
1316 // Only drawn layers have up-to-date draw properties. 1316 // Only drawn layers have up-to-date draw properties.
1317 if (!is_drawn_render_surface_layer_list_member()) { 1317 if (!is_drawn_render_surface_layer_list_member()) {
1318 return draw_property_utils::ScreenSpaceTransform( 1318 return draw_property_utils::ScreenSpaceTransform(
1319 this, layer_tree_impl()->property_trees()->transform_tree); 1319 this, layer_tree_impl()->property_trees()->transform_tree);
1320 } 1320 }
1321 1321
1322 return draw_properties().screen_space_transform; 1322 return draw_properties().screen_space_transform;
1323 } 1323 }
1324 1324
1325 bool LayerImpl::can_use_lcd_text() const {
1326 if (layer_tree_impl()->settings().layers_always_allowed_lcd_text)
1327 return true;
1328 if (!layer_tree_impl()->settings().can_use_lcd_text)
1329 return false;
1330 if (!contents_opaque())
1331 return false;
1332
1333 if (layer_tree_impl()
1334 ->property_trees()
1335 ->effect_tree.Node(effect_tree_index())
1336 ->data.screen_space_opacity != 1.f)
1337 return false;
1338 if (!layer_tree_impl()
1339 ->property_trees()
1340 ->transform_tree.Node(transform_tree_index())
1341 ->data.node_and_ancestors_have_only_integer_translation)
1342 return false;
1343 if (static_cast<int>(offset_to_transform_parent().x()) !=
1344 offset_to_transform_parent().x())
1345 return false;
1346 if (static_cast<int>(offset_to_transform_parent().y()) !=
1347 offset_to_transform_parent().y())
1348 return false;
1349 return true;
1350 }
1351
1325 Region LayerImpl::GetInvalidationRegionForDebugging() { 1352 Region LayerImpl::GetInvalidationRegionForDebugging() {
1326 return Region(update_rect_); 1353 return Region(update_rect_);
1327 } 1354 }
1328 1355
1329 gfx::Rect LayerImpl::GetEnclosingRectInTargetSpace() const { 1356 gfx::Rect LayerImpl::GetEnclosingRectInTargetSpace() const {
1330 return MathUtil::MapEnclosingClippedRect(DrawTransform(), 1357 return MathUtil::MapEnclosingClippedRect(DrawTransform(),
1331 gfx::Rect(bounds())); 1358 gfx::Rect(bounds()));
1332 } 1359 }
1333 1360
1334 gfx::Rect LayerImpl::GetScaledEnclosingRectInTargetSpace(float scale) const { 1361 gfx::Rect LayerImpl::GetScaledEnclosingRectInTargetSpace(float scale) const {
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
1395 .layer_transforms_should_scale_layer_contents) { 1422 .layer_transforms_should_scale_layer_contents) {
1396 return default_scale; 1423 return default_scale;
1397 } 1424 }
1398 1425
1399 gfx::Vector2dF transform_scales = MathUtil::ComputeTransform2dScaleComponents( 1426 gfx::Vector2dF transform_scales = MathUtil::ComputeTransform2dScaleComponents(
1400 ScreenSpaceTransform(), default_scale); 1427 ScreenSpaceTransform(), default_scale);
1401 return std::max(transform_scales.x(), transform_scales.y()); 1428 return std::max(transform_scales.x(), transform_scales.y());
1402 } 1429 }
1403 1430
1404 } // namespace cc 1431 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698