From 7d672555be73bf0a057e8596b96d3843b0627eb2 Mon Sep 17 00:00:00 2001 From: Martin Robinson Date: Fri, 22 Jun 2018 17:56:11 +0200 Subject: [PATCH] Give stacking contexts the right reference frame id Stacking contexts that create reference frames should be created with the positioning node set to the reference frames that surround them. --- components/layout/display_list/webrender_helpers.rs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/components/layout/display_list/webrender_helpers.rs b/components/layout/display_list/webrender_helpers.rs index a6070ecb61d..d056d8c4655 100644 --- a/components/layout/display_list/webrender_helpers.rs +++ b/components/layout/display_list/webrender_helpers.rs @@ -235,6 +235,7 @@ impl WebRenderDisplayItemConverter for DisplayItem { info.rect.origin = LayoutPoint::zero(); info.clip_rect.origin = LayoutPoint::zero(); + builder.push_clip_id(clip_id); } builder.push_stacking_context( @@ -245,6 +246,10 @@ impl WebRenderDisplayItemConverter for DisplayItem { stacking_context.filters.clone(), GlyphRasterSpace::Screen, ); + + if stacking_context.established_reference_frame.is_some() { + builder.pop_clip_id(); + } }, DisplayItem::PopStackingContext(_) => builder.pop_stacking_context(), DisplayItem::DefineClipScrollNode(ref item) => {