mirror of
https://github.com/RGBCube/serenity
synced 2025-07-08 17:47:35 +00:00
LibHTML: Draw box borders even if we don't have a border-color
In those cases we should fall back to currentColor, which is hackishly implemented by falling back to "color" for now.
This commit is contained in:
parent
ee2cafc15c
commit
71f249fd2c
1 changed files with 15 additions and 2 deletions
|
@ -46,9 +46,22 @@ void LayoutBox::render(RenderingContext& context)
|
|||
auto border_width_value = style().property(CSS::PropertyID::BorderTopWidth);
|
||||
auto border_color_value = style().property(CSS::PropertyID::BorderTopColor);
|
||||
auto border_style_value = style().property(CSS::PropertyID::BorderTopStyle);
|
||||
if (border_width_value.has_value() && border_color_value.has_value()) {
|
||||
|
||||
if (border_width_value.has_value()) {
|
||||
int border_width = border_width_value.value()->to_length().to_px();
|
||||
Color border_color = border_color_value.value()->to_color(document());
|
||||
|
||||
Color border_color;
|
||||
if (border_color_value.has_value())
|
||||
border_color = border_color_value.value()->to_color(document());
|
||||
else {
|
||||
// FIXME: This is basically CSS "currentColor" which should be handled elsewhere
|
||||
// in a much more reusable way.
|
||||
auto color_value = style().property(CSS::PropertyID::Color);
|
||||
if (color_value.has_value())
|
||||
border_color = color_value.value()->to_color(document());
|
||||
else
|
||||
border_color = Color::Black;
|
||||
}
|
||||
|
||||
if (border_style_value.has_value() && border_style_value.value()->to_string() == "inset") {
|
||||
// border-style: inset
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue