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

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

Issue 13726013: Smart layer invalidation for LCD text. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 8 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 | Annotate | Revision Log
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 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
74 74
75 gfx::Size PictureLayerTilingSet::LayerBounds() const { 75 gfx::Size PictureLayerTilingSet::LayerBounds() const {
76 return layer_bounds_; 76 return layer_bounds_;
77 } 77 }
78 78
79 void PictureLayerTilingSet::Invalidate(const Region& layer_invalidation) { 79 void PictureLayerTilingSet::Invalidate(const Region& layer_invalidation) {
80 for (size_t i = 0; i < tilings_.size(); ++i) 80 for (size_t i = 0; i < tilings_.size(); ++i)
81 tilings_[i]->Invalidate(layer_invalidation); 81 tilings_[i]->Invalidate(layer_invalidation);
82 } 82 }
83 83
84 void PictureLayerTilingSet::InvalidateTilesWithText() {
85 for (size_t i = 0; i < tilings_.size(); ++i)
86 tilings_[i]->InvalidateTilesWithText();
87 }
88
84 PictureLayerTiling* PictureLayerTilingSet::AddTiling(float contents_scale) { 89 PictureLayerTiling* PictureLayerTilingSet::AddTiling(float contents_scale) {
85 tilings_.push_back(PictureLayerTiling::Create(contents_scale)); 90 tilings_.push_back(PictureLayerTiling::Create(contents_scale));
86 PictureLayerTiling* appended = tilings_.back(); 91 PictureLayerTiling* appended = tilings_.back();
87 appended->SetClient(client_); 92 appended->SetClient(client_);
88 appended->SetLayerBounds(layer_bounds_); 93 appended->SetLayerBounds(layer_bounds_);
89 94
90 tilings_.sort(LargestToSmallestScaleFunctor()); 95 tilings_.sort(LargestToSmallestScaleFunctor());
91 return appended; 96 return appended;
92 } 97 }
93 98
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after
313 } 318 }
314 319
315 scoped_ptr<base::Value> PictureLayerTilingSet::AsValue() const { 320 scoped_ptr<base::Value> PictureLayerTilingSet::AsValue() const {
316 scoped_ptr<base::ListValue> state(new base::ListValue()); 321 scoped_ptr<base::ListValue> state(new base::ListValue());
317 for (size_t i = 0; i < tilings_.size(); ++i) 322 for (size_t i = 0; i < tilings_.size(); ++i)
318 state->Append(tilings_[i]->AsValue().release()); 323 state->Append(tilings_[i]->AsValue().release());
319 return state.PassAs<base::Value>(); 324 return state.PassAs<base::Value>();
320 } 325 }
321 326
322 } // namespace cc 327 } // namespace cc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698