mirror of
https://github.com/servo/servo.git
synced 2025-08-03 20:50:07 +01:00
Implements 2 helper functions for Color type (white() and black())
and uses it in layout_task.rs.
This commit is contained in:
parent
755adf0dde
commit
417ffca937
2 changed files with 17 additions and 4 deletions
|
@ -21,3 +21,13 @@ pub fn rgb(r: u8, g: u8, b: u8) -> AzColor {
|
||||||
pub fn rgba(r: AzFloat, g: AzFloat, b: AzFloat, a: AzFloat) -> AzColor {
|
pub fn rgba(r: AzFloat, g: AzFloat, b: AzFloat, a: AzFloat) -> AzColor {
|
||||||
AzColor { r: r, g: g, b: b, a: a }
|
AzColor { r: r, g: g, b: b, a: a }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[inline]
|
||||||
|
pub fn black() -> AzColor {
|
||||||
|
AzColor { r: 0.0, g: 0.0, b: 0.0, a: 0.0 }
|
||||||
|
}
|
||||||
|
|
||||||
|
#[inline]
|
||||||
|
pub fn white() -> AzColor {
|
||||||
|
AzColor { r: 1.0, g: 1.0, b: 1.0, a: 1.0 }
|
||||||
|
}
|
||||||
|
|
|
@ -664,7 +664,7 @@ impl LayoutTask {
|
||||||
|
|
||||||
// FIXME(pcwalton): This is really ugly and can't handle overflow: scroll. Refactor
|
// FIXME(pcwalton): This is really ugly and can't handle overflow: scroll. Refactor
|
||||||
// it with extreme prejudice.
|
// it with extreme prejudice.
|
||||||
let mut color = color::rgba(1.0, 1.0, 1.0, 1.0);
|
let mut color = color::white();
|
||||||
for child in node.traverse_preorder() {
|
for child in node.traverse_preorder() {
|
||||||
if child.type_id() == Some(NodeTypeId::Element(ElementTypeId::HTMLElement(HTMLElementTypeId::HTMLHtmlElement))) ||
|
if child.type_id() == Some(NodeTypeId::Element(ElementTypeId::HTMLElement(HTMLElementTypeId::HTMLHtmlElement))) ||
|
||||||
child.type_id() == Some(NodeTypeId::Element(ElementTypeId::HTMLElement(HTMLElementTypeId::HTMLBodyElement))) {
|
child.type_id() == Some(NodeTypeId::Element(ElementTypeId::HTMLElement(HTMLElementTypeId::HTMLBodyElement))) {
|
||||||
|
@ -676,9 +676,12 @@ impl LayoutTask {
|
||||||
.background_color)
|
.background_color)
|
||||||
.to_gfx_color()
|
.to_gfx_color()
|
||||||
};
|
};
|
||||||
// FIXME: Add equality operators for azure color type.
|
|
||||||
if element_bg_color.r != 0.0 || element_bg_color.g != 0.0 ||
|
let black = color::black();
|
||||||
element_bg_color.b != 0.0 || element_bg_color.a != 0.0 {
|
// TODO: Use equality operators when we sync with rust-azure.
|
||||||
|
if element_bg_color.r != black.r || element_bg_color.g != black.g ||
|
||||||
|
element_bg_color.b != black.b || element_bg_color.a != black.a {
|
||||||
|
|
||||||
color = element_bg_color;
|
color = element_bg_color;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue