aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXidorn Quan <me@upsuper.org>2018-05-16 14:01:25 +1000
committerEmilio Cobos Álvarez <emilio@crisal.io>2018-05-20 18:58:13 +0200
commit5b0903e604e477203af9b177d92b4783898d1abe (patch)
tree1a87132752352415b9b7c4c54ea466fdb4f7ac56
parent45a37503afd3d712c9c69d7745a9f80d1b127bbf (diff)
downloadservo-5b0903e604e477203af9b177d92b4783898d1abe.tar.gz
servo-5b0903e604e477203af9b177d92b4783898d1abe.zip
style: Have from_image_request reuse ImageValue from image request directly.
And also remove ComputedImageUrl::from_url_value_data. Bug: 1461858 Reviewed-by: emilio MozReview-Commit-ID: 5zifQlU7tOz
-rw-r--r--components/style/gecko/conversions.rs7
-rw-r--r--components/style/gecko/url.rs14
2 files changed, 7 insertions, 14 deletions
diff --git a/components/style/gecko/conversions.rs b/components/style/gecko/conversions.rs
index 76faf2a44ba..bb0ea1e5013 100644
--- a/components/style/gecko/conversions.rs
+++ b/components/style/gecko/conversions.rs
@@ -426,9 +426,10 @@ impl nsStyleImage {
}
}
- unsafe fn get_image_url(self: &nsStyleImage) -> ComputedImageUrl {
- let url_value = bindings::Gecko_GetURLValue(self);
- ComputedImageUrl::from_url_value_data(url_value.as_ref().unwrap())
+ unsafe fn get_image_url(&self) -> ComputedImageUrl {
+ let image_request = bindings::Gecko_GetImageRequest(self)
+ .as_ref().expect("Null image request?");
+ ComputedImageUrl::from_image_request(image_request)
}
unsafe fn get_gradient(self: &nsStyleImage) -> Box<Gradient> {
diff --git a/components/style/gecko/url.rs b/components/style/gecko/url.rs
index 102f59dad9c..163c1690523 100644
--- a/components/style/gecko/url.rs
+++ b/components/style/gecko/url.rs
@@ -309,18 +309,10 @@ impl ToCss for ComputedImageUrl {
}
impl ComputedImageUrl {
- /// Convert from URLValueData to SpecifiedUrl.
- pub unsafe fn from_url_value_data(url: &URLValueData) -> Self {
- ComputedImageUrl(
- SpecifiedImageUrl::from_css_url(CssUrl::from_url_value_data(url))
- )
- }
-
/// Convert from nsStyleImageReques to ComputedImageUrl.
pub unsafe fn from_image_request(image_request: &nsStyleImageRequest) -> Self {
- let image_value = image_request.mImageValue.mRawPtr
- .as_ref().expect("mImageValue is null");
- let url_value_data = &image_value._base;
- Self::from_url_value_data(url_value_data)
+ let image_value = image_request.mImageValue.to_safe();
+ let url = CssUrl::from_url_value_data(&image_value._base);
+ ComputedImageUrl(SpecifiedImageUrl { url, image_value })
}
}