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

Side by Side Diff: cc/resources/picture_layer_tiling_set.cc

Issue 271533011: cc: Move tiling management out of draw properties calculation. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: review comments Created 6 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
« no previous file with comments | « cc/layers/picture_layer_impl_unittest.cc ('k') | cc/test/fake_picture_layer_impl.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/resources/picture_layer_tiling_set.h" 5 #include "cc/resources/picture_layer_tiling_set.h"
6 6
7 #include <limits> 7 #include <limits>
8 8
9 namespace cc { 9 namespace cc {
10 10
(...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after
317 } 317 }
318 318
319 void PictureLayerTilingSet::UpdateTilePriorities( 319 void PictureLayerTilingSet::UpdateTilePriorities(
320 WhichTree tree, 320 WhichTree tree,
321 const gfx::Rect& visible_content_rect, 321 const gfx::Rect& visible_content_rect,
322 float layer_contents_scale, 322 float layer_contents_scale,
323 double current_frame_time_in_seconds) { 323 double current_frame_time_in_seconds) {
324 gfx::Rect visible_layer_rect = gfx::ScaleToEnclosingRect( 324 gfx::Rect visible_layer_rect = gfx::ScaleToEnclosingRect(
325 visible_content_rect, 1.f / layer_contents_scale); 325 visible_content_rect, 1.f / layer_contents_scale);
326 326
327 float max_layer_contents_scale = layer_contents_scale;
enne (OOO) 2014/05/28 18:42:20 You should not need this. The scale used to be ma
sohanjg 2014/05/29 13:07:04 In LayerEvictionTileIterator test, tile->required_
328 for (size_t i = 0; i < this->num_tilings(); ++i) {
329 const PictureLayerTiling* tiling = this->tiling_at(i);
330 max_layer_contents_scale =
331 std::max(max_layer_contents_scale, tiling->contents_scale());
332 }
333
327 for (size_t i = 0; i < tilings_.size(); ++i) { 334 for (size_t i = 0; i < tilings_.size(); ++i) {
328 tilings_[i]->UpdateTilePriorities(tree, 335 tilings_[i]->UpdateTilePriorities(tree,
329 visible_layer_rect, 336 visible_layer_rect,
330 layer_contents_scale, 337 max_layer_contents_scale,
331 current_frame_time_in_seconds); 338 current_frame_time_in_seconds);
332 } 339 }
333 } 340 }
334 341
335 void PictureLayerTilingSet::DidBecomeActive() { 342 void PictureLayerTilingSet::DidBecomeActive() {
336 for (size_t i = 0; i < tilings_.size(); ++i) 343 for (size_t i = 0; i < tilings_.size(); ++i)
337 tilings_[i]->DidBecomeActive(); 344 tilings_[i]->DidBecomeActive();
338 } 345 }
339 346
340 void PictureLayerTilingSet::DidBecomeRecycled() { 347 void PictureLayerTilingSet::DidBecomeRecycled() {
341 for (size_t i = 0; i < tilings_.size(); ++i) 348 for (size_t i = 0; i < tilings_.size(); ++i)
342 tilings_[i]->DidBecomeRecycled(); 349 tilings_[i]->DidBecomeRecycled();
343 } 350 }
344 351
345 scoped_ptr<base::Value> PictureLayerTilingSet::AsValue() const { 352 scoped_ptr<base::Value> PictureLayerTilingSet::AsValue() const {
346 scoped_ptr<base::ListValue> state(new base::ListValue()); 353 scoped_ptr<base::ListValue> state(new base::ListValue());
347 for (size_t i = 0; i < tilings_.size(); ++i) 354 for (size_t i = 0; i < tilings_.size(); ++i)
348 state->Append(tilings_[i]->AsValue().release()); 355 state->Append(tilings_[i]->AsValue().release());
349 return state.PassAs<base::Value>(); 356 return state.PassAs<base::Value>();
350 } 357 }
351 358
352 size_t PictureLayerTilingSet::GPUMemoryUsageInBytes() const { 359 size_t PictureLayerTilingSet::GPUMemoryUsageInBytes() const {
353 size_t amount = 0; 360 size_t amount = 0;
354 for (size_t i = 0; i < tilings_.size(); ++i) 361 for (size_t i = 0; i < tilings_.size(); ++i)
355 amount += tilings_[i]->GPUMemoryUsageInBytes(); 362 amount += tilings_[i]->GPUMemoryUsageInBytes();
356 return amount; 363 return amount;
357 } 364 }
358 365
359 } // namespace cc 366 } // namespace cc
OLDNEW
« no previous file with comments | « cc/layers/picture_layer_impl_unittest.cc ('k') | cc/test/fake_picture_layer_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698