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

Unified Diff: cc/trees/layer_tree_host_impl.cc

Issue 14417014: cc: Add tile-free software compositing mode. (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 side-by-side diff with in-line comments
Download patch
Index: cc/trees/layer_tree_host_impl.cc
diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
index a96608952e5dde5824227e42ee3184b2f741a01e..e815571a39c2910d7c2ee9042029610de54db305 100644
--- a/cc/trees/layer_tree_host_impl.cc
+++ b/cc/trees/layer_tree_host_impl.cc
@@ -142,7 +142,9 @@ class LayerTreeHostImplTimeSourceAdapter : public TimeSourceClient {
};
LayerTreeHostImpl::FrameData::FrameData()
- : contains_incomplete_tile(false), has_no_damage(false) {}
+ : contains_incomplete_tile(false),
+ has_no_damage(false),
+ cannot_append_tile_draw_quads(false) {}
LayerTreeHostImpl::FrameData::~FrameData() {}
@@ -606,6 +608,8 @@ bool LayerTreeHostImpl::CalculateRenderPasses(FrameData* frame) {
occlusion_tracker.EnterLayer(it, prevent_occlusion);
AppendQuadsData append_quads_data(target_render_pass->id);
+ append_quads_data.cannot_append_tile_draw_quads =
+ frame->cannot_append_tile_draw_quads;
if (it.represents_target_render_surface()) {
if (it->HasRequestCopyCallback()) {
@@ -1390,9 +1394,12 @@ bool LayerTreeHostImpl::InitializeRenderer(
resource_provider.get(),
settings_.highp_threshold_min);
} else if (output_surface->software_device()) {
+ ResourceProvider* software_resource_provider = NULL;
kaanb1 2013/04/29 16:56:26 nit: consider s/software_resource_provider/resourc
aelias_OOO_until_Jul13 2013/04/30 07:28:20 Deleted this code anyway.
+ if (!settings().tile_free_software_compositing)
+ software_resource_provider = resource_provider.get();
renderer_ = SoftwareRenderer::Create(this,
output_surface.get(),
- resource_provider.get());
+ software_resource_provider);
}
if (!renderer_)
return false;

Powered by Google App Engine
This is Rietveld 408576698