implements nsStyleImageRequest type properties animatable

This commit is contained in:
Daisuke Akatsuka 2017-07-05 13:11:58 +09:00
parent d885747a18
commit d8dcc52c9a
3 changed files with 33 additions and 1 deletions

View file

@ -7,6 +7,7 @@
use gecko_bindings::structs::{ServoBundledURI, URLExtraData};
use gecko_bindings::structs::mozilla::css::URLValueData;
use gecko_bindings::structs::root::mozilla::css::ImageValue;
use gecko_bindings::structs::root::nsStyleImageRequest;
use gecko_bindings::sugar::refptr::RefPtr;
use parser::ParserContext;
use std::fmt;
@ -62,6 +63,19 @@ impl SpecifiedUrl {
})
}
/// Convert from nsStyleImageRequest to SpecifiedUrl.
pub unsafe fn from_image_request(image_request: &nsStyleImageRequest) -> Result<SpecifiedUrl, ()> {
if image_request.mImageValue.mRawPtr.is_null() {
return Err(());
}
let image_value = image_request.mImageValue.mRawPtr.as_ref().unwrap();
let ref url_value_data = image_value._base;
let mut result = try!(Self::from_url_value_data(url_value_data));
result.build_image_value();
Ok(result)
}
/// Returns true if this URL looks like a fragment.
/// See https://drafts.csswg.org/css-values/#local-urls
pub fn is_fragment(&self) -> bool {