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

Unified Diff: cc/trees/layer_tree_host_impl.cc

Issue 16211002: Skip drawing unsupported layers in forced software mode (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address nits Created 7 years, 7 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 84c43c20b1c3462b342036d0fbbc7311e9249e28..7c9ebc51fc8499e4b85836b95f886eef1ca0689f 100644
--- a/cc/trees/layer_tree_host_impl.cc
+++ b/cc/trees/layer_tree_host_impl.cc
@@ -603,13 +603,19 @@ bool LayerTreeHostImpl::CalculateRenderPasses(FrameData* frame) {
RenderPass* target_render_pass =
frame->render_passes_by_id[target_render_pass_id];
+ AppendQuadsData append_quads_data(target_render_pass->id);
+
+ if (output_surface_->ForcedDrawToSoftwareDevice()) {
+ if (it->CanDrawInTilelessSoftwareMode()) {
+ append_quads_data.allow_tile_draw_quads = false;
enne (OOO) 2013/05/30 17:04:37 This line is a little weird. Shouldn't allow_tile
+ } else {
+ continue;
+ }
+ }
+
bool prevent_occlusion = it.target_render_surface_layer()->HasCopyRequest();
occlusion_tracker.EnterLayer(it, prevent_occlusion);
- AppendQuadsData append_quads_data(target_render_pass->id);
- if (output_surface_->ForcedDrawToSoftwareDevice())
- append_quads_data.allow_tile_draw_quads = false;
-
if (it.represents_target_render_surface()) {
if (it->HasCopyRequest()) {
have_copy_request = true;

Powered by Google App Engine
This is Rietveld 408576698