@@ -129,10 +129,8 @@ std::optional<Rect> EntityPass::GetElementsCoverage(
129129 subpass.xformation_ , Entity::RenderingMode::kSubpass );
130130 if (backdrop_filter) {
131131 auto backdrop_coverage = backdrop_filter->GetCoverage ({});
132- if (backdrop_coverage.has_value ()) {
133- unfiltered_coverage =
134- Union (backdrop_coverage.value (), unfiltered_coverage);
135- }
132+ unfiltered_coverage =
133+ Rect::Union (unfiltered_coverage, backdrop_coverage);
136134 } else {
137135 VALIDATION_LOG << " The EntityPass backdrop filter proc didn't return "
138136 " a valid filter." ;
@@ -162,12 +160,12 @@ std::optional<Rect> EntityPass::GetElementsCoverage(
162160 element_coverage = unfiltered_coverage;
163161 }
164162
165- element_coverage = Intersection (element_coverage, coverage_limit);
163+ element_coverage = Rect:: Intersection (element_coverage, coverage_limit);
166164 } else {
167165 FML_UNREACHABLE ();
168166 }
169167
170- accumulated_coverage = Union (accumulated_coverage, element_coverage);
168+ accumulated_coverage = Rect:: Union (accumulated_coverage, element_coverage);
171169 }
172170 return accumulated_coverage;
173171}
@@ -747,19 +745,8 @@ bool EntityPass::RenderElement(Entity& element_entity,
747745 // clip coverage (which is the max clip bounds). The contents may
748746 // optionally use this hint to avoid unnecessary rendering work.
749747 auto element_coverage_hint = element_entity.GetContents ()->GetCoverageHint ();
750- if (element_coverage_hint.has_value () &&
751- // If the `current_clip_coverage` is `std::nullopt`, just fall into the
752- // else case and let std::nullopt get assigned as the coverage hint.
753- current_clip_coverage.has_value ()) {
754- // If the element already has a coverage hint (because its an advanced
755- // blend), then we need to intersect the clip coverage hint with the
756- // existing coverage hint.
757- element_entity.GetContents ()->SetCoverageHint (
758- element_coverage_hint.value ().Intersection (
759- current_clip_coverage.value ()));
760- } else {
761- element_entity.GetContents ()->SetCoverageHint (current_clip_coverage);
762- }
748+ element_entity.GetContents ()->SetCoverageHint (
749+ Rect::Intersection (element_coverage_hint, current_clip_coverage));
763750
764751 switch (clip_coverage.type ) {
765752 case Contents::ClipCoverage::Type::kNoChange :
0 commit comments