diff options
Diffstat (limited to 'chromium/cc/resources/tile.cc')
-rw-r--r-- | chromium/cc/resources/tile.cc | 48 |
1 files changed, 33 insertions, 15 deletions
diff --git a/chromium/cc/resources/tile.cc b/chromium/cc/resources/tile.cc index 209780679cb..d59dc029ccc 100644 --- a/chromium/cc/resources/tile.cc +++ b/chromium/cc/resources/tile.cc @@ -4,6 +4,8 @@ #include "cc/resources/tile.h" +#include <algorithm> + #include "cc/base/math_util.h" #include "cc/debug/traced_value.h" #include "cc/resources/tile_manager.h" @@ -15,23 +17,23 @@ Tile::Id Tile::s_next_id_ = 0; Tile::Tile(TileManager* tile_manager, PicturePileImpl* picture_pile, - gfx::Size tile_size, - gfx::Rect content_rect, - gfx::Rect opaque_rect, + const gfx::Size& tile_size, + const gfx::Rect& content_rect, + const gfx::Rect& opaque_rect, float contents_scale, int layer_id, int source_frame_number, int flags) - : RefCountedManaged<Tile>(tile_manager), - tile_manager_(tile_manager), - tile_size_(tile_size), - content_rect_(content_rect), - contents_scale_(contents_scale), - opaque_rect_(opaque_rect), - layer_id_(layer_id), - source_frame_number_(source_frame_number), - flags_(flags), - id_(s_next_id_++) { + : RefCountedManaged<Tile>(tile_manager), + tile_manager_(tile_manager), + tile_size_(tile_size), + content_rect_(content_rect), + contents_scale_(contents_scale), + opaque_rect_(opaque_rect), + layer_id_(layer_id), + source_frame_number_(source_frame_number), + flags_(flags), + id_(s_next_id_++) { set_picture_pile(picture_pile); } @@ -69,8 +71,7 @@ scoped_ptr<base::Value> Tile::AsValue() const { res->Set("active_priority", priority_[ACTIVE_TREE].AsValue().release()); res->Set("pending_priority", priority_[PENDING_TREE].AsValue().release()); res->Set("managed_state", managed_state_.AsValue().release()); - res->SetBoolean("can_use_lcd_text", can_use_lcd_text()); - res->SetBoolean("use_gpu_rasterization", use_gpu_rasterization()); + res->SetBoolean("use_picture_analysis", use_picture_analysis()); return res.PassAs<base::Value>(); } @@ -81,4 +82,21 @@ size_t Tile::GPUMemoryUsageInBytes() const { return total_size; } +RasterMode Tile::DetermineRasterModeForTree(WhichTree tree) const { + return DetermineRasterModeForResolution(priority(tree).resolution); +} + +RasterMode Tile::DetermineOverallRasterMode() const { + return DetermineRasterModeForResolution(managed_state_.resolution); +} + +RasterMode Tile::DetermineRasterModeForResolution( + TileResolution resolution) const { + RasterMode current_mode = managed_state_.raster_mode; + RasterMode raster_mode = resolution == LOW_RESOLUTION + ? LOW_QUALITY_RASTER_MODE + : HIGH_QUALITY_RASTER_MODE; + return std::min(raster_mode, current_mode); +} + } // namespace cc |