Flow inlines around floats (#30243)

This implements the rest of the bulk of float support. Now inline
element flow around floats and floats can be pushed down by inline
elements before them.

Co-authored-by: Oriol Brufau <obrufau@igalia.com>
This commit is contained in:
Martin Robinson 2023-08-31 12:54:54 +02:00 committed by GitHub
parent cb2c876919
commit 96c51ba2e7
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
63 changed files with 410 additions and 220 deletions

View file

@ -65,6 +65,17 @@ pub(crate) struct PaddingBorderMargin {
pub padding_border_sums: flow_relative::Vec2<Length>,
}
impl PaddingBorderMargin {
pub(crate) fn zero() -> Self {
Self {
padding: flow_relative::Sides::zero(),
border: flow_relative::Sides::zero(),
margin: flow_relative::Sides::zero(),
padding_border_sums: flow_relative::Vec2::zero(),
}
}
}
pub(crate) trait ComputedValuesExt {
fn inline_size_is_length(&self) -> bool;
fn inline_box_offsets_are_both_non_auto(&self) -> bool;