diff options
author | danakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-12 17:11:30 +0000 |
---|---|---|
committer | danakj@chromium.org <danakj@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-12 17:11:30 +0000 |
commit | 8e1da691f5c68010cd24b6fc468458f248d9b6c8 (patch) | |
tree | 40cd5f80d809c7b6eed8f94d10010bb59366188f /cc/layers/ui_resource_layer_impl.cc | |
parent | 832c83b1cd554367fed1c53b5d249c6492d08d89 (diff) | |
download | chromium_src-8e1da691f5c68010cd24b6fc468458f248d9b6c8.zip chromium_src-8e1da691f5c68010cd24b6fc468458f248d9b6c8.tar.gz chromium_src-8e1da691f5c68010cd24b6fc468458f248d9b6c8.tar.bz2 |
cc: Preserve partial culling from child compositor.
When the child compositor performs occlusion culling and determines
what part of the quad is visible, we should preserve this in the
browser compositor, and only shrink the visible (unoccluded) rect on
quads if we're able due to occlusion in the browser. We should not
grow the visible rect ever.
Tests:
QuadCullerTest.PartialCullingNotDestroyed
QuadCullerTest.PartialCullingWithOcclusionNotDestroyed
R=alokp@chromium.org, piman
BUG=305757
Review URL: https://codereview.chromium.org/26726003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@228350 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/layers/ui_resource_layer_impl.cc')
-rw-r--r-- | cc/layers/ui_resource_layer_impl.cc | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/cc/layers/ui_resource_layer_impl.cc b/cc/layers/ui_resource_layer_impl.cc index cb4d975..faa3171 100644 --- a/cc/layers/ui_resource_layer_impl.cc +++ b/cc/layers/ui_resource_layer_impl.cc @@ -80,15 +80,13 @@ void UIResourceLayerImpl::AppendQuads(QuadSink* quad_sink, DCHECK(!bounds().IsEmpty()); - // TODO(clholgat): Properly calculate opacity: crbug.com/300027 - gfx::Rect opaque_rect; - if (contents_opaque()) - opaque_rect = gfx::Rect(bounds()); - gfx::Rect quad_rect(bounds()); gfx::Rect uv_top_left(0.f, 0.f); gfx::Rect uv_bottom_right(1.f, 1.f); + // TODO(clholgat): Properly calculate opacity: crbug.com/300027 + gfx::Rect opaque_rect(contents_opaque() ? quad_rect : gfx::Rect()); + const float vertex_opacity[] = {1.0f, 1.0f, 1.0f, 1.0f}; scoped_ptr<TextureDrawQuad> quad; |