diff options
author | enne@chromium.org <enne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-11-21 19:15:27 +0000 |
---|---|---|
committer | enne@chromium.org <enne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-11-21 19:15:27 +0000 |
commit | cd696271b3c491f2de0109e4dc6d991884f89540 (patch) | |
tree | 9425a004275595dd0d354b730cf47d58e24d6b93 /cc/picture_layer.cc | |
parent | 6c99c7bc949fc15b559793467fc1e1a6df857372 (diff) | |
download | chromium_src-cd696271b3c491f2de0109e4dc6d991884f89540.zip chromium_src-cd696271b3c491f2de0109e4dc6d991884f89540.tar.gz chromium_src-cd696271b3c491f2de0109e4dc6d991884f89540.tar.bz2 |
cc: Add PictureLayerTilingSet to manage PictureLayerTiling
PictureLayerTilingSet has multiple tilings at different content scales.
This should abstract managing the tilings from PictureLayerImpl. The
layer can then ask the set to fill in a given (integer) rect at a given
content scale and then get back the set of tiles/rects/texture
coordinates to generate that set. Using an integer rect allows textures
at different contents scales to fill a piece of geometry without cracks.
R=nduca@chromium.org
BUG=155209
Review URL: https://chromiumcodereview.appspot.com/11417111
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169083 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/picture_layer.cc')
-rw-r--r-- | cc/picture_layer.cc | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/cc/picture_layer.cc b/cc/picture_layer.cc index 01eb454..fe93950 100644 --- a/cc/picture_layer.cc +++ b/cc/picture_layer.cc @@ -31,13 +31,14 @@ void PictureLayer::pushPropertiesTo(LayerImpl* base_layer) { PictureLayerImpl* layer_impl = static_cast<PictureLayerImpl*>(base_layer); pile_.PushPropertiesTo(layer_impl->pile_); - // TODO(enne): Need to sync tiling from active tree prior to this? - // TODO(nduca): Need to invalidate tiles here from pile's invalidation info. + // TODO(enne): Need to sync tiling from active tree prior to this. + layer_impl->tilings_.Invalidate(invalidation_); + invalidation_.Clear(); } void PictureLayer::setNeedsDisplayRect(const gfx::RectF& layer_rect) { gfx::Rect rect = gfx::ToEnclosedRect(layer_rect); - pile_.Invalidate(rect); + invalidation_.Union(rect); } void PictureLayer::update(ResourceUpdateQueue&, const OcclusionTracker*, |