Index: chrome/browser/android/vr_shell/vr_shell_gl.cc |
diff --git a/chrome/browser/android/vr_shell/vr_shell_gl.cc b/chrome/browser/android/vr_shell/vr_shell_gl.cc |
index 05a6c98fdd8852cc1aff038d50e06eef49145280..10b26e402e5b8cdbd8cfeb2311bb54ea086786fc 100644 |
--- a/chrome/browser/android/vr_shell/vr_shell_gl.cc |
+++ b/chrome/browser/android/vr_shell/vr_shell_gl.cc |
@@ -993,36 +993,35 @@ void VrShellGl::DrawElements(const vr::Mat4f& view_proj_matrix, |
vr::Mat4f transform; |
vr::MatrixMul(view_proj_matrix, rect->TransformMatrix(), &transform); |
+ if (rect->Render(vr_shell_renderer_.get())) { |
+ continue; |
+ } |
switch (rect->fill) { |
- case Fill::SKIA: { |
- break; |
- } |
case Fill::OPAQUE_GRADIENT: { |
- vr_shell_renderer_->GetTexturedQuadRenderer()->Flush(); |
vr_shell_renderer_->GetGradientQuadRenderer()->Draw( |
transform, rect->edge_color, rect->center_color, |
rect->computed_opacity); |
+ vr_shell_renderer_->GetTexturedQuadRenderer()->Flush(); |
cjgrant
2017/04/19 16:24:52
This may not be great, but I think this Flush opti
|
break; |
} |
case Fill::GRID_GRADIENT: { |
- vr_shell_renderer_->GetTexturedQuadRenderer()->Flush(); |
vr_shell_renderer_->GetGradientGridRenderer()->Draw( |
transform, rect->edge_color, rect->center_color, |
rect->gridline_count, rect->computed_opacity); |
+ vr_shell_renderer_->GetTexturedQuadRenderer()->Flush(); |
break; |
} |
case Fill::CONTENT: { |
gfx::RectF copy_rect(0, 0, 1, 1); |
vr_shell_renderer_->GetTexturedQuadRenderer()->AddQuad( |
content_texture_id_, transform, copy_rect, rect->computed_opacity); |
+ vr_shell_renderer_->GetTexturedQuadRenderer()->Flush(); |
break; |
} |
default: |
break; |
} |
} |
- |
- vr_shell_renderer_->GetTexturedQuadRenderer()->Flush(); |
} |
std::vector<const UiElement*> VrShellGl::GetElementsInDrawOrder( |