mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-07-29 04:09:13 +00:00
LibWeb: Do not normalize border radii containing their initial values
Most computed border-radii contain their initial values, and since the normalized initial border radii are always zero, there is no need to do expensive floating point math to normalize them.
This commit is contained in:
parent
9b446df7f5
commit
acaf01bf7b
Notes:
github-actions[bot]
2024-12-04 08:31:15 +00:00
Author: https://github.com/yyny
Commit: acaf01bf7b
Pull-request: https://github.com/LadybirdBrowser/ladybird/pull/2663
Reviewed-by: https://github.com/AtkinsSJ ✅
2 changed files with 34 additions and 12 deletions
|
@ -1106,15 +1106,19 @@ void PaintableBox::resolve_paint_properties()
|
|||
auto const& layout_node = this->layout_node();
|
||||
|
||||
// Border radii
|
||||
CSSPixelRect const border_rect { 0, 0, border_box_width(), border_box_height() };
|
||||
auto const& border_top_left_radius = computed_values.border_top_left_radius();
|
||||
auto const& border_top_right_radius = computed_values.border_top_right_radius();
|
||||
auto const& border_bottom_right_radius = computed_values.border_bottom_right_radius();
|
||||
auto const& border_bottom_left_radius = computed_values.border_bottom_left_radius();
|
||||
BorderRadiiData radii_data {};
|
||||
if (computed_values.has_noninitial_border_radii()) {
|
||||
CSSPixelRect const border_rect { 0, 0, border_box_width(), border_box_height() };
|
||||
|
||||
auto radii_data = normalize_border_radii_data(layout_node, border_rect, border_top_left_radius,
|
||||
border_top_right_radius, border_bottom_right_radius,
|
||||
border_bottom_left_radius);
|
||||
auto const& border_top_left_radius = computed_values.border_top_left_radius();
|
||||
auto const& border_top_right_radius = computed_values.border_top_right_radius();
|
||||
auto const& border_bottom_right_radius = computed_values.border_bottom_right_radius();
|
||||
auto const& border_bottom_left_radius = computed_values.border_bottom_left_radius();
|
||||
|
||||
radii_data = normalize_border_radii_data(layout_node, border_rect, border_top_left_radius,
|
||||
border_top_right_radius, border_bottom_right_radius,
|
||||
border_bottom_left_radius);
|
||||
}
|
||||
set_border_radii_data(radii_data);
|
||||
|
||||
// Box shadows
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue