Chromium Code Reviews| 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 effea8744a33b0116316f64481f8d79c751d5497..2e0ee4ddd42b730b19495fb47ddde8006572bde4 100644 |
| --- a/chrome/browser/android/vr_shell/vr_shell_gl.cc |
| +++ b/chrome/browser/android/vr_shell/vr_shell_gl.cc |
| @@ -487,7 +487,8 @@ void VrShellGl::UpdateController(const gvr::Vec3f& forward_vector) { |
| InputTarget input_target = InputTarget::NONE; |
| for (const auto& plane : scene_->GetUiElements()) { |
| - if (!plane->visible || !plane->hit_testable) { |
| + if (!plane->visible || plane->computed_opacity == 0.0f || |
|
cjgrant
2017/01/11 16:45:47
Checking opacity here relieves the HTML UI of havi
mthiesse
2017/01/11 18:33:04
Maybe add a function IsVisible() to ContentRectang
cjgrant
2017/01/11 20:58:42
Done.
|
| + !plane->hit_testable) { |
| continue; |
| } |
| float distance_to_plane = plane->GetRayDistance(kOrigin, eye_to_target); |
| @@ -701,7 +702,7 @@ void VrShellGl::DrawVrShell(const gvr::Mat4f& head_pose, |
| std::vector<const ContentRectangle*> head_locked_elements; |
| std::vector<const ContentRectangle*> world_elements; |
| for (const auto& rect : scene_->GetUiElements()) { |
| - if (!rect->visible) { |
| + if (!rect->visible || rect->computed_opacity == 0.0f) { |
| continue; |
| } |
| if (rect->lock_to_fov) { |
| @@ -813,7 +814,7 @@ void VrShellGl::DrawElements( |
| } |
| gvr::Mat4f transform = MatrixMul(render_matrix, rect->transform.to_world); |
| vr_shell_renderer_->GetTexturedQuadRenderer()->Draw( |
| - texture_handle, transform, copy_rect); |
| + texture_handle, transform, copy_rect, rect->computed_opacity); |
| } |
| } |