mirror of
https://github.com/servo/servo.git
synced 2025-07-23 15:23:42 +01:00
An element establishing a formatting context *is* the containing block for its contents
This commit is contained in:
parent
3889f69a71
commit
080f5bb763
2 changed files with 6 additions and 8 deletions
|
@ -138,18 +138,18 @@ impl BlockContainer {
|
||||||
pub(super) fn inline_content_sizes(
|
pub(super) fn inline_content_sizes(
|
||||||
&self,
|
&self,
|
||||||
layout_context: &LayoutContext,
|
layout_context: &LayoutContext,
|
||||||
containing_block_writing_mode: WritingMode,
|
writing_mode: WritingMode,
|
||||||
) -> ContentSizes {
|
) -> ContentSizes {
|
||||||
match &self {
|
match &self {
|
||||||
Self::BlockLevelBoxes(boxes) => boxes
|
Self::BlockLevelBoxes(boxes) => boxes
|
||||||
.par_iter()
|
.par_iter()
|
||||||
.map(|box_| {
|
.map(|box_| {
|
||||||
box_.borrow_mut()
|
box_.borrow_mut()
|
||||||
.inline_content_sizes(layout_context, containing_block_writing_mode)
|
.inline_content_sizes(layout_context, writing_mode)
|
||||||
})
|
})
|
||||||
.reduce(ContentSizes::zero, ContentSizes::max),
|
.reduce(ContentSizes::zero, ContentSizes::max),
|
||||||
Self::InlineFormattingContext(context) => {
|
Self::InlineFormattingContext(context) => {
|
||||||
context.inline_content_sizes(layout_context, containing_block_writing_mode)
|
context.inline_content_sizes(layout_context, writing_mode)
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -159,9 +159,7 @@ impl IndependentFormattingContext {
|
||||||
let contents = &non_replaced.contents;
|
let contents = &non_replaced.contents;
|
||||||
sizing::outer_inline_and_percentages(&style, containing_block_writing_mode, || {
|
sizing::outer_inline_and_percentages(&style, containing_block_writing_mode, || {
|
||||||
content_sizes
|
content_sizes
|
||||||
.get_or_insert_with(|| {
|
.get_or_insert_with(|| contents.inline_content_sizes(layout_context, style.writing_mode))
|
||||||
contents.inline_content_sizes(layout_context, style.writing_mode)
|
|
||||||
})
|
|
||||||
.clone()
|
.clone()
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
@ -211,12 +209,12 @@ impl NonReplacedFormattingContextContents {
|
||||||
pub fn inline_content_sizes(
|
pub fn inline_content_sizes(
|
||||||
&self,
|
&self,
|
||||||
layout_context: &LayoutContext,
|
layout_context: &LayoutContext,
|
||||||
containing_block_writing_mode: WritingMode,
|
writing_mode: WritingMode,
|
||||||
) -> ContentSizes {
|
) -> ContentSizes {
|
||||||
match self {
|
match self {
|
||||||
Self::Flow(inner) => inner
|
Self::Flow(inner) => inner
|
||||||
.contents
|
.contents
|
||||||
.inline_content_sizes(layout_context, containing_block_writing_mode),
|
.inline_content_sizes(layout_context, writing_mode),
|
||||||
Self::Flex(inner) => inner.inline_content_sizes(),
|
Self::Flex(inner) => inner.inline_content_sizes(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue