mirror of
https://github.com/servo/servo.git
synced 2025-08-03 04:30:10 +01:00
layout: Enable using cached fragments when there is a BoxTree update point (#36404)
This starts to enable the fragment cache for all layout modes, except grid. The main tricky bit here is that update points are absolutes and these need to be laid out again in their containing blocks. We punt a little bit on this, by forcing ancestors of update points to rebuild their Fragments. This is just the first step. Testing: We do not currently have layout performance tests, but will try to run some tests manually later. Behavior is covered by the WPT. Co-authored-by: Oriol Brufau <obrufau@igalia.com> Signed-off-by: Martin Robinson <mrobinson@igalia.com> Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Oriol Brufau <obrufau@igalia.com>
This commit is contained in:
parent
15cac97ada
commit
2d001e2c85
11 changed files with 188 additions and 48 deletions
|
@ -1934,7 +1934,7 @@ impl FlexItem<'_> {
|
|||
}
|
||||
}
|
||||
|
||||
let layout = non_replaced.layout_with_caching(
|
||||
let layout = non_replaced.layout(
|
||||
flex_context.layout_context,
|
||||
&mut positioning_context,
|
||||
&item_as_containing_block,
|
||||
|
@ -2686,7 +2686,7 @@ impl FlexItemBox {
|
|||
};
|
||||
let mut content_block_size = || {
|
||||
non_replaced
|
||||
.layout_with_caching(
|
||||
.layout(
|
||||
flex_context.layout_context,
|
||||
&mut positioning_context,
|
||||
&item_as_containing_block,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue