diff options
author | Matt Brubeck <mbrubeck@limpet.net> | 2016-12-07 18:25:01 -0800 |
---|---|---|
committer | Matt Brubeck <mbrubeck@limpet.net> | 2016-12-09 14:10:43 -0800 |
commit | b77a0a89cf76a15346345c74e712a8d56b6ee517 (patch) | |
tree | b0d372da1267c50394d8e8b5ea515bd73125875a /components/layout/table_row.rs | |
parent | 882d5512bb9aa7263864fb18d702c1efb6401914 (diff) | |
download | servo-b77a0a89cf76a15346345c74e712a8d56b6ee517.tar.gz servo-b77a0a89cf76a15346345c74e712a8d56b6ee517.zip |
Propagate column info to rows sequentially
This avoids storing it in the rowgroup (which doesn't need it) and
ensures that it is done sequentially, which will be important when
rowspan support is added to this function.
Note that this does not reduce parallelism in the common case where
all rows are in the same rowgroup.
Diffstat (limited to 'components/layout/table_row.rs')
-rw-r--r-- | components/layout/table_row.rs | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/components/layout/table_row.rs b/components/layout/table_row.rs index 272bf85337f..acb052a7134 100644 --- a/components/layout/table_row.rs +++ b/components/layout/table_row.rs @@ -726,10 +726,13 @@ pub fn propagate_column_inline_sizes_to_child( } FlowClass::TableRowGroup => { let child_table_rowgroup_flow = child_flow.as_mut_table_rowgroup(); - child_table_rowgroup_flow.column_computed_inline_sizes = - column_computed_inline_sizes.to_vec(); child_table_rowgroup_flow.spacing = *border_spacing; - child_table_rowgroup_flow.table_writing_mode = table_writing_mode; + for kid in child_table_rowgroup_flow.block_flow.base.child_iter_mut() { + propagate_column_inline_sizes_to_child(kid, + table_writing_mode, + column_computed_inline_sizes, + border_spacing); + } } FlowClass::TableRow => { let child_table_row_flow = child_flow.as_mut_table_row(); |