summaryrefslogtreecommitdiffstats
path: root/cc/layers/nine_patch_layer_impl.cc
diff options
context:
space:
mode:
authoralokp@chromium.org <alokp@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-12 05:33:49 +0000
committeralokp@chromium.org <alokp@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-07-12 05:33:49 +0000
commitd18b4d6ed525c87c4126142c22de05d47502fff5 (patch)
tree544f3ad9bbb7a66045c9716d4dea636adcdf11df /cc/layers/nine_patch_layer_impl.cc
parent92594aa101db0a68e7c93ee9d5aec78a38403d86 (diff)
downloadchromium_src-d18b4d6ed525c87c4126142c22de05d47502fff5.zip
chromium_src-d18b4d6ed525c87c4126142c22de05d47502fff5.tar.gz
chromium_src-d18b4d6ed525c87c4126142c22de05d47502fff5.tar.bz2
Blend TextureLayer background-color at draw time.
This enables the following optimization: 1. The compositor will be able to disable GL blending if the background-color is opaque. 2. For elements that paint directly to a texture layer, i.e. accelerated canvas, video, etc., there is no need to allocate an additional layer just to paint the background. BUG=236982 Review URL: https://chromiumcodereview.appspot.com/18432002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@211339 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'cc/layers/nine_patch_layer_impl.cc')
-rw-r--r--cc/layers/nine_patch_layer_impl.cc14
1 files changed, 12 insertions, 2 deletions
diff --git a/cc/layers/nine_patch_layer_impl.cc b/cc/layers/nine_patch_layer_impl.cc
index 57723a0..103f765 100644
--- a/cc/layers/nine_patch_layer_impl.cc
+++ b/cc/layers/nine_patch_layer_impl.cc
@@ -179,7 +179,9 @@ void NinePatchLayerImpl::AppendQuads(QuadSink* quad_sink,
premultiplied_alpha,
uv_top_left.origin(),
uv_top_left.bottom_right(),
- vertex_opacity, flipped);
+ SK_ColorTRANSPARENT,
+ vertex_opacity,
+ flipped);
quad_sink->Append(quad.PassAs<DrawQuad>(), append_quads_data);
quad = TextureDrawQuad::Create();
@@ -190,7 +192,9 @@ void NinePatchLayerImpl::AppendQuads(QuadSink* quad_sink,
premultiplied_alpha,
uv_top_right.origin(),
uv_top_right.bottom_right(),
- vertex_opacity, flipped);
+ SK_ColorTRANSPARENT,
+ vertex_opacity,
+ flipped);
quad_sink->Append(quad.PassAs<DrawQuad>(), append_quads_data);
quad = TextureDrawQuad::Create();
@@ -201,6 +205,7 @@ void NinePatchLayerImpl::AppendQuads(QuadSink* quad_sink,
premultiplied_alpha,
uv_bottom_left.origin(),
uv_bottom_left.bottom_right(),
+ SK_ColorTRANSPARENT,
vertex_opacity,
flipped);
quad_sink->Append(quad.PassAs<DrawQuad>(), append_quads_data);
@@ -213,6 +218,7 @@ void NinePatchLayerImpl::AppendQuads(QuadSink* quad_sink,
premultiplied_alpha,
uv_bottom_right.origin(),
uv_bottom_right.bottom_right(),
+ SK_ColorTRANSPARENT,
vertex_opacity,
flipped);
quad_sink->Append(quad.PassAs<DrawQuad>(), append_quads_data);
@@ -225,6 +231,7 @@ void NinePatchLayerImpl::AppendQuads(QuadSink* quad_sink,
premultiplied_alpha,
uv_top.origin(),
uv_top.bottom_right(),
+ SK_ColorTRANSPARENT,
vertex_opacity,
flipped);
quad_sink->Append(quad.PassAs<DrawQuad>(), append_quads_data);
@@ -237,6 +244,7 @@ void NinePatchLayerImpl::AppendQuads(QuadSink* quad_sink,
premultiplied_alpha,
uv_left.origin(),
uv_left.bottom_right(),
+ SK_ColorTRANSPARENT,
vertex_opacity,
flipped);
quad_sink->Append(quad.PassAs<DrawQuad>(), append_quads_data);
@@ -249,6 +257,7 @@ void NinePatchLayerImpl::AppendQuads(QuadSink* quad_sink,
premultiplied_alpha,
uv_right.origin(),
uv_right.bottom_right(),
+ SK_ColorTRANSPARENT,
vertex_opacity,
flipped);
quad_sink->Append(quad.PassAs<DrawQuad>(), append_quads_data);
@@ -261,6 +270,7 @@ void NinePatchLayerImpl::AppendQuads(QuadSink* quad_sink,
premultiplied_alpha,
uv_bottom.origin(),
uv_bottom.bottom_right(),
+ SK_ColorTRANSPARENT,
vertex_opacity,
flipped);
quad_sink->Append(quad.PassAs<DrawQuad>(), append_quads_data);