aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/element.rs
diff options
context:
space:
mode:
authorbors-servo <metajack+bors@gmail.com>2015-07-29 14:37:45 -0600
committerbors-servo <metajack+bors@gmail.com>2015-07-29 14:37:45 -0600
commit58fa3b69b76387958db45bc9831ac7c79caab2ea (patch)
tree9af5e455a3e7f189a555f12a1cd81fa158f50543 /components/script/dom/element.rs
parent7adc336aaacfb5e544a9c8c4e0387afa457e5d72 (diff)
parentd3f92eb3398b9f8ea8f4571e1f653c1b7a9b3138 (diff)
downloadservo-58fa3b69b76387958db45bc9831ac7c79caab2ea.tar.gz
servo-58fa3b69b76387958db45bc9831ac7c79caab2ea.zip
Auto merge of #5851 - evilpie:background, r=SimonSapin
Implement the HTML background attribute Fixes #5835 <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/5851) <!-- Reviewable:end -->
Diffstat (limited to 'components/script/dom/element.rs')
-rw-r--r--components/script/dom/element.rs15
1 files changed, 14 insertions, 1 deletions
diff --git a/components/script/dom/element.rs b/components/script/dom/element.rs
index 1edc4947a8a..d8c0db97e60 100644
--- a/components/script/dom/element.rs
+++ b/components/script/dom/element.rs
@@ -67,7 +67,7 @@ use smallvec::VecLike;
use style::legacy::{UnsignedIntegerAttribute, from_declaration};
use style::properties::{PropertyDeclarationBlock, PropertyDeclaration, parse_style_attribute};
use style::properties::DeclaredValue::SpecifiedValue;
-use style::properties::longhands::{self, border_spacing, height};
+use style::properties::longhands::{self, background_image, border_spacing, height};
use style::values::CSSFloat;
use style::values::specified::{self, CSSColor, CSSRGBA};
use util::geometry::Au;
@@ -278,6 +278,19 @@ impl RawLayoutElementHelpers for Element {
CSSColor { parsed: Color::RGBA(color), authored: None }))));
}
+ let background = if self.is_htmlbodyelement() {
+ let this: &HTMLBodyElement = mem::transmute(self);
+ this.get_background()
+ } else {
+ None
+ };
+
+ if let Some(url) = background {
+ hints.push(from_declaration(
+ PropertyDeclaration::BackgroundImage(SpecifiedValue(
+ background_image::SpecifiedValue(Some(specified::Image::Url(url)))))));
+ }
+
let color = if self.is_htmlfontelement() {
let this: &HTMLFontElement = mem::transmute(self);
this.get_color()