mirror of
https://github.com/servo/servo.git
synced 2025-08-02 04:00:32 +01:00
layout: Refactor a few things, mostly just to obey the line limit.
This commit is contained in:
parent
fb5952fed0
commit
690bf079f7
1 changed files with 26 additions and 21 deletions
|
@ -1056,7 +1056,7 @@ impl Fragment {
|
||||||
let content_box = self.content_box();
|
let content_box = self.content_box();
|
||||||
let absolute_content_box = rect_to_absolute(content_box);
|
let absolute_content_box = rect_to_absolute(content_box);
|
||||||
|
|
||||||
// Add a clip, if applicable.
|
// Create special per-fragment-type display items.
|
||||||
match self.specific {
|
match self.specific {
|
||||||
UnscannedTextFragment(_) => fail!("Shouldn't see unscanned fragments here."),
|
UnscannedTextFragment(_) => fail!("Shouldn't see unscanned fragments here."),
|
||||||
TableColumnFragment(_) => fail!("Shouldn't see table column fragments here."),
|
TableColumnFragment(_) => fail!("Shouldn't see table column fragments here."),
|
||||||
|
@ -1090,7 +1090,6 @@ impl Fragment {
|
||||||
};
|
};
|
||||||
accumulator.push(display_list, TextDisplayItemClass(text_display_item));
|
accumulator.push(display_list, TextDisplayItemClass(text_display_item));
|
||||||
|
|
||||||
|
|
||||||
// Create display items for text decoration
|
// Create display items for text decoration
|
||||||
{
|
{
|
||||||
let line = |maybe_color: Option<RGBA>, rect: || -> LogicalRect<Au>| {
|
let line = |maybe_color: Option<RGBA>, rect: || -> LogicalRect<Au>| {
|
||||||
|
@ -1139,13 +1138,13 @@ impl Fragment {
|
||||||
debug!("{:?}", self.build_debug_borders_around_text_fragments(display_list,
|
debug!("{:?}", self.build_debug_borders_around_text_fragments(display_list,
|
||||||
flow_origin,
|
flow_origin,
|
||||||
text_fragment))
|
text_fragment))
|
||||||
},
|
}
|
||||||
GenericFragment | IframeFragment(..) | TableFragment | TableCellFragment | TableRowFragment |
|
GenericFragment | IframeFragment(..) | TableFragment | TableCellFragment |
|
||||||
TableWrapperFragment | InlineBlockFragment(_) => {
|
TableRowFragment | TableWrapperFragment | InlineBlockFragment(_) => {
|
||||||
// FIXME(pcwalton): This is a bit of an abuse of the logging infrastructure. We
|
// FIXME(pcwalton): This is a bit of an abuse of the logging infrastructure. We
|
||||||
// should have a real `SERVO_DEBUG` system.
|
// should have a real `SERVO_DEBUG` system.
|
||||||
debug!("{:?}", self.build_debug_borders_around_fragment(display_list, flow_origin))
|
debug!("{:?}", self.build_debug_borders_around_fragment(display_list, flow_origin))
|
||||||
},
|
}
|
||||||
ImageFragment(_) => {
|
ImageFragment(_) => {
|
||||||
match self.specific {
|
match self.specific {
|
||||||
ImageFragment(ref image_fragment) => {
|
ImageFragment(ref image_fragment) => {
|
||||||
|
@ -1188,13 +1187,15 @@ impl Fragment {
|
||||||
// problematic if iframes are outside the area we're computing the display list for, since
|
// problematic if iframes are outside the area we're computing the display list for, since
|
||||||
// they won't be able to reflow at all until the user scrolls to them. Perhaps we should
|
// they won't be able to reflow at all until the user scrolls to them. Perhaps we should
|
||||||
// separate this into two parts: first we should send the size only to the constellation
|
// separate this into two parts: first we should send the size only to the constellation
|
||||||
// once that's computed during assign-block-sizes, and second we should should send the origin
|
// once that's computed during assign-block-sizes, and second we should should send the
|
||||||
// to the constellation here during display list construction. This should work because
|
// origin to the constellation here during display list construction. This should work
|
||||||
// layout for the iframe only needs to know size, and origin is only relevant if the
|
// because layout for the iframe only needs to know size, and origin is only relevant if
|
||||||
// iframe is actually going to be displayed.
|
// the iframe is actually going to be displayed.
|
||||||
match self.specific {
|
match self.specific {
|
||||||
IframeFragment(ref iframe_fragment) => {
|
IframeFragment(ref iframe_fragment) => {
|
||||||
self.finalize_position_and_size_of_iframe(iframe_fragment, flow_origin, layout_context)
|
self.finalize_position_and_size_of_iframe(iframe_fragment,
|
||||||
|
flow_origin,
|
||||||
|
layout_context)
|
||||||
}
|
}
|
||||||
_ => {}
|
_ => {}
|
||||||
}
|
}
|
||||||
|
@ -1287,8 +1288,8 @@ impl Fragment {
|
||||||
/// Returns, and computes, the block-size of this fragment.
|
/// Returns, and computes, the block-size of this fragment.
|
||||||
pub fn content_block_size(&self, layout_context: &LayoutContext) -> Au {
|
pub fn content_block_size(&self, layout_context: &LayoutContext) -> Au {
|
||||||
match self.specific {
|
match self.specific {
|
||||||
GenericFragment | IframeFragment(_) | TableFragment | TableCellFragment | TableRowFragment |
|
GenericFragment | IframeFragment(_) | TableFragment | TableCellFragment |
|
||||||
TableWrapperFragment | InlineBlockFragment(_) => Au(0),
|
TableRowFragment | TableWrapperFragment | InlineBlockFragment(_) => Au(0),
|
||||||
ImageFragment(ref image_fragment_info) => {
|
ImageFragment(ref image_fragment_info) => {
|
||||||
image_fragment_info.computed_block_size()
|
image_fragment_info.computed_block_size()
|
||||||
}
|
}
|
||||||
|
@ -1466,10 +1467,12 @@ impl Fragment {
|
||||||
pub fn assign_replaced_inline_size_if_necessary(&mut self,
|
pub fn assign_replaced_inline_size_if_necessary(&mut self,
|
||||||
container_inline_size: Au) {
|
container_inline_size: Au) {
|
||||||
match self.specific {
|
match self.specific {
|
||||||
GenericFragment | IframeFragment(_) | TableFragment | TableCellFragment | TableRowFragment |
|
GenericFragment | IframeFragment(_) | TableFragment | TableCellFragment |
|
||||||
TableWrapperFragment => return,
|
TableRowFragment | TableWrapperFragment => return,
|
||||||
TableColumnFragment(_) => fail!("Table column fragments do not have inline_size"),
|
TableColumnFragment(_) => fail!("Table column fragments do not have inline_size"),
|
||||||
UnscannedTextFragment(_) => fail!("Unscanned text fragments should have been scanned by now!"),
|
UnscannedTextFragment(_) => {
|
||||||
|
fail!("Unscanned text fragments should have been scanned by now!")
|
||||||
|
}
|
||||||
ImageFragment(_) | ScannedTextFragment(_) | InlineBlockFragment(_) => {}
|
ImageFragment(_) | ScannedTextFragment(_) | InlineBlockFragment(_) => {}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1541,16 +1544,18 @@ impl Fragment {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Assign block-size for this fragment if it is replaced content. The inline-size must have been assigned
|
/// Assign block-size for this fragment if it is replaced content. The inline-size must have
|
||||||
/// first.
|
/// been assigned first.
|
||||||
///
|
///
|
||||||
/// Ideally, this should follow CSS 2.1 § 10.6.2.
|
/// Ideally, this should follow CSS 2.1 § 10.6.2.
|
||||||
pub fn assign_replaced_block_size_if_necessary(&mut self) {
|
pub fn assign_replaced_block_size_if_necessary(&mut self) {
|
||||||
match self.specific {
|
match self.specific {
|
||||||
GenericFragment | IframeFragment(_) | TableFragment | TableCellFragment | TableRowFragment |
|
GenericFragment | IframeFragment(_) | TableFragment | TableCellFragment |
|
||||||
TableWrapperFragment => return,
|
TableRowFragment | TableWrapperFragment => return,
|
||||||
TableColumnFragment(_) => fail!("Table column fragments do not have block_size"),
|
TableColumnFragment(_) => fail!("Table column fragments do not have block_size"),
|
||||||
UnscannedTextFragment(_) => fail!("Unscanned text fragments should have been scanned by now!"),
|
UnscannedTextFragment(_) => {
|
||||||
|
fail!("Unscanned text fragments should have been scanned by now!")
|
||||||
|
}
|
||||||
ImageFragment(_) | ScannedTextFragment(_) | InlineBlockFragment(_) => {}
|
ImageFragment(_) | ScannedTextFragment(_) | InlineBlockFragment(_) => {}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue