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
This commit is contained in:
Xidorn Quan 2018-05-16 14:01:25 +10:00 committed by Emilio Cobos Álvarez
parent 45a37503af
commit 5b0903e604
No known key found for this signature in database
GPG key ID: 056B727BB9C1027C
2 changed files with 7 additions and 14 deletions

View file

@ -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> {

View file

@ -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 })
}
}