mirror of
https://github.com/servo/servo.git
synced 2025-06-06 16:45:39 +00:00
Improve containing block creation for position:absolute flows
Instead of only promoting flows with positioned fragments to containing blocks, also do this for flows which have the transform, perspective or filter properties set. This is what the spec requires and also fixes some failing tests. It will allow us to stop creating stacking contexts for overflow:hidden and overflow:scroll flows. Fixes #18091.
This commit is contained in:
parent
0a24c2f03c
commit
57704b0481
15 changed files with 107 additions and 43 deletions
|
@ -201,6 +201,14 @@ impl Flow for MulticolFlow {
|
|||
self.block_flow.compute_overflow()
|
||||
}
|
||||
|
||||
fn contains_roots_of_absolute_flow_tree(&self) -> bool {
|
||||
self.block_flow.contains_roots_of_absolute_flow_tree()
|
||||
}
|
||||
|
||||
fn is_absolute_containing_block(&self) -> bool {
|
||||
self.block_flow.is_absolute_containing_block()
|
||||
}
|
||||
|
||||
fn generated_containing_block_size(&self, flow: OpaqueFlow) -> LogicalSize<Au> {
|
||||
self.block_flow.generated_containing_block_size(flow)
|
||||
}
|
||||
|
@ -283,6 +291,14 @@ impl Flow for MulticolColumnFlow {
|
|||
self.block_flow.compute_overflow()
|
||||
}
|
||||
|
||||
fn contains_roots_of_absolute_flow_tree(&self) -> bool {
|
||||
self.block_flow.contains_roots_of_absolute_flow_tree()
|
||||
}
|
||||
|
||||
fn is_absolute_containing_block(&self) -> bool {
|
||||
self.block_flow.is_absolute_containing_block()
|
||||
}
|
||||
|
||||
fn generated_containing_block_size(&self, flow: OpaqueFlow) -> LogicalSize<Au> {
|
||||
self.block_flow.generated_containing_block_size(flow)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue