summaryrefslogtreecommitdiffstats
path: root/cc/layers/append_quads_data.h
diff options
context:
space:
mode:
authoraelias@chromium.org <aelias@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-10 00:06:37 +0000
committeraelias@chromium.org <aelias@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-05-10 00:06:37 +0000
commitb09c1946b4ee6798a214f759a5a74aca01a05d27 (patch)
tree430b9984456ecbf746d0b42f931416d89532eef8 /cc/layers/append_quads_data.h
parent2c08ddfa8e8b43b06f778cac1066482ae73b0e6a (diff)
downloadchromium_src-b09c1946b4ee6798a214f759a5a74aca01a05d27.zip
chromium_src-b09c1946b4ee6798a214f759a5a74aca01a05d27.tar.gz
chromium_src-b09c1946b4ee6798a214f759a5a74aca01a05d27.tar.bz2
cc: Add tile-free software compositing mode.
In Android WebView, CC will be run in a hybrid hardware/software mode where the renderer used may vary frame by frame. We're planning to reserve the ResourceProvider exclusively for GL tiles; for the software case, we'll draw directly from the PicturePile instead. This patch implements this draw-direct-from-PicturePile flow by adding PictureDrawQuad support to SoftwareRenderer and introducing a OutputSurface-based setting telling PictureLayerImpl to only append PictureDrawQuads for the current frame. NOTRY=true BUG=178398 Review URL: https://chromiumcodereview.appspot.com/14417014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@199313 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/layers/append_quads_data.h')
-rw-r--r--cc/layers/append_quads_data.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/cc/layers/append_quads_data.h b/cc/layers/append_quads_data.h
index 1ec8184..7e2dc68 100644
--- a/cc/layers/append_quads_data.h
+++ b/cc/layers/append_quads_data.h
@@ -12,17 +12,21 @@ namespace cc {
struct AppendQuadsData {
AppendQuadsData()
- : had_occlusion_from_outside_target_surface(false),
+ : allow_tile_draw_quads(true),
+ had_occlusion_from_outside_target_surface(false),
had_incomplete_tile(false),
num_missing_tiles(0),
render_pass_id(0, 0) {}
explicit AppendQuadsData(RenderPass::Id render_pass_id)
- : had_occlusion_from_outside_target_surface(false),
+ : allow_tile_draw_quads(true),
+ had_occlusion_from_outside_target_surface(false),
had_incomplete_tile(false),
num_missing_tiles(0),
render_pass_id(render_pass_id) {}
+ // Set by LayerTreeHostImpl.
+ bool allow_tile_draw_quads;
// Set by the QuadCuller.
bool had_occlusion_from_outside_target_surface;
// Set by the layer appending quads.