mirror of
https://github.com/servo/servo.git
synced 2025-07-23 07:13:52 +01:00
parent
15d8c6058b
commit
3258bcaa8b
3 changed files with 9 additions and 6 deletions
|
@ -195,7 +195,7 @@ pub struct StackingContext {
|
||||||
/// The clip and scroll info for this StackingContext.
|
/// The clip and scroll info for this StackingContext.
|
||||||
pub parent_clipping_and_scrolling: ClippingAndScrolling,
|
pub parent_clipping_and_scrolling: ClippingAndScrolling,
|
||||||
|
|
||||||
/// The index of the reference frame that this stacking context estalishes.
|
/// The index of the reference frame that this stacking context establishes.
|
||||||
pub established_reference_frame: Option<ClipScrollNodeIndex>,
|
pub established_reference_frame: Option<ClipScrollNodeIndex>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -261,6 +261,7 @@ impl StackingContext {
|
||||||
let pop_item = DisplayItem::PopStackingContext(Box::new(PopStackingContextItem {
|
let pop_item = DisplayItem::PopStackingContext(Box::new(PopStackingContextItem {
|
||||||
base: base_item.clone(),
|
base: base_item.clone(),
|
||||||
stacking_context_id: self.id,
|
stacking_context_id: self.id,
|
||||||
|
established_reference_frame: self.established_reference_frame.is_some(),
|
||||||
}));
|
}));
|
||||||
|
|
||||||
let push_item = DisplayItem::PushStackingContext(Box::new(PushStackingContextItem {
|
let push_item = DisplayItem::PushStackingContext(Box::new(PushStackingContextItem {
|
||||||
|
@ -657,6 +658,8 @@ pub struct PopStackingContextItem {
|
||||||
pub base: BaseDisplayItem,
|
pub base: BaseDisplayItem,
|
||||||
|
|
||||||
pub stacking_context_id: StackingContextId,
|
pub stacking_context_id: StackingContextId,
|
||||||
|
|
||||||
|
pub established_reference_frame: bool,
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Starts a group of items inside a particular scroll root.
|
/// Starts a group of items inside a particular scroll root.
|
||||||
|
|
|
@ -186,7 +186,7 @@ impl DisplayItem {
|
||||||
);
|
);
|
||||||
IsContentful(false)
|
IsContentful(false)
|
||||||
},
|
},
|
||||||
DisplayItem::PushStackingContext(ref mut item) => {
|
DisplayItem::PushStackingContext(ref item) => {
|
||||||
let stacking_context = &item.stacking_context;
|
let stacking_context = &item.stacking_context;
|
||||||
debug_assert_eq!(stacking_context.context_type, StackingContextType::Real);
|
debug_assert_eq!(stacking_context.context_type, StackingContextType::Real);
|
||||||
|
|
||||||
|
@ -252,8 +252,11 @@ impl DisplayItem {
|
||||||
builder.push_item(&WrDisplayItem::PushStackingContext(wr_item));
|
builder.push_item(&WrDisplayItem::PushStackingContext(wr_item));
|
||||||
IsContentful(false)
|
IsContentful(false)
|
||||||
},
|
},
|
||||||
DisplayItem::PopStackingContext(_) => {
|
DisplayItem::PopStackingContext(ref item) => {
|
||||||
builder.pop_stacking_context();
|
builder.pop_stacking_context();
|
||||||
|
if item.established_reference_frame {
|
||||||
|
builder.pop_reference_frame();
|
||||||
|
}
|
||||||
IsContentful(false)
|
IsContentful(false)
|
||||||
},
|
},
|
||||||
DisplayItem::DefineClipScrollNode(ref mut item) => {
|
DisplayItem::DefineClipScrollNode(ref mut item) => {
|
||||||
|
|
|
@ -1,3 +0,0 @@
|
||||||
[mix-blend-mode-sibling-with-3D-transform.html]
|
|
||||||
type: reftest
|
|
||||||
expected: FAIL
|
|
Loading…
Add table
Add a link
Reference in a new issue