From 115e5f42afccebf7d3b449eaae045332375df4b5 Mon Sep 17 00:00:00 2001 From: Jelle Raaijmakers Date: Wed, 16 Jul 2025 21:35:09 +0200 Subject: [PATCH] LibWeb: Improve graphical list item marker positioning While 788d5368a7b4e898d51c280ba17f3ee5916bf50e took care of better text marker positioning, this improves graphical marker positioning instead. By looking at how Firefox and Chrome render markers, it's clear that there are three parts to positioning a graphical marker: * The containing space that the marker resides in; * The marker dimensions; * The distance between the marker and the start of the list item. The space that the marker can be contained in, is the area to the left of the list item with a height of the marker's line-height. The marker dimensions are relative to the marker's font's pixel size: most of them are a square at 35% of the font size, but the disclosure markers are sized at 50% instead. Finally, the marker distance is always gauged at 50% of the font size. So for example, a list item with `list-style-type: disc` and `font-size: 20px`, has 10px between its start and the right side of the marker, and the marker's dimensions are 7x7. The percentages I've chosen closely resemble how Firefox lays out its list item markers. --- .../LibWeb/Layout/BlockFormattingContext.cpp | 53 ++++++++++-------- Libraries/LibWeb/Layout/ListItemMarkerBox.cpp | 17 ++++++ Libraries/LibWeb/Layout/ListItemMarkerBox.h | 2 + Libraries/LibWeb/Painting/MarkerPaintable.cpp | 50 +++++++---------- .../list-markers-intruded-by-float.txt | 24 ++++---- .../css-pseudo-element-display-list-item.txt | 4 +- .../LibWeb/Layout/expected/details-closed.txt | 14 ++--- Tests/LibWeb/Layout/expected/details-open.txt | 14 ++--- .../details-summary-default-ua-style.txt | 10 ++-- .../inside-list-item-content-offset.txt | 18 +++--- .../list-item-marker-pseudo-placement.txt | 4 +- .../list-render-list-owner-is-document.txt | 8 +-- .../list-render-list-owner-not-ol.txt | 8 +-- .../Layout/expected/list-render-no-list.txt | 8 +-- .../ol-render-deep-hybrid-list-item-list.txt | 32 +++++------ .../Layout/expected/ol-render-item-values.txt | 16 +++--- .../expected/ol-render-style-list-item.txt | 32 +++++------ Tests/LibWeb/Layout/expected/ordered-list.txt | 28 ++++----- Tests/LibWeb/Layout/expected/ul-render.txt | 16 +++--- .../images/details-open-then-closed.png | Bin 2113 -> 2113 bytes .../Screenshot/images/ordered-list-ref.png | Bin 4175 -> 4164 bytes 21 files changed, 187 insertions(+), 171 deletions(-) diff --git a/Libraries/LibWeb/Layout/BlockFormattingContext.cpp b/Libraries/LibWeb/Layout/BlockFormattingContext.cpp index 8600bb25349..db67a08519f 100644 --- a/Libraries/LibWeb/Layout/BlockFormattingContext.cpp +++ b/Libraries/LibWeb/Layout/BlockFormattingContext.cpp @@ -831,9 +831,8 @@ void BlockFormattingContext::layout_block_level_box(Box const& box, BlockContain compute_inset(box, content_box_rect(block_container_state).size()); // Now that our children are formatted we place the ListItemBox with the left space we remembered. - if (is(box)) { + if (is(box)) layout_list_item_marker(static_cast(box), left_space_before_children_formatted); - } bottom_of_lowest_margin_box = max(bottom_of_lowest_margin_box, box_state.offset.y() + box_state.content_height() + box_state.margin_box_bottom()); @@ -1192,24 +1191,26 @@ void BlockFormattingContext::ensure_sizes_correct_for_left_offset_calculation(Li auto& marker = *list_item_box.marker(); auto& marker_state = m_state.get_mutable(marker); - CSSPixels image_width = 0; - CSSPixels image_height = 0; + // If an image is used, the marker's dimensions are the same as the image. if (auto const* list_style_image = marker.list_style_image()) { - image_width = list_style_image->natural_width().value_or(0); - image_height = list_style_image->natural_height().value_or(0); + marker_state.set_content_width(list_style_image->natural_width().value_or(0)); + marker_state.set_content_height(list_style_image->natural_height().value_or(0)); + return; } + CSSPixels marker_size = marker.relative_size(); + marker_state.set_content_height(marker_size); + + // Text markers use text metrics to determine their width; other markers use square dimensions. + auto const& marker_font = marker.first_available_font(); auto marker_text = marker.text(); - if (!marker_text.has_value()) { - auto default_marker_width = max(4, marker.first_available_font().pixel_size() - 4); - marker_state.set_content_width(image_width + default_marker_width); - } else { + if (marker_text.has_value()) { // FIXME: Use per-code-point fonts to measure text. - auto text_width = marker.first_available_font().width(marker_text.value().code_points()); - marker_state.set_content_width(image_width + CSSPixels::nearest_value_for(text_width)); + auto text_width = marker_font.width(marker_text.value().code_points()); + marker_state.set_content_width(CSSPixels::nearest_value_for(text_width)); + } else { + marker_state.set_content_width(marker_size); } - - marker_state.set_content_height(max(image_height, CSSPixels { marker.first_available_font().pixel_size() })); } void BlockFormattingContext::layout_list_item_marker(ListItemBox const& list_item_box, CSSPixels const& left_space_before_list_item_elements_formatted) @@ -1222,20 +1223,26 @@ void BlockFormattingContext::layout_list_item_marker(ListItemBox const& list_ite auto& list_item_state = m_state.get_mutable(list_item_box); auto marker_text = marker.text(); - auto default_marker_width = marker_text.has_value() ? 0 : max(4, marker.first_available_font().pixel_size() - 4); - auto final_marker_width = marker_state.content_width() + default_marker_width; + + // Text markers fit snug against the list item; non-text position themselves at 50% of the font size. + CSSPixels marker_distance = 0; + if (!marker_text.has_value()) + marker_distance = CSSPixels::nearest_value_for(.5f * marker.first_available_font().pixel_size()); + + auto marker_height = marker_state.content_height(); + auto marker_width = marker_state.content_width(); if (marker.list_style_position() == CSS::ListStylePosition::Inside) { - list_item_state.set_content_x(list_item_state.offset.x() + final_marker_width); - list_item_state.set_content_width(list_item_state.content_width() - final_marker_width); + list_item_state.set_content_x(list_item_state.offset.x() + marker_width + marker_distance); + list_item_state.set_content_width(list_item_state.content_width() - marker_width); } - auto offset_y = max(CSSPixels(0), (marker.computed_values().line_height() - marker_state.content_height()) / 2); + auto offset_x = round(left_space_before_list_item_elements_formatted - marker_distance - marker_width); + auto offset_y = round(max(CSSPixels(0), (marker.computed_values().line_height() - marker_height) / 2)); + marker_state.set_content_offset({ offset_x, offset_y }); - marker_state.set_content_offset({ left_space_before_list_item_elements_formatted - final_marker_width, round(offset_y) }); - - if (marker_state.content_height() > list_item_state.content_height()) - list_item_state.set_content_height(marker_state.content_height()); + if (marker_height > list_item_state.content_height()) + list_item_state.set_content_height(marker_height); } BlockFormattingContext::SpaceUsedAndContainingMarginForFloats BlockFormattingContext::space_used_and_containing_margin_for_floats(CSSPixels y) const diff --git a/Libraries/LibWeb/Layout/ListItemMarkerBox.cpp b/Libraries/LibWeb/Layout/ListItemMarkerBox.cpp index 2ece586ea52..ca97961ffb4 100644 --- a/Libraries/LibWeb/Layout/ListItemMarkerBox.cpp +++ b/Libraries/LibWeb/Layout/ListItemMarkerBox.cpp @@ -73,6 +73,23 @@ GC::Ptr ListItemMarkerBox::create_paintable() const return Painting::MarkerPaintable::create(*this); } +CSSPixels ListItemMarkerBox::relative_size() const +{ + auto font_size = first_available_font().pixel_size(); + auto marker_text = text(); + if (marker_text.has_value()) + return CSSPixels::nearest_value_for(font_size); + + // Scale the marker box relative to the used font's pixel size. + switch (m_list_style_type.get()) { + case CSS::CounterStyleNameKeyword::DisclosureClosed: + case CSS::CounterStyleNameKeyword::DisclosureOpen: + return CSSPixels::nearest_value_for(ceilf(font_size * .5f)); + default: + return CSSPixels::nearest_value_for(ceilf(font_size * .35f)); + } +} + void ListItemMarkerBox::visit_edges(Cell::Visitor& visitor) { Base::visit_edges(visitor); diff --git a/Libraries/LibWeb/Layout/ListItemMarkerBox.h b/Libraries/LibWeb/Layout/ListItemMarkerBox.h index dcaa29882ef..f7752235540 100644 --- a/Libraries/LibWeb/Layout/ListItemMarkerBox.h +++ b/Libraries/LibWeb/Layout/ListItemMarkerBox.h @@ -27,6 +27,8 @@ public: CSS::ListStyleType const& list_style_type() const { return m_list_style_type; } CSS::ListStylePosition list_style_position() const { return m_list_style_position; } + CSSPixels relative_size() const; + private: virtual void visit_edges(Cell::Visitor&) override; diff --git a/Libraries/LibWeb/Painting/MarkerPaintable.cpp b/Libraries/LibWeb/Painting/MarkerPaintable.cpp index 5eb0680f6ef..4d5bbd55a1b 100644 --- a/Libraries/LibWeb/Painting/MarkerPaintable.cpp +++ b/Libraries/LibWeb/Painting/MarkerPaintable.cpp @@ -40,55 +40,43 @@ void MarkerPaintable::paint(PaintContext& context, PaintPhase phase) const if (phase != PaintPhase::Foreground) return; - CSSPixelRect enclosing = absolute_rect().to_rounded(); - auto device_enclosing = context.enclosing_device_rect(enclosing); - - CSSPixels marker_width = enclosing.height() / 2; + auto marker_rect = absolute_rect().to_rounded(); + auto device_rect = context.enclosing_device_rect(marker_rect); if (auto const* list_style_image = layout_box().list_style_image()) { - CSSPixelRect image_rect { - 0, 0, - list_style_image->natural_width().value_or(marker_width), - list_style_image->natural_height().value_or(marker_width) - }; - image_rect.center_within(enclosing); - - auto device_image_rect = context.enclosing_device_rect(image_rect); - list_style_image->resolve_for_size(layout_box(), image_rect.size()); - list_style_image->paint(context, device_image_rect, computed_values().image_rendering()); + list_style_image->resolve_for_size(layout_box(), marker_rect.size()); + list_style_image->paint(context, device_rect, computed_values().image_rendering()); return; } - CSSPixelRect marker_rect { 0, 0, marker_width, marker_width }; - marker_rect.center_within(enclosing); - auto device_marker_rect = context.enclosing_device_rect(marker_rect); - - float left = device_marker_rect.x().value(); - float right = left + device_marker_rect.width().value(); - float top = device_marker_rect.y().value(); - float bottom = top + device_marker_rect.height().value(); + float left = device_rect.x().value(); + float right = left + device_rect.width().value(); + float top = device_rect.y().value(); + float bottom = top + device_rect.height().value(); auto color = computed_values().color(); if (auto text = layout_box().text(); text.has_value()) { // FIXME: This should use proper text layout logic! // This does not line up with the text in the
  • element which looks very sad :( - context.display_list_recorder().draw_text(device_enclosing.to_type(), *text, layout_box().font(context), Gfx::TextAlignment::Center, color); + context.display_list_recorder().draw_text(device_rect.to_type(), *text, layout_box().font(context), Gfx::TextAlignment::Center, color); } else if (auto const* counter_style = layout_box().list_style_type().get_pointer()) { switch (*counter_style) { case CSS::CounterStyleNameKeyword::Square: - context.display_list_recorder().fill_rect(device_marker_rect.to_type(), color); + context.display_list_recorder().fill_rect(device_rect.to_type(), color); break; case CSS::CounterStyleNameKeyword::Circle: - context.display_list_recorder().draw_ellipse(device_marker_rect.to_type(), color, 1); + context.display_list_recorder().draw_ellipse(device_rect.to_type(), color, 1); break; case CSS::CounterStyleNameKeyword::Disc: - context.display_list_recorder().fill_ellipse(device_marker_rect.to_type(), color); + context.display_list_recorder().fill_ellipse(device_rect.to_type(), color); break; case CSS::CounterStyleNameKeyword::DisclosureClosed: { // https://drafts.csswg.org/css-counter-styles-3/#disclosure-closed - // For the disclosure-open and disclosure-closed counter styles, the marker must be an image or character suitable for indicating the open and closed states of a disclosure widget, such as HTML’s details element. - // FIXME: If the image is directional, it must respond to the writing mode of the element, similar to the bidi-sensitive images feature of the Images 4 module. + // For the disclosure-open and disclosure-closed counter styles, the marker must be an image or character + // suitable for indicating the open and closed states of a disclosure widget, such as HTML’s details element. + // FIXME: If the image is directional, it must respond to the writing mode of the element, similar to the + // bidi-sensitive images feature of the Images 4 module. // Draw an equilateral triangle pointing right. auto path = Gfx::Path(); @@ -101,8 +89,10 @@ void MarkerPaintable::paint(PaintContext& context, PaintPhase phase) const } case CSS::CounterStyleNameKeyword::DisclosureOpen: { // https://drafts.csswg.org/css-counter-styles-3/#disclosure-open - // For the disclosure-open and disclosure-closed counter styles, the marker must be an image or character suitable for indicating the open and closed states of a disclosure widget, such as HTML’s details element. - // FIXME: If the image is directional, it must respond to the writing mode of the element, similar to the bidi-sensitive images feature of the Images 4 module. + // For the disclosure-open and disclosure-closed counter styles, the marker must be an image or character + // suitable for indicating the open and closed states of a disclosure widget, such as HTML’s details element. + // FIXME: If the image is directional, it must respond to the writing mode of the element, similar to the + // bidi-sensitive images feature of the Images 4 module. // Draw an equilateral triangle pointing down. auto path = Gfx::Path(); diff --git a/Tests/LibWeb/Layout/expected/block-and-inline/list-markers-intruded-by-float.txt b/Tests/LibWeb/Layout/expected/block-and-inline/list-markers-intruded-by-float.txt index a0e769f9668..b1cbd82a362 100644 --- a/Tests/LibWeb/Layout/expected/block-and-inline/list-markers-intruded-by-float.txt +++ b/Tests/LibWeb/Layout/expected/block-and-inline/list-markers-intruded-by-float.txt @@ -6,32 +6,32 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
  • at (48,16) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 1, rect: [328,16 9.34375x18] baseline: 13.796875 "a" - ListItemMarkerBox <(anonymous)> at (304,17) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (314,22) content-size 6x6 children: not-inline TextNode <#text> ListItemBox
  • at (48,34) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 1, rect: [328,34 9.34375x18] baseline: 13.796875 "a" - ListItemMarkerBox <(anonymous)> at (304,35) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (314,40) content-size 6x6 children: not-inline TextNode <#text> ListItemBox
  • at (48,52) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 1, rect: [328,52 9.34375x18] baseline: 13.796875 "a" - ListItemMarkerBox <(anonymous)> at (304,53) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (314,58) content-size 6x6 children: not-inline TextNode <#text> ListItemBox
  • at (48,70) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 1, rect: [328,70 9.34375x18] baseline: 13.796875 "a" - ListItemMarkerBox <(anonymous)> at (304,71) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (314,76) content-size 6x6 children: not-inline TextNode <#text> ListItemBox
  • at (48,88) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 1, rect: [328,88 9.34375x18] baseline: 13.796875 "a" - ListItemMarkerBox <(anonymous)> at (304,89) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (314,94) content-size 6x6 children: not-inline TextNode <#text> ListItemBox
  • at (48,106) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 1, rect: [328,106 9.34375x18] baseline: 13.796875 "a" - ListItemMarkerBox <(anonymous)> at (304,107) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (314,112) content-size 6x6 children: not-inline TextNode <#text> ViewportPaintable (Viewport<#document>) [0,0 800x600] @@ -40,22 +40,22 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer
    .box) [8,16 220x120] PaintableWithLines (BlockContainer
      ) [8,16 784x108] PaintableWithLines (ListItemBox
    • ) [48,16 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [304,17 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [314,22 6x6] TextPaintable (TextNode<#text>) PaintableWithLines (ListItemBox
    • ) [48,34 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [304,35 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [314,40 6x6] TextPaintable (TextNode<#text>) PaintableWithLines (ListItemBox
    • ) [48,52 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [304,53 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [314,58 6x6] TextPaintable (TextNode<#text>) PaintableWithLines (ListItemBox
    • ) [48,70 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [304,71 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [314,76 6x6] TextPaintable (TextNode<#text>) PaintableWithLines (ListItemBox
    • ) [48,88 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [304,89 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [314,94 6x6] TextPaintable (TextNode<#text>) PaintableWithLines (ListItemBox
    • ) [48,106 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [304,107 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [314,112 6x6] TextPaintable (TextNode<#text>) SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto) diff --git a/Tests/LibWeb/Layout/expected/css-pseudo-element-display-list-item.txt b/Tests/LibWeb/Layout/expected/css-pseudo-element-display-list-item.txt index 8a1182bb71c..f2666b985ab 100644 --- a/Tests/LibWeb/Layout/expected/css-pseudo-element-display-list-item.txt +++ b/Tests/LibWeb/Layout/expected/css-pseudo-element-display-list-item.txt @@ -9,7 +9,7 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox <(anonymous)> at (24,26) content-size 768x18 children: inline frag 0 from TextNode start: 0, length: 11, rect: [24,26 88.703125x18] baseline: 13.796875 "Filler Text" - ListItemMarkerBox <(anonymous)> at (0,27) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (10,32) content-size 6x6 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (8,44) content-size 784x0 children: inline TextNode <#text> @@ -21,7 +21,7 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer(anonymous)) [8,8 784x18] TextPaintable (TextNode<#text>) PaintableWithLines (ListItemBox(anonymous)) [24,26 768x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [0,27 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [10,32 6x6] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [8,44 784x0] diff --git a/Tests/LibWeb/Layout/expected/details-closed.txt b/Tests/LibWeb/Layout/expected/details-closed.txt index bb7bb9b63a8..365e3f15ce7 100644 --- a/Tests/LibWeb/Layout/expected/details-closed.txt +++ b/Tests/LibWeb/Layout/expected/details-closed.txt @@ -2,10 +2,10 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline BlockContainer at (0,0) content-size 800x34 [BFC] children: not-inline BlockContainer at (8,8) content-size 784x18 children: not-inline BlockContainer
      at (8,8) content-size 784x18 children: not-inline - ListItemBox at (32,8) content-size 760x18 children: inline - frag 0 from TextNode start: 0, length: 13, rect: [32,8 114.625x18] baseline: 13.796875 + ListItemBox at (24,8) content-size 776x18 children: inline + frag 0 from TextNode start: 0, length: 13, rect: [24,8 114.625x18] baseline: 13.796875 "I'm a summary" - ListItemMarkerBox <(anonymous)> at (8,9) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (8,13) content-size 8x8 children: not-inline TextNode <#text> BlockContainer at (8,26) content-size 784x0 children: not-inline BlockContainer <(anonymous)> at (8,26) content-size 784x0 children: inline @@ -13,10 +13,10 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer) [0,0 800x34] - PaintableWithLines (BlockContainer) [8,8 784x18] - PaintableWithLines (BlockContainer
      ) [8,8 784x18] - PaintableWithLines (ListItemBox) [32,8 760x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [8,9 12x16] + PaintableWithLines (BlockContainer) [8,8 784x18] overflow: [8,8 792x18] + PaintableWithLines (BlockContainer
      ) [8,8 784x18] overflow: [8,8 792x18] + PaintableWithLines (ListItemBox) [24,8 776x18] + MarkerPaintable (ListItemMarkerBox(anonymous)) [8,13 8x8] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer) [8,26 784x0] PaintableWithLines (BlockContainer(anonymous)) [8,26 784x0] diff --git a/Tests/LibWeb/Layout/expected/details-open.txt b/Tests/LibWeb/Layout/expected/details-open.txt index 58dcded5432..e85f28a33d9 100644 --- a/Tests/LibWeb/Layout/expected/details-open.txt +++ b/Tests/LibWeb/Layout/expected/details-open.txt @@ -2,10 +2,10 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline BlockContainer at (0,0) content-size 800x52 [BFC] children: not-inline BlockContainer at (8,8) content-size 784x36 children: not-inline BlockContainer
      at (8,8) content-size 784x36 children: not-inline - ListItemBox at (32,8) content-size 760x18 children: inline - frag 0 from TextNode start: 0, length: 13, rect: [32,8 114.625x18] baseline: 13.796875 + ListItemBox at (24,8) content-size 776x18 children: inline + frag 0 from TextNode start: 0, length: 13, rect: [24,8 114.625x18] baseline: 13.796875 "I'm a summary" - ListItemMarkerBox <(anonymous)> at (8,9) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (8,13) content-size 8x8 children: not-inline TextNode <#text> BlockContainer at (8,26) content-size 784x18 children: inline TextNode <#text> @@ -20,10 +20,10 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer) [0,0 800x52] - PaintableWithLines (BlockContainer) [8,8 784x36] - PaintableWithLines (BlockContainer
      ) [8,8 784x36] - PaintableWithLines (ListItemBox) [32,8 760x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [8,9 12x16] + PaintableWithLines (BlockContainer) [8,8 784x36] overflow: [8,8 792x36] + PaintableWithLines (BlockContainer
      ) [8,8 784x36] overflow: [8,8 792x36] + PaintableWithLines (ListItemBox) [24,8 776x18] + MarkerPaintable (ListItemMarkerBox(anonymous)) [8,13 8x8] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer) [8,26 784x18] PaintableWithLines (InlineNode) [8,26 82.3125x18] diff --git a/Tests/LibWeb/Layout/expected/details-summary-default-ua-style.txt b/Tests/LibWeb/Layout/expected/details-summary-default-ua-style.txt index bcb14560292..0ea7fdb0606 100644 --- a/Tests/LibWeb/Layout/expected/details-summary-default-ua-style.txt +++ b/Tests/LibWeb/Layout/expected/details-summary-default-ua-style.txt @@ -2,10 +2,10 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline BlockContainer at (0,0) content-size 800x154 [BFC] children: not-inline BlockContainer at (8,8) content-size 784x138 children: not-inline BlockContainer
      at (68,68) content-size 664x18 children: not-inline - ListItemBox at (92,68) content-size 640x18 children: inline - frag 0 from TextNode start: 0, length: 5, rect: [92,68 36.84375x18] baseline: 13.796875 + ListItemBox at (84,68) content-size 656x18 children: inline + frag 0 from TextNode start: 0, length: 5, rect: [84,68 36.84375x18] baseline: 13.796875 "hello" - ListItemMarkerBox <(anonymous)> at (68,69) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (68,73) content-size 8x8 children: not-inline TextNode <#text> BlockContainer at (68,86) content-size 664x0 children: not-inline @@ -13,8 +13,8 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer) [0,0 800x154] PaintableWithLines (BlockContainer) [8,8 784x138] PaintableWithLines (BlockContainer
      ) [8,8 784x138] - PaintableWithLines (ListItemBox) [92,68 640x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [68,69 12x16] + PaintableWithLines (ListItemBox) [84,68 656x18] + MarkerPaintable (ListItemMarkerBox(anonymous)) [68,73 8x8] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer) [68,86 664x0] diff --git a/Tests/LibWeb/Layout/expected/inside-list-item-content-offset.txt b/Tests/LibWeb/Layout/expected/inside-list-item-content-offset.txt index c892562e50f..4afcc87a649 100644 --- a/Tests/LibWeb/Layout/expected/inside-list-item-content-offset.txt +++ b/Tests/LibWeb/Layout/expected/inside-list-item-content-offset.txt @@ -1,17 +1,17 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline - BlockContainer at (0,0) content-size 800x416 [BFC] children: not-inline - BlockContainer at (8,200) content-size 784x16 children: not-inline - ListItemBox at (232,200) content-size 360x16 children: not-inline - ListItemMarkerBox <(anonymous)> at (208,201) content-size 12x16 children: not-inline + BlockContainer at (0,0) content-size 800x406 [BFC] children: not-inline + BlockContainer at (8,200) content-size 784x6 children: not-inline + ListItemBox at (222,200) content-size 378x6 children: not-inline + ListItemMarkerBox <(anonymous)> at (208,206) content-size 6x6 children: not-inline BlockContainer <(anonymous)> at (8,400) content-size 784x0 children: inline TextNode <#text> ViewportPaintable (Viewport<#document>) [0,0 800x600] - PaintableWithLines (BlockContainer) [0,0 800x416] - PaintableWithLines (BlockContainer) [8,200 784x16] overflow: [8,200 784x17] - PaintableWithLines (ListItemBox) [232,200 360x16] overflow: [232,200 360x17] - MarkerPaintable (ListItemMarkerBox(anonymous)) [208,201 12x16] + PaintableWithLines (BlockContainer) [0,0 800x406] + PaintableWithLines (BlockContainer) [8,200 784x6] overflow: [8,200 784x12] + PaintableWithLines (ListItemBox) [222,200 378x6] overflow: [222,200 378x12] + MarkerPaintable (ListItemMarkerBox(anonymous)) [208,206 6x6] PaintableWithLines (BlockContainer(anonymous)) [8,400 784x0] SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto) - SC for BlockContainer [0,0 800x416] [children: 0] (z-index: auto) + SC for BlockContainer [0,0 800x406] [children: 0] (z-index: auto) diff --git a/Tests/LibWeb/Layout/expected/list-item-marker-pseudo-placement.txt b/Tests/LibWeb/Layout/expected/list-item-marker-pseudo-placement.txt index 83df5dc682f..c28fbbe8537 100644 --- a/Tests/LibWeb/Layout/expected/list-item-marker-pseudo-placement.txt +++ b/Tests/LibWeb/Layout/expected/list-item-marker-pseudo-placement.txt @@ -2,7 +2,7 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline BlockContainer at (0,0) content-size 800x52 [BFC] children: not-inline BlockContainer at (8,8) content-size 784x36 children: not-inline ListItemBox at (8,8) content-size 784x36 children: not-inline - ListItemMarkerBox <(anonymous)> at (-16,9) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (-6,14) content-size 6x6 children: not-inline BlockContainer <(anonymous)> at (8,8) content-size 784x18 children: inline InlineNode <(anonymous)> frag 0 from TextNode start: 0, length: 6, rect: [8,8 52.53125x18] baseline: 13.796875 @@ -21,7 +21,7 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer) [0,0 800x52] PaintableWithLines (BlockContainer) [8,8 784x36] PaintableWithLines (ListItemBox) [8,8 784x36] - MarkerPaintable (ListItemMarkerBox(anonymous)) [-16,9 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [-6,14 6x6] PaintableWithLines (BlockContainer(anonymous)) [8,8 784x18] PaintableWithLines (InlineNode(anonymous)) [8,8 52.53125x18] TextPaintable (TextNode<#text>) diff --git a/Tests/LibWeb/Layout/expected/list-render-list-owner-is-document.txt b/Tests/LibWeb/Layout/expected/list-render-list-owner-is-document.txt index 3b41e095db5..d050222e859 100644 --- a/Tests/LibWeb/Layout/expected/list-render-list-owner-is-document.txt +++ b/Tests/LibWeb/Layout/expected/list-render-list-owner-is-document.txt @@ -8,14 +8,14 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
    • at (8,8) content-size 784x18 children: inline frag 0 from TextNode start: 0, length: 3, rect: [8,8 29.8125x18] baseline: 13.796875 "One" - ListItemMarkerBox <(anonymous)> at (-10.6875,9) content-size 18.6875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (-11,9) content-size 18.6875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (8,26) content-size 784x0 children: inline TextNode <#text> ListItemBox
    • at (8,26) content-size 784x18 children: inline frag 0 from TextNode start: 0, length: 3, rect: [8,26 33.875x18] baseline: 13.796875 "Two" - ListItemMarkerBox <(anonymous)> at (-13.15625,27) content-size 21.15625x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (-13,27) content-size 21.15625x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (8,44) content-size 784x0 children: inline TextNode <#text> @@ -26,11 +26,11 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer) [8,8 784x36] PaintableWithLines (BlockContainer(anonymous)) [8,8 784x0] PaintableWithLines (ListItemBox
    • ) [8,8 784x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [-10.6875,9 18.6875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [-11,9 18.6875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [8,26 784x0] PaintableWithLines (ListItemBox
    • ) [8,26 784x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [-13.15625,27 21.15625x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [-13,27 21.15625x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [8,44 784x0] diff --git a/Tests/LibWeb/Layout/expected/list-render-list-owner-not-ol.txt b/Tests/LibWeb/Layout/expected/list-render-list-owner-not-ol.txt index 522dc14b7be..abb2c7e014b 100644 --- a/Tests/LibWeb/Layout/expected/list-render-list-owner-not-ol.txt +++ b/Tests/LibWeb/Layout/expected/list-render-list-owner-not-ol.txt @@ -9,14 +9,14 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
    • at (8,8) content-size 784x18 children: inline frag 0 from TextNode start: 0, length: 3, rect: [8,8 29.8125x18] baseline: 13.796875 "One" - ListItemMarkerBox <(anonymous)> at (-10.6875,9) content-size 18.6875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (-11,9) content-size 18.6875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (8,26) content-size 784x0 children: inline TextNode <#text> ListItemBox
    • at (8,26) content-size 784x18 children: inline frag 0 from TextNode start: 0, length: 3, rect: [8,26 33.875x18] baseline: 13.796875 "Two" - ListItemMarkerBox <(anonymous)> at (-13.15625,27) content-size 21.15625x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (-13,27) content-size 21.15625x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (8,44) content-size 784x0 children: inline TextNode <#text> @@ -30,11 +30,11 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer
      #list-item-owner) [8,8 784x36] PaintableWithLines (BlockContainer(anonymous)) [8,8 784x0] PaintableWithLines (ListItemBox
    • ) [8,8 784x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [-10.6875,9 18.6875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [-11,9 18.6875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [8,26 784x0] PaintableWithLines (ListItemBox
    • ) [8,26 784x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [-13.15625,27 21.15625x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [-13,27 21.15625x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [8,44 784x0] PaintableWithLines (BlockContainer(anonymous)) [8,44 784x0] diff --git a/Tests/LibWeb/Layout/expected/list-render-no-list.txt b/Tests/LibWeb/Layout/expected/list-render-no-list.txt index 09f405d55a3..feb7ea2cfd9 100644 --- a/Tests/LibWeb/Layout/expected/list-render-no-list.txt +++ b/Tests/LibWeb/Layout/expected/list-render-no-list.txt @@ -6,12 +6,12 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
    • at (8,8) content-size 784x18 children: inline frag 0 from TextNode start: 0, length: 3, rect: [8,8 29.8125x18] baseline: 13.796875 "One" - ListItemMarkerBox <(anonymous)> at (-16,9) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (-6,14) content-size 6x6 children: not-inline TextNode <#text> ListItemBox
    • at (8,26) content-size 784x18 children: inline frag 0 from TextNode start: 0, length: 3, rect: [8,26 33.875x18] baseline: 13.796875 "Two" - ListItemMarkerBox <(anonymous)> at (-16,27) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (-6,32) content-size 6x6 children: not-inline TextNode <#text> ViewportPaintable (Viewport<#document>) [0,0 800x600] @@ -19,10 +19,10 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer) [8,8 784x36] PaintableWithLines (BlockContainer(anonymous)) [8,8 784x0] PaintableWithLines (ListItemBox
    • ) [8,8 784x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [-16,9 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [-6,14 6x6] TextPaintable (TextNode<#text>) PaintableWithLines (ListItemBox
    • ) [8,26 784x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [-16,27 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [-6,32 6x6] TextPaintable (TextNode<#text>) SC for Viewport<#document> [0,0 800x600] [children: 1] (z-index: auto) diff --git a/Tests/LibWeb/Layout/expected/ol-render-deep-hybrid-list-item-list.txt b/Tests/LibWeb/Layout/expected/ol-render-deep-hybrid-list-item-list.txt index 64034a0fd9e..6f5c2815f38 100644 --- a/Tests/LibWeb/Layout/expected/ol-render-deep-hybrid-list-item-list.txt +++ b/Tests/LibWeb/Layout/expected/ol-render-deep-hybrid-list-item-list.txt @@ -7,14 +7,14 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
    • at (48,16) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 3, rect: [48,16 29.8125x18] baseline: 13.796875 "One" - ListItemMarkerBox <(anonymous)> at (29.3125,17) content-size 18.6875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (29,17) content-size 18.6875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,34) content-size 744x0 children: inline TextNode <#text> ListItemBox
    • at (48,34) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 10, rect: [48,34 90.796875x18] baseline: 13.796875 "Twenty-two" - ListItemMarkerBox <(anonymous)> at (18.03125,35) content-size 29.96875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,35) content-size 29.96875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,52) content-size 744x0 children: inline TextNode <#text> @@ -42,7 +42,7 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
      at (48,124) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 12, rect: [48,124 104.78125x18] baseline: 13.796875 "Twenty-three" - ListItemMarkerBox <(anonymous)> at (17.75,125) content-size 30.25x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,125) content-size 30.25x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,142) content-size 744x0 children: inline TextNode <#text> @@ -70,7 +70,7 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
    • at (48,226) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 11, rect: [48,226 97.75x18] baseline: 13.796875 "Twenty-four" - ListItemMarkerBox <(anonymous)> at (19.09375,227) content-size 28.90625x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (19,227) content-size 28.90625x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,244) content-size 744x0 children: inline TextNode <#text> @@ -87,7 +87,7 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox

      at (48,296) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 11, rect: [48,296 90.28125x18] baseline: 13.796875 "Twenty-five" - ListItemMarkerBox <(anonymous)> at (18.390625,297) content-size 29.609375x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,297) content-size 29.609375x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,330) content-size 744x0 children: inline TextNode <#text> @@ -96,21 +96,21 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox

    • at (48,330) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 10, rect: [48,330 85.96875x18] baseline: 13.796875 "Twenty-six" - ListItemMarkerBox <(anonymous)> at (18.109375,331) content-size 29.890625x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,331) content-size 29.890625x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,348) content-size 744x0 children: inline TextNode <#text> ListItemBox at (48,348) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 12, rect: [48,348 106.953125x18] baseline: 13.796875 "Twenty-seven" - ListItemMarkerBox <(anonymous)> at (18.125,349) content-size 29.875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,349) content-size 29.875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,366) content-size 744x0 children: inline TextNode <#text> ListItemBox
    • at (48,366) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 12, rect: [48,366 99.359375x18] baseline: 13.796875 "Twenty-eight" - ListItemMarkerBox <(anonymous)> at (17.359375,367) content-size 30.640625x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (17,367) content-size 30.640625x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,384) content-size 744x0 children: inline TextNode <#text> @@ -123,11 +123,11 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer
        ) [8,16 784x368] PaintableWithLines (BlockContainer(anonymous)) [48,16 744x0] PaintableWithLines (ListItemBox
      1. ) [48,16 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [29.3125,17 18.6875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [29,17 18.6875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,34 744x0] PaintableWithLines (ListItemBox
      2. ) [48,34 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [18.03125,35 29.96875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,35 29.96875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,52 744x0] PaintableWithLines (BlockContainer
        ) [48,52 744x18] @@ -143,7 +143,7 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer(anonymous)) [48,106 744x18] TextPaintable (TextNode<#text>) PaintableWithLines (ListItemBox
        ) [48,124 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [17.75,125 30.25x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,125 30.25x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,142 744x0] PaintableWithLines (BlockContainer(anonymous)) [48,142 744x0] @@ -158,7 +158,7 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (InlineNode) [70.65625,192 12.609375x18] TextPaintable (TextNode<#text>) PaintableWithLines (ListItemBox
      3. ) [48,226 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [19.09375,227 28.90625x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [19,227 28.90625x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,244 744x0] PaintableWithLines (BlockContainer
        ) [48,244 744x70] @@ -168,20 +168,20 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer(anonymous)) [48,262 744x18] TextPaintable (TextNode<#text>) PaintableWithLines (ListItemBox

        ) [48,296 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [18.390625,297 29.609375x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,297 29.609375x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,330 744x0] PaintableWithLines (BlockContainer(anonymous)) [48,330 744x0] PaintableWithLines (ListItemBox

      4. ) [48,330 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [18.109375,331 29.890625x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,331 29.890625x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,348 744x0] PaintableWithLines (ListItemBox) [48,348 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [18.125,349 29.875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,349 29.875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,366 744x0] PaintableWithLines (ListItemBox
      5. ) [48,366 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [17.359375,367 30.640625x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [17,367 30.640625x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,384 744x0] PaintableWithLines (BlockContainer(anonymous)) [8,400 784x0] diff --git a/Tests/LibWeb/Layout/expected/ol-render-item-values.txt b/Tests/LibWeb/Layout/expected/ol-render-item-values.txt index c052e3b4d82..40155204cc8 100644 --- a/Tests/LibWeb/Layout/expected/ol-render-item-values.txt +++ b/Tests/LibWeb/Layout/expected/ol-render-item-values.txt @@ -9,14 +9,14 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
      6. at (48,16) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 5, rect: [48,16 47.21875x18] baseline: 13.796875 "Seven" - ListItemMarkerBox <(anonymous)> at (26.9375,17) content-size 21.0625x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (27,17) content-size 21.0625x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,34) content-size 744x0 children: inline TextNode <#text> ListItemBox
      7. at (48,34) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 28, rect: [48,34 242.4375x18] baseline: 13.796875 "Minus one hundred and twelve" - ListItemMarkerBox <(anonymous)> at (7.671875,35) content-size 40.328125x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (8,35) content-size 40.328125x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,52) content-size 744x0 children: inline TextNode <#text> @@ -24,14 +24,14 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
      8. at (48,52) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 23, rect: [48,52 206.5x18] baseline: 13.796875 "Two to the power of ten" - ListItemMarkerBox <(anonymous)> at (3.15625,53) content-size 44.84375x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (3,53) content-size 44.84375x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,70) content-size 744x0 children: inline TextNode <#text> ListItemBox
      9. at (48,70) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 6, rect: [48,70 51.34375x18] baseline: 13.796875 "Eleven" - ListItemMarkerBox <(anonymous)> at (22.96875,71) content-size 25.03125x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (23,71) content-size 25.03125x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,88) content-size 744x0 children: inline TextNode <#text> @@ -45,19 +45,19 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer
          ) [8,16 784x72] PaintableWithLines (BlockContainer(anonymous)) [48,16 744x0] PaintableWithLines (ListItemBox
        1. ) [48,16 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [26.9375,17 21.0625x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [27,17 21.0625x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,34 744x0] PaintableWithLines (ListItemBox
        2. ) [48,34 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [7.671875,35 40.328125x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [8,35 40.328125x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,52 744x0] PaintableWithLines (ListItemBox
        3. ) [48,52 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [3.15625,53 44.84375x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [3,53 44.84375x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,70 744x0] PaintableWithLines (ListItemBox
        4. ) [48,70 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [22.96875,71 25.03125x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [23,71 25.03125x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,88 744x0] PaintableWithLines (BlockContainer(anonymous)) [8,104 784x0] diff --git a/Tests/LibWeb/Layout/expected/ol-render-style-list-item.txt b/Tests/LibWeb/Layout/expected/ol-render-style-list-item.txt index 418bea2a7bd..1d423c1597c 100644 --- a/Tests/LibWeb/Layout/expected/ol-render-style-list-item.txt +++ b/Tests/LibWeb/Layout/expected/ol-render-style-list-item.txt @@ -7,56 +7,56 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
        5. at (48,16) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 3, rect: [48,16 29.8125x18] baseline: 13.796875 "One" - ListItemMarkerBox <(anonymous)> at (29.3125,17) content-size 18.6875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (29,17) content-size 18.6875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,34) content-size 744x0 children: inline TextNode <#text> ListItemBox
        6. at (48,34) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 10, rect: [48,34 90.796875x18] baseline: 13.796875 "Twenty-two" - ListItemMarkerBox <(anonymous)> at (18.03125,35) content-size 29.96875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,35) content-size 29.96875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,52) content-size 744x0 children: inline TextNode <#text> ListItemBox
          at (48,52) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 12, rect: [48,52 104.78125x18] baseline: 13.796875 "Twenty-three" - ListItemMarkerBox <(anonymous)> at (17.75,53) content-size 30.25x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,53) content-size 30.25x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,70) content-size 744x0 children: inline TextNode <#text> ListItemBox
        7. at (48,70) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 11, rect: [48,70 97.75x18] baseline: 13.796875 "Twenty-four" - ListItemMarkerBox <(anonymous)> at (19.09375,71) content-size 28.90625x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (19,71) content-size 28.90625x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,88) content-size 744x0 children: inline TextNode <#text> ListItemBox

          at (48,104) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 11, rect: [48,104 90.28125x18] baseline: 13.796875 "Twenty-five" - ListItemMarkerBox <(anonymous)> at (18.390625,105) content-size 29.609375x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,105) content-size 29.609375x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,138) content-size 744x0 children: inline TextNode <#text> ListItemBox

        8. at (48,138) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 10, rect: [48,138 85.96875x18] baseline: 13.796875 "Twenty-six" - ListItemMarkerBox <(anonymous)> at (18.109375,139) content-size 29.890625x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,139) content-size 29.890625x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,156) content-size 744x0 children: inline TextNode <#text> ListItemBox at (48,156) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 12, rect: [48,156 106.953125x18] baseline: 13.796875 "Twenty-seven" - ListItemMarkerBox <(anonymous)> at (18.125,157) content-size 29.875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,157) content-size 29.875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,174) content-size 744x0 children: inline TextNode <#text> ListItemBox
        9. at (48,174) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 12, rect: [48,174 99.359375x18] baseline: 13.796875 "Twenty-eight" - ListItemMarkerBox <(anonymous)> at (17.359375,175) content-size 30.640625x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (17,175) content-size 30.640625x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,192) content-size 744x0 children: inline TextNode <#text> @@ -69,35 +69,35 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer
            ) [8,16 784x176] PaintableWithLines (BlockContainer(anonymous)) [48,16 744x0] PaintableWithLines (ListItemBox
          1. ) [48,16 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [29.3125,17 18.6875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [29,17 18.6875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,34 744x0] PaintableWithLines (ListItemBox
          2. ) [48,34 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [18.03125,35 29.96875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,35 29.96875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,52 744x0] PaintableWithLines (ListItemBox
            ) [48,52 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [17.75,53 30.25x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,53 30.25x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,70 744x0] PaintableWithLines (ListItemBox
          3. ) [48,70 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [19.09375,71 28.90625x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [19,71 28.90625x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,88 744x0] PaintableWithLines (ListItemBox

            ) [48,104 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [18.390625,105 29.609375x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,105 29.609375x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,138 744x0] PaintableWithLines (ListItemBox

          4. ) [48,138 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [18.109375,139 29.890625x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,139 29.890625x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,156 744x0] PaintableWithLines (ListItemBox) [48,156 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [18.125,157 29.875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,157 29.875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,174 744x0] PaintableWithLines (ListItemBox
          5. ) [48,174 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [17.359375,175 30.640625x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [17,175 30.640625x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,192 744x0] PaintableWithLines (BlockContainer(anonymous)) [8,208 784x0] diff --git a/Tests/LibWeb/Layout/expected/ordered-list.txt b/Tests/LibWeb/Layout/expected/ordered-list.txt index cc7b3df3693..0026bbfc06e 100644 --- a/Tests/LibWeb/Layout/expected/ordered-list.txt +++ b/Tests/LibWeb/Layout/expected/ordered-list.txt @@ -7,21 +7,21 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
          6. at (48,16) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 7, rect: [48,16 58.78125x18] baseline: 13.796875 "Item 20" - ListItemMarkerBox <(anonymous)> at (17.25,17) content-size 30.75x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (17,17) content-size 30.75x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,34) content-size 744x0 children: inline TextNode <#text> ListItemBox
          7. at (48,34) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 7, rect: [48,34 55.53125x18] baseline: 13.796875 "Item 21" - ListItemMarkerBox <(anonymous)> at (20.5,35) content-size 27.5x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (20,35) content-size 27.5x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,52) content-size 744x0 children: inline TextNode <#text> ListItemBox
          8. at (48,52) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 7, rect: [48,52 58x18] baseline: 13.796875 "Item 22" - ListItemMarkerBox <(anonymous)> at (18.03125,53) content-size 29.96875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (18,53) content-size 29.96875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,70) content-size 744x0 children: inline TextNode <#text> @@ -33,28 +33,28 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
          9. at (48,86) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 6, rect: [48,86 46.71875x18] baseline: 13.796875 "Item 1" - ListItemMarkerBox <(anonymous)> at (29.3125,87) content-size 18.6875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (29,87) content-size 18.6875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,104) content-size 744x0 children: inline TextNode <#text> ListItemBox
          10. at (48,104) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 6, rect: [48,104 48.828125x18] baseline: 13.796875 "Item 5" - ListItemMarkerBox <(anonymous)> at (27.203125,105) content-size 20.796875x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (27,105) content-size 20.796875x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,122) content-size 744x0 children: inline TextNode <#text> ListItemBox
          11. at (48,122) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 6, rect: [48,122 49.109375x18] baseline: 13.796875 "Item 6" - ListItemMarkerBox <(anonymous)> at (26.921875,123) content-size 21.078125x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (27,123) content-size 21.078125x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,140) content-size 744x0 children: inline TextNode <#text> ListItemBox
          12. at (48,140) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 6, rect: [48,140 49.09375x18] baseline: 13.796875 "Item 7" - ListItemMarkerBox <(anonymous)> at (26.9375,141) content-size 21.0625x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (27,141) content-size 21.0625x16 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,158) content-size 744x0 children: inline TextNode <#text> @@ -67,34 +67,34 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer
              ) [8,16 784x54] PaintableWithLines (BlockContainer(anonymous)) [48,16 744x0] PaintableWithLines (ListItemBox
            1. ) [48,16 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [17.25,17 30.75x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [17,17 30.75x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,34 744x0] PaintableWithLines (ListItemBox
            2. ) [48,34 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [20.5,35 27.5x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [20,35 27.5x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,52 744x0] PaintableWithLines (ListItemBox
            3. ) [48,52 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [18.03125,53 29.96875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [18,53 29.96875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,70 744x0] PaintableWithLines (BlockContainer(anonymous)) [8,86 784x0] PaintableWithLines (BlockContainer
                ) [8,86 784x72] PaintableWithLines (BlockContainer(anonymous)) [48,86 744x0] PaintableWithLines (ListItemBox
              1. ) [48,86 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [29.3125,87 18.6875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [29,87 18.6875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,104 744x0] PaintableWithLines (ListItemBox
              2. ) [48,104 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [27.203125,105 20.796875x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [27,105 20.796875x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,122 744x0] PaintableWithLines (ListItemBox
              3. ) [48,122 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [26.921875,123 21.078125x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [27,123 21.078125x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,140 744x0] PaintableWithLines (ListItemBox
              4. ) [48,140 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [26.9375,141 21.0625x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [27,141 21.0625x16] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,158 744x0] PaintableWithLines (BlockContainer(anonymous)) [8,174 784x0] diff --git a/Tests/LibWeb/Layout/expected/ul-render.txt b/Tests/LibWeb/Layout/expected/ul-render.txt index 80b315556f8..829d74b3330 100644 --- a/Tests/LibWeb/Layout/expected/ul-render.txt +++ b/Tests/LibWeb/Layout/expected/ul-render.txt @@ -11,14 +11,14 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
              5. at (48,16) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 5, rect: [48,16 47.859375x18] baseline: 13.796875 "Three" - ListItemMarkerBox <(anonymous)> at (24,17) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (34,22) content-size 6x6 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,34) content-size 744x0 children: inline TextNode <#text> ListItemBox
              6. at (48,34) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 4, rect: [48,34 41.5x18] baseline: 13.796875 "Four" - ListItemMarkerBox <(anonymous)> at (24,35) content-size 12x16 children: not-inline + ListItemMarkerBox <(anonymous)> at (34,40) content-size 6x6 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,52) content-size 744x0 children: inline TextNode <#text> @@ -30,14 +30,14 @@ Viewport <#document> at (0,0) content-size 800x600 children: not-inline ListItemBox
              7. at (48,68) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 3, rect: [48,68 29.8125x18] baseline: 13.796875 "One" - ListItemMarkerBox <(anonymous)> at (40,69) content-size 4x8 children: not-inline + ListItemMarkerBox <(anonymous)> at (41,71) content-size 3x3 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,86) content-size 744x0 children: inline TextNode <#text> ListItemBox
              8. at (48,86) content-size 744x18 children: inline frag 0 from TextNode start: 0, length: 3, rect: [48,86 33.875x18] baseline: 13.796875 "Two" - ListItemMarkerBox <(anonymous)> at (40,87) content-size 4x8 children: not-inline + ListItemMarkerBox <(anonymous)> at (41,89) content-size 3x3 children: not-inline TextNode <#text> BlockContainer <(anonymous)> at (48,104) content-size 744x0 children: inline TextNode <#text> @@ -52,22 +52,22 @@ ViewportPaintable (Viewport<#document>) [0,0 800x600] PaintableWithLines (BlockContainer
                  .A) [8,16 784x36] PaintableWithLines (BlockContainer(anonymous)) [48,16 744x0] PaintableWithLines (ListItemBox
                • ) [48,16 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [24,17 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [34,22 6x6] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,34 744x0] PaintableWithLines (ListItemBox
                • ) [48,34 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [24,35 12x16] + MarkerPaintable (ListItemMarkerBox(anonymous)) [34,40 6x6] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,52 744x0] PaintableWithLines (BlockContainer(anonymous)) [8,68 784x0] PaintableWithLines (BlockContainer
                    .B) [8,68 784x36] PaintableWithLines (BlockContainer(anonymous)) [48,68 744x0] PaintableWithLines (ListItemBox
                  • ) [48,68 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [40,69 4x8] + MarkerPaintable (ListItemMarkerBox(anonymous)) [41,71 3x3] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,86 744x0] PaintableWithLines (ListItemBox
                  • ) [48,86 744x18] - MarkerPaintable (ListItemMarkerBox(anonymous)) [40,87 4x8] + MarkerPaintable (ListItemMarkerBox(anonymous)) [41,89 3x3] TextPaintable (TextNode<#text>) PaintableWithLines (BlockContainer(anonymous)) [48,104 744x0] PaintableWithLines (BlockContainer(anonymous)) [8,120 784x0] diff --git a/Tests/LibWeb/Screenshot/images/details-open-then-closed.png b/Tests/LibWeb/Screenshot/images/details-open-then-closed.png index e09e94f424d50e4886860ebd3a9918d9b3bd89b9..552aa6be803286149c961060979d94dd36f579ca 100644 GIT binary patch delta 1080 zcmX>oa8O`^Zhd^l+^@37Kb~*>vd(LTK6)(ubf{z@3|-Ab&=%^EKE#{jSUVC^$H3C0vsGHEJn{a ze!c6*&$M&e?axtP*VxpreQBKh|L|@;AIr}=KOA{refe@435d zD}4R^6Y-J$v47&uu1eB<}3bf3IC_w?;~O-ippu ztA3qb_p9Q^<(J0_W$%3Y^z6;LS@l)ldZnsU7rpw_xXSxl(@zzrdzFni@c`5$#$&g=>y&u`au zzP?^>pC8HdtX$z_SDXLKV}BN|TD9$I_21o-YOTZ0oxM9-<>bGcvhAN7La&B|M(=uk zKGGy^tKNRAYWGjuf6HY_`ENV7r(#3f=4D@}y{nE}Rb^TqX`N{p5z%-i$7Y`S>#s|` zJ3M=Nq#r^De{F>O_`i*AK5<)|5XYI3^$Fq0pLG57qr){ftPnuio{@!oj zj+KkozxtLlS1NwWyj550y_aW)hh6`+ZP~|%IcvSUCncLs$(djI)nVV8bz>& zLPM_}mRx%<<;h!_{YF=(i-zWImVdu$m3O^W)st&m{IAHKyemB^K74EK-c{P$uj(7! zv$!{zJ=?(3pZCeBP#^cQ2(D+P3gLI3-JNhaH1z9*RjW3pe2Pe$zlL8Y|L)#;{ga1z z+y6iQ(WpMzxb*%R(PPb_+Vvr&Cihp(mCTZn_o#lZKe^;;^~u&%tE{eXdeXEsA&$Lh z>bbwh{CZaMD^_h?{c3$>V%fU?Z7H8m&fa&s;KweN$huvA+Ll+*luWPXBNA7y7V&t@B524eJ={V zdLh`|ZJxcYx$&=a>}MZ$c8h2KiswE5!hfArs%pf8#y|GG5ge1_*|aAcu*OWD&+0L` zmnC{KAFJSG2R7l!2iOHC8?XvfAm=V&ci)cjwN{U(>G$qa3=9kmp00i_>zopr0CiO? A0ssI2 delta 1072 zcmX>oa8O`^ZhdUV-LJC8Kb}AOA~wJ1;zaF*0ZV!Us}y$e{#|7@ydBu~rN!|gn3xzFW8OX7 z`gWcgi_z@apR!7I?5%HqTeSg{J)-w+tN3$j_G5j$s7s$d{{L|!eoM+z z`TZu$&)gNVtU~CS8ncj^Tj^z=BKHpp}ccW ze41!AfBseG$ouiPi{4CLdR~I7*m%N|+vodY6({Tu4ZZq!rx~xem`e1rZ~yN8n|x=l zmTdiG_O|tT7S}eWhL&G_B(q{$OnB(ooo3wA)hd&p{rd9xy1C7)nyBWRThvd!vnu|2 zEB=|UbK*L-NjkgVeBEhRzkby!-Jh=C`%=ztdm3C_uHw0={L_KPJHer*VOOVotFq>9 zTYc>b|MGm_dwW0clYD*gSf};(u=+65xa)PlyF=?e!|MB`xISx7=ydLX)?20f^3L>? z_t%E$)xCUh*Yow0#?9Vhax;Gj{BkV2y7Gz3)$hgI{_@v@zSGARDSJUf+McZ_S#uzQ)(sH}BNb@#qVQ-&FeOp6$r^Wr>{$j+H}@q#^S~^pN!w{l3BBA)$gznUe(3!MnBJ2oxgN!Zgu^nJN9qC z^!L51R7W<+Y!)9HWSpMima!PC{xWt~$(69869G1344 diff --git a/Tests/LibWeb/Screenshot/images/ordered-list-ref.png b/Tests/LibWeb/Screenshot/images/ordered-list-ref.png index 401e2bdfe2056eeee166f97c12e7218a1ffb1b6c..af2f674e6d8d85d32edfed8e9ac2f49901446ccf 100644 GIT binary patch literal 4164 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 literal 4175 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

                    QwZX^oPMo<{S?-s4|2dDQ z4st`dakcUU{q4DL_uq-1!k<_7_I+P}5cAL5r{$l$lvYam@?QVvw`bpyZ(f%Zy#71d z=@d`ObJLGG`(*FGm?boM*84klf*aL$KVBy)`%#$PqqFhL7S}cB?^QfLZT~lV&y5c& zK~3jp`Hzlt{?F<6pR2&iX7u`&;6}~=7tM-uT)vppNWGDe->6@H+*VoX(FEZo2OR9| z3@y#l^=4oF8L$1Q_gMaKKDRH=Ps-QUpUmF;cn3&@QGT!P^STdjU*!HWktkF!Hs;@c zOj6xrV&fgz`V%&je@@@=xT1)4Pq?H|6 z{`1+_*VDEiTQ94S%J!)s=k&XdjvKd178?|M)lB>D;&S9T-vlG(%EVvUl{qKZ3jcq+ z|Ge2!#RUKb+apMvYbJ9%q#V_kkcfLVt7n^gn zgQ}Tp9UX$|($HGZwphJ%-Tm7okY*}lBXTB+IotRpw{rg_HdVGy*GxBVI|X9+{jR+j zo7gPG{PJ}~fb{PtAEc*9c)Z>9zJ6kNI4`)g?C88d$0X}0xEOuuK0oUF`;9d>c)NI1 zj5lk`oohVG?Pr>=FyTy%mRNeN6OS2){patRb!QfD^)?5UcpwbUy$uczUhzEXj=yJJ zo8yaYfSleu6LVvo&CRyleT?09>I}ve|GyX_apsA@{u>n>tt?JJ~-lQ_=_7<{^)df zba>9>KPLVB_*+3iLH4<_OW8j?eQcce??JnNs@(n`URCG6r=6SidGfB!i@!KHD8LF} zcsCNc0|NCfh7fXWKs90tK{X?HNil?=nvoqrj1W>(z>LQb0@W&LW?=}yG$XkSLkQVz h_?s3m=Ys5yJog