aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout/table_row.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/layout/table_row.rs')
-rw-r--r--components/layout/table_row.rs58
1 files changed, 35 insertions, 23 deletions
diff --git a/components/layout/table_row.rs b/components/layout/table_row.rs
index 0ccd82c0504..ad99dd4b15a 100644
--- a/components/layout/table_row.rs
+++ b/components/layout/table_row.rs
@@ -6,7 +6,7 @@
use std::cmp::max;
use std::fmt;
-use std::iter::{Enumerate, IntoIterator, Peekable};
+use std::iter::{Enumerate, Peekable};
use app_units::Au;
use euclid::default::Point2D;
@@ -113,8 +113,8 @@ impl TableRowFlow {
/// TODO(pcwalton): This doesn't handle floats and positioned elements right.
///
/// Returns the block size
- pub fn compute_block_size_table_row_base<'a>(
- &'a mut self,
+ pub fn compute_block_size_table_row_base(
+ &mut self,
layout_context: &LayoutContext,
incoming_rowspan_data: &mut Vec<Au>,
border_info: &[TableRowSizeData],
@@ -282,8 +282,8 @@ impl TableRowFlow {
self.collapsed_border_spacing.inline.clear();
self.collapsed_border_spacing.inline.extend(
collapsed_inline_direction_border_widths_for_table
- .into_iter()
- .map(|x| *x),
+ .iter()
+ .copied(),
);
if let Some(collapsed_block_direction_border_width_for_table) =
@@ -389,7 +389,7 @@ impl Flow for TableRowFlow {
let row_style = &*self.block_flow.fragment.style;
self.preliminary_collapsed_borders
.reset(CollapsedBorder::inline_start(
- &row_style,
+ row_style,
CollapsedBorderProvenance::FromTableRow,
));
@@ -448,8 +448,8 @@ impl Flow for TableRowFlow {
Size::LengthPercentage(ref lp) => lp.0.maybe_to_used_value(None).is_some(),
},
};
- min_inline_size = min_inline_size + child_column_inline_size.minimum_length;
- pref_inline_size = pref_inline_size + child_column_inline_size.preferred;
+ min_inline_size += child_column_inline_size.minimum_length;
+ pref_inline_size += child_column_inline_size.preferred;
self.cell_intrinsic_inline_sizes
.push(CellIntrinsicInlineSize {
column_size: child_column_inline_size,
@@ -700,6 +700,12 @@ impl CollapsedBordersForRow {
}
}
+impl Default for CollapsedBordersForRow {
+ fn default() -> Self {
+ Self::new()
+ }
+}
+
#[derive(Clone, Debug)]
pub struct CollapsedBorderSpacingForRow {
/// The spacing in between each column.
@@ -773,9 +779,9 @@ impl CollapsedBorder {
fn top(css_style: &ComputedValues, provenance: CollapsedBorderProvenance) -> CollapsedBorder {
CollapsedBorder {
style: css_style.get_border().border_top_style,
- width: Au::from(css_style.get_border().border_top_width),
+ width: css_style.get_border().border_top_width,
color: css_style.get_border().border_top_color.clone(),
- provenance: provenance,
+ provenance,
}
}
@@ -784,9 +790,9 @@ impl CollapsedBorder {
fn right(css_style: &ComputedValues, provenance: CollapsedBorderProvenance) -> CollapsedBorder {
CollapsedBorder {
style: css_style.get_border().border_right_style,
- width: Au::from(css_style.get_border().border_right_width),
+ width: css_style.get_border().border_right_width,
color: css_style.get_border().border_right_color.clone(),
- provenance: provenance,
+ provenance,
}
}
@@ -798,9 +804,9 @@ impl CollapsedBorder {
) -> CollapsedBorder {
CollapsedBorder {
style: css_style.get_border().border_bottom_style,
- width: Au::from(css_style.get_border().border_bottom_width),
+ width: css_style.get_border().border_bottom_width,
color: css_style.get_border().border_bottom_color.clone(),
- provenance: provenance,
+ provenance,
}
}
@@ -809,9 +815,9 @@ impl CollapsedBorder {
fn left(css_style: &ComputedValues, provenance: CollapsedBorderProvenance) -> CollapsedBorder {
CollapsedBorder {
style: css_style.get_border().border_left_style,
- width: Au::from(css_style.get_border().border_left_width),
+ width: css_style.get_border().border_left_width,
color: css_style.get_border().border_left_color.clone(),
- provenance: provenance,
+ provenance,
}
}
@@ -902,6 +908,12 @@ impl CollapsedBorder {
}
}
+impl Default for CollapsedBorder {
+ fn default() -> Self {
+ Self::new()
+ }
+}
+
/// Pushes column inline size, incoming rowspan, and border collapse info down to a child.
pub fn propagate_column_inline_sizes_to_child(
child_flow: &mut dyn Flow,
@@ -1107,7 +1119,7 @@ fn perform_inline_direction_border_collapse_for_row(
if child_index == 0 {
let first_inline_border = &mut preliminary_collapsed_borders.inline[0];
first_inline_border.combine(&CollapsedBorder::inline_start(
- &*child_table_cell.block_flow.fragment.style,
+ &child_table_cell.block_flow.fragment.style,
CollapsedBorderProvenance::FromNextTableCell,
));
}
@@ -1115,15 +1127,15 @@ fn perform_inline_direction_border_collapse_for_row(
let inline_collapsed_border = preliminary_collapsed_borders.inline.push_or_set(
child_index + 1,
CollapsedBorder::inline_end(
- &*child_table_cell.block_flow.fragment.style,
+ &child_table_cell.block_flow.fragment.style,
CollapsedBorderProvenance::FromPreviousTableCell,
),
);
- if let Some(&(_, ref next_child_flow)) = iterator.peek() {
+ if let Some((_, next_child_flow)) = iterator.peek() {
let next_child_flow = next_child_flow.as_block();
inline_collapsed_border.combine(&CollapsedBorder::inline_start(
- &*next_child_flow.fragment.style,
+ &next_child_flow.fragment.style,
CollapsedBorderProvenance::FromNextTableCell,
))
};
@@ -1132,13 +1144,13 @@ fn perform_inline_direction_border_collapse_for_row(
// come from the row.
if child_index + 1 == children_count {
inline_collapsed_border.combine(&CollapsedBorder::inline_end(
- &row_style,
+ row_style,
CollapsedBorderProvenance::FromTableRow,
));
}
let mut block_start_border = CollapsedBorder::block_start(
- &*child_table_cell.block_flow.fragment.style,
+ &child_table_cell.block_flow.fragment.style,
CollapsedBorderProvenance::FromNextTableCell,
);
block_start_border.combine(&CollapsedBorder::block_start(
@@ -1149,7 +1161,7 @@ fn perform_inline_direction_border_collapse_for_row(
.block_start
.push_or_set(child_index, block_start_border);
let mut block_end_border = CollapsedBorder::block_end(
- &*child_table_cell.block_flow.fragment.style,
+ &child_table_cell.block_flow.fragment.style,
CollapsedBorderProvenance::FromPreviousTableCell,
);
block_end_border.combine(&CollapsedBorder::block_end(