diff options
3 files changed, 23 insertions, 1 deletions
diff --git a/Tests/LibWeb/Layout/expected/flex/multi-line-column-container-with-automatic-height.txt b/Tests/LibWeb/Layout/expected/flex/multi-line-column-container-with-automatic-height.txt new file mode 100644 index 0000000000..50b55e2e3c --- /dev/null +++ b/Tests/LibWeb/Layout/expected/flex/multi-line-column-container-with-automatic-height.txt @@ -0,0 +1,7 @@ +Viewport <#document> at (0,0) content-size 800x600 children: not-inline + BlockContainer <html> at (1,1) content-size 798x176 children: not-inline + BlockContainer <body> at (10,10) content-size 780x158 children: not-inline + Box <div.flexbox> at (11,11) content-size 200x156 flex-container(column) children: not-inline + BlockContainer <div> at (12,12) content-size 50x50 flex-item children: not-inline + BlockContainer <div> at (12,64) content-size 50x50 flex-item children: not-inline + BlockContainer <div> at (12,116) content-size 50x50 flex-item children: not-inline diff --git a/Tests/LibWeb/Layout/input/flex/multi-line-column-container-with-automatic-height.html b/Tests/LibWeb/Layout/input/flex/multi-line-column-container-with-automatic-height.html new file mode 100644 index 0000000000..2df2347fbe --- /dev/null +++ b/Tests/LibWeb/Layout/input/flex/multi-line-column-container-with-automatic-height.html @@ -0,0 +1,15 @@ +<!doctype html><style> +* { + border: 1px solid black; +} +.flexbox { + display: flex; + flex-direction: column; + flex-wrap: wrap; + width: 200px; +} +.flexbox > div { + width: 50px; + height: 50px; +} +</style><div class="flexbox"><div></div><div></div><div></div>
\ No newline at end of file diff --git a/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.cpp b/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.cpp index c18e2f781f..803c62a8b1 100644 --- a/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.cpp +++ b/Userland/Libraries/LibWeb/Layout/FlexFormattingContext.cpp @@ -845,7 +845,7 @@ void FlexFormattingContext::collect_flex_items_into_flex_lines() CSSPixels line_main_size = 0; for (auto& item : m_flex_items) { auto const outer_hypothetical_main_size = item.outer_hypothetical_main_size(); - if (!line.items.is_empty() && (line_main_size + outer_hypothetical_main_size) > m_available_space_for_items->main.to_px_or_zero()) { + if (!line.items.is_empty() && (line_main_size + outer_hypothetical_main_size) > m_available_space_for_items->main.to_px()) { m_flex_lines.append(move(line)); line = {}; line_main_size = 0; |