From f65777f8bed77b649b5e6898b7219d49548c1b87 Mon Sep 17 00:00:00 2001 From: jonahwilliams Date: Tue, 16 Apr 2024 09:14:39 -0700 Subject: [PATCH 1/2] [Impeller] remove absorb opacity limit. --- impeller/entity/contents/filters/blend_filter_contents.cc | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/impeller/entity/contents/filters/blend_filter_contents.cc b/impeller/entity/contents/filters/blend_filter_contents.cc index 2af8be96bb97f..3ed0ef0b92467 100644 --- a/impeller/entity/contents/filters/blend_filter_contents.cc +++ b/impeller/entity/contents/filters/blend_filter_contents.cc @@ -742,8 +742,7 @@ std::optional BlendFilterContents::RenderFilter( } if (blend_mode <= Entity::kLastPipelineBlendMode) { - if (inputs.size() == 1 && foreground_color_.has_value() && - GetAbsorbOpacity() == ColorFilterContents::AbsorbOpacity::kYes) { + if (inputs.size() == 1 && foreground_color_.has_value()) { return CreateForegroundPorterDuffBlend( inputs[0], renderer, entity, coverage, foreground_color_.value(), blend_mode_, GetAlpha(), GetAbsorbOpacity()); @@ -753,8 +752,7 @@ std::optional BlendFilterContents::RenderFilter( } if (blend_mode <= Entity::kLastAdvancedBlendMode) { - if (inputs.size() == 1 && foreground_color_.has_value() && - GetAbsorbOpacity() == ColorFilterContents::AbsorbOpacity::kYes) { + if (inputs.size() == 1 && foreground_color_.has_value()) { return CreateForegroundAdvancedBlend( inputs[0], renderer, entity, coverage, foreground_color_.value(), blend_mode, GetAlpha(), GetAbsorbOpacity()); From 1f1c6f3d308bdbe116f525930db52779a4ed7483 Mon Sep 17 00:00:00 2001 From: Jonah Williams Date: Thu, 18 Apr 2024 17:25:37 -0700 Subject: [PATCH 2/2] Update blend_filter_contents.cc --- impeller/entity/contents/filters/blend_filter_contents.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/impeller/entity/contents/filters/blend_filter_contents.cc b/impeller/entity/contents/filters/blend_filter_contents.cc index 0fd926614125a..93550da403e4c 100644 --- a/impeller/entity/contents/filters/blend_filter_contents.cc +++ b/impeller/entity/contents/filters/blend_filter_contents.cc @@ -737,7 +737,7 @@ std::optional BlendFilterContents::RenderFilter( foreground_color_, GetAbsorbOpacity(), GetAlpha()); } - if (blend_mode <= Entity::kLastAdvancedBlendMode) { + if (blend_mode_ <= Entity::kLastAdvancedBlendMode) { if (inputs.size() == 1 && foreground_color_.has_value()) { return CreateForegroundAdvancedBlend( inputs[0], renderer, entity, coverage, foreground_color_.value(),