From 18b1854aeaae1307c3ff0a356cbfa2e7c01b5933 Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Thu, 21 Jul 2022 00:27:26 +0200 Subject: [PATCH] LibWeb: Add FFC helpers for getting the computed main/cross size of box --- .../Libraries/LibWeb/Layout/FlexFormattingContext.cpp | 9 +++++++++ Userland/Libraries/LibWeb/Layout/FlexFormattingContext.h | 2 ++ 2 files changed, 11 insertions(+) diff --git a/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.cpp b/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.cpp index 2d8011d1c6..86085ec1ec 100644 --- a/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.cpp +++ b/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.cpp @@ -1710,4 +1710,13 @@ bool FlexFormattingContext::flex_item_is_stretched(FlexItem const& item) const return computed_cross_size.is_auto() && !item.margins.cross_before_is_auto && !item.margins.cross_after_is_auto; } +CSS::LengthPercentage const& FlexFormattingContext::computed_main_size(Box const& box) const +{ + return is_row_layout() ? box.computed_values().width() : box.computed_values().height(); +} +CSS::LengthPercentage const& FlexFormattingContext::computed_cross_size(Box const& box) const +{ + return !is_row_layout() ? box.computed_values().width() : box.computed_values().height(); +} + } diff --git a/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.h b/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.h index 247fce83a5..db30e8c418 100644 --- a/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.h +++ b/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.h @@ -105,6 +105,8 @@ private: Optional specified_size_suggestion(FlexItem const&) const; Optional transferred_size_suggestion(FlexItem const&) const; float content_size_suggestion(FlexItem const&) const; + CSS::LengthPercentage const& computed_main_size(Box const&) const; + CSS::LengthPercentage const& computed_cross_size(Box const&) const; float get_pixel_width(Box const& box, Optional const& length_percentage) const; float get_pixel_height(Box const& box, Optional const& length_percentage) const;