diff options
author | aelias@chromium.org <aelias@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-10 00:06:37 +0000 |
---|---|---|
committer | aelias@chromium.org <aelias@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-05-10 00:06:37 +0000 |
commit | b09c1946b4ee6798a214f759a5a74aca01a05d27 (patch) | |
tree | 430b9984456ecbf746d0b42f931416d89532eef8 /cc/layers/append_quads_data.h | |
parent | 2c08ddfa8e8b43b06f778cac1066482ae73b0e6a (diff) | |
download | chromium_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.h | 8 |
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. |