summaryrefslogtreecommitdiffstats
path: root/cc/picture_layer.cc
diff options
context:
space:
mode:
authorenne@chromium.org <enne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-21 19:15:27 +0000
committerenne@chromium.org <enne@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-21 19:15:27 +0000
commitcd696271b3c491f2de0109e4dc6d991884f89540 (patch)
tree9425a004275595dd0d354b730cf47d58e24d6b93 /cc/picture_layer.cc
parent6c99c7bc949fc15b559793467fc1e1a6df857372 (diff)
downloadchromium_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.cc7
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*,