1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 18:57:45 +00:00

LibWeb: Make ColorStyleValue serialization spec compliant

[CSS Color 4] tells us to use either rgb() or rgba() notation, depending
on the color's alpha value.
This commit is contained in:
Andreas Kling 2021-10-03 17:56:01 +02:00
parent 0d73487204
commit 956968d4b2
2 changed files with 10 additions and 1 deletions

View file

@ -387,4 +387,13 @@ void ImageStyleValue::resource_did_load()
if (m_document && m_document->browsing_context())
m_document->browsing_context()->set_needs_display({});
}
// https://www.w3.org/TR/css-color-4/#serializing-sRGB-values
String ColorStyleValue::to_string() const
{
if (m_color.alpha() == 1)
return String::formatted("rgb({}, {}, {})", m_color.red(), m_color.green(), m_color.blue());
return String::formatted("rgba({}, {}, {}, {})", m_color.red(), m_color.green(), m_color.blue(), (float)(m_color.alpha()) / 255.0f);
}
}