aboutsummaryrefslogtreecommitdiffstats
path: root/components/layout_2020/flexbox/geom.rs
diff options
context:
space:
mode:
authorMartin Robinson <mrobinson@igalia.com>2024-08-14 16:25:09 +0200
committerGitHub <noreply@github.com>2024-08-14 14:25:09 +0000
commit7633bdccd229eeba46bba9508564a96066fd4f91 (patch)
treea07b8d53acc28b03376c0921fedfe3f48a6145e1 /components/layout_2020/flexbox/geom.rs
parentc059bab6f4aa920326167b861a3ae17f53001070 (diff)
downloadservo-7633bdccd229eeba46bba9508564a96066fd4f91.tar.gz
servo-7633bdccd229eeba46bba9508564a96066fd4f91.zip
layout: Initial implementation of `flex-direction: column` and `column-reverse` (#33031)
This change removes restrictions on using the column layout mode of flexbox and adds an initial implementation of sizing for that flex direction. There's a lot of missing pieces still, but in some cases this does render column flexbox. In particular, there are now two code paths for preferred widths (intrinsic size) calcuation: one in the main axis (row) and one in the cross axis (column) corresponding to the flex direciton with horizontal writing modes. In addition, `FlexItemBox::inline_content_sizes` is removed in favor of making `sizing::outer_inline` / `IndependentFormattingContext::outer_inline_content_sizes` generic enough to handle using a different value for auto minimum sizes, which flexbox needs. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Oriol Brufau <obrufau@igalia.com>
Diffstat (limited to 'components/layout_2020/flexbox/geom.rs')
-rw-r--r--components/layout_2020/flexbox/geom.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/components/layout_2020/flexbox/geom.rs b/components/layout_2020/flexbox/geom.rs
index 623c031585b..ac80f451f70 100644
--- a/components/layout_2020/flexbox/geom.rs
+++ b/components/layout_2020/flexbox/geom.rs
@@ -67,7 +67,7 @@ impl<T> FlexRelativeSides<T> {
/// One of the two bits set by the `flex-direction` property
/// (The other is "forward" v.s. reverse.)
-#[derive(Clone, Copy, PartialEq)]
+#[derive(Clone, Copy, Debug, PartialEq)]
pub(super) enum FlexAxis {
/// The main axis is the inline axis of the container (not necessarily of flex items!),
/// cross is block.