summaryrefslogtreecommitdiffstats
path: root/chromium/cc/layers/texture_layer_impl.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2020-01-20 13:40:20 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2020-01-22 12:41:23 +0000
commit7961cea6d1041e3e454dae6a1da660b453efd238 (patch)
treec0eeb4a9ff9ba32986289c1653d9608e53ccb444 /chromium/cc/layers/texture_layer_impl.cc
parentb7034d0803538058e5c9d904ef03cf5eab34f6ef (diff)
BASELINE: Update Chromium to 78.0.3904.130
Change-Id: If185e0c0061b3437531c97c9c8c78f239352a68b Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'chromium/cc/layers/texture_layer_impl.cc')
-rw-r--r--chromium/cc/layers/texture_layer_impl.cc13
1 files changed, 13 insertions, 0 deletions
diff --git a/chromium/cc/layers/texture_layer_impl.cc b/chromium/cc/layers/texture_layer_impl.cc
index 3f82dafccf0..20f21f7ab0d 100644
--- a/chromium/cc/layers/texture_layer_impl.cc
+++ b/chromium/cc/layers/texture_layer_impl.cc
@@ -56,6 +56,7 @@ void TextureLayerImpl::PushPropertiesTo(LayerImpl* layer) {
texture_layer->SetVertexOpacity(vertex_opacity_);
texture_layer->SetPremultipliedAlpha(premultiplied_alpha_);
texture_layer->SetBlendBackgroundColor(blend_background_color_);
+ texture_layer->SetForceTextureToOpaque(force_texture_to_opaque_);
texture_layer->SetNearestNeighbor(nearest_neighbor_);
if (own_resource_) {
texture_layer->SetTransferableResource(transferable_resource_,
@@ -122,6 +123,11 @@ void TextureLayerImpl::AppendQuads(viz::RenderPass* render_pass,
SkColor bg_color =
blend_background_color_ ? background_color() : SK_ColorTRANSPARENT;
+
+ if (force_texture_to_opaque_) {
+ bg_color = SK_ColorBLACK;
+ }
+
bool are_contents_opaque =
contents_opaque() || (SkColorGetA(bg_color) == 0xFF);
@@ -158,6 +164,9 @@ SimpleEnclosedRegion TextureLayerImpl::VisibleOpaqueRegion() const {
if (contents_opaque())
return SimpleEnclosedRegion(visible_layer_rect());
+ if (force_texture_to_opaque_)
+ return SimpleEnclosedRegion(visible_layer_rect());
+
if (blend_background_color_ && (SkColorGetA(background_color()) == 0xFF))
return SimpleEnclosedRegion(visible_layer_rect());
@@ -199,6 +208,10 @@ void TextureLayerImpl::SetBlendBackgroundColor(bool blend) {
blend_background_color_ = blend;
}
+void TextureLayerImpl::SetForceTextureToOpaque(bool opaque) {
+ force_texture_to_opaque_ = opaque;
+}
+
void TextureLayerImpl::SetFlipped(bool flipped) {
flipped_ = flipped;
}