aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/htmlimageelement.rs
diff options
context:
space:
mode:
Diffstat (limited to 'components/script/dom/htmlimageelement.rs')
-rw-r--r--components/script/dom/htmlimageelement.rs94
1 files changed, 48 insertions, 46 deletions
diff --git a/components/script/dom/htmlimageelement.rs b/components/script/dom/htmlimageelement.rs
index d02a850ccb8..65846d59ab4 100644
--- a/components/script/dom/htmlimageelement.rs
+++ b/components/script/dom/htmlimageelement.rs
@@ -2,6 +2,50 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
+use std::cell::Cell;
+use std::collections::HashSet;
+use std::default::Default;
+use std::sync::{Arc, Mutex};
+use std::{char, i32, mem};
+
+use app_units::{Au, AU_PER_PX};
+use cssparser::{Parser, ParserInput};
+use dom_struct::dom_struct;
+use euclid::Point2D;
+use html5ever::{local_name, namespace_url, ns, LocalName, Prefix, QualName};
+use ipc_channel::ipc;
+use ipc_channel::ipc::IpcSender;
+use ipc_channel::router::ROUTER;
+use js::jsapi::JSAutoRealm;
+use js::rust::HandleObject;
+use mime::{self, Mime};
+use msg::constellation_msg::PipelineId;
+use net_traits::image::base::{Image, ImageMetadata};
+use net_traits::image_cache::{
+ CorsStatus, ImageCache, ImageCacheResult, ImageOrMetadataAvailable, ImageResponse,
+ PendingImageId, PendingImageResponse, UsePlaceholder,
+};
+use net_traits::request::{CorsSettings, Destination, Initiator, Referrer, RequestBuilder};
+use net_traits::{
+ FetchMetadata, FetchResponseListener, FetchResponseMsg, NetworkError, ReferrerPolicy,
+ ResourceFetchTiming, ResourceTimingType,
+};
+use num_traits::ToPrimitive;
+use servo_url::origin::{ImmutableOrigin, MutableOrigin};
+use servo_url::ServoUrl;
+use style::attr::{
+ parse_double, parse_length, parse_unsigned_integer, AttrValue, LengthOrPercentageOrAuto,
+};
+use style::context::QuirksMode;
+use style::media_queries::MediaList;
+use style::parser::ParserContext;
+use style::str::is_ascii_digit;
+use style::stylesheets::{CssRuleType, Origin};
+use style::values::specified::length::{Length, NoCalcLength};
+use style::values::specified::source_size_list::SourceSizeList;
+use style::values::specified::AbsoluteLength;
+use style_traits::ParsingMode;
+
use crate::document_loader::{LoadBlocker, LoadType};
use crate::dom::activation::Activatable;
use crate::dom::attr::Attr;
@@ -19,10 +63,10 @@ use crate::dom::bindings::reflector::DomObject;
use crate::dom::bindings::root::{DomRoot, LayoutDom, MutNullableDom};
use crate::dom::bindings::str::{DOMString, USVString};
use crate::dom::document::{determine_policy_for_token, Document};
-use crate::dom::element::{cors_setting_for_element, referrer_policy_for_element};
-use crate::dom::element::{reflect_cross_origin_attribute, set_cross_origin_attribute};
use crate::dom::element::{
- AttributeMutation, CustomElementCreationMode, Element, ElementCreator, LayoutElementHelpers,
+ cors_setting_for_element, referrer_policy_for_element, reflect_cross_origin_attribute,
+ set_cross_origin_attribute, AttributeMutation, CustomElementCreationMode, Element,
+ ElementCreator, LayoutElementHelpers,
};
use crate::dom::event::Event;
use crate::dom::eventtarget::EventTarget;
@@ -34,9 +78,9 @@ use crate::dom::htmlmapelement::HTMLMapElement;
use crate::dom::htmlpictureelement::HTMLPictureElement;
use crate::dom::htmlsourceelement::HTMLSourceElement;
use crate::dom::mouseevent::MouseEvent;
-use crate::dom::node::UnbindContext;
use crate::dom::node::{
document_from_node, window_from_node, BindContext, Node, NodeDamage, ShadowIncluding,
+ UnbindContext,
};
use crate::dom::performanceresourcetiming::InitiatorType;
use crate::dom::values::UNSIGNED_LONG_MAX;
@@ -49,48 +93,6 @@ use crate::network_listener::{self, NetworkListener, PreInvoke, ResourceTimingLi
use crate::realms::enter_realm;
use crate::script_thread::ScriptThread;
use crate::task_source::TaskSource;
-use app_units::{Au, AU_PER_PX};
-use cssparser::{Parser, ParserInput};
-use dom_struct::dom_struct;
-use euclid::Point2D;
-use html5ever::{local_name, namespace_url, ns, LocalName, Prefix, QualName};
-use ipc_channel::ipc;
-use ipc_channel::ipc::IpcSender;
-use ipc_channel::router::ROUTER;
-use js::jsapi::JSAutoRealm;
-use js::rust::HandleObject;
-use mime::{self, Mime};
-use msg::constellation_msg::PipelineId;
-use net_traits::image::base::{Image, ImageMetadata};
-use net_traits::image_cache::{
- CorsStatus, ImageCache, ImageCacheResult, ImageOrMetadataAvailable, ImageResponse,
- PendingImageId, PendingImageResponse, UsePlaceholder,
-};
-use net_traits::request::{CorsSettings, Destination, Initiator, Referrer, RequestBuilder};
-use net_traits::{FetchMetadata, FetchResponseListener, FetchResponseMsg, NetworkError};
-use net_traits::{ReferrerPolicy, ResourceFetchTiming, ResourceTimingType};
-use num_traits::ToPrimitive;
-use servo_url::origin::ImmutableOrigin;
-use servo_url::origin::MutableOrigin;
-use servo_url::ServoUrl;
-use std::cell::Cell;
-use std::char;
-use std::collections::HashSet;
-use std::default::Default;
-use std::i32;
-use std::mem;
-use std::sync::{Arc, Mutex};
-use style::attr::{
- parse_double, parse_length, parse_unsigned_integer, AttrValue, LengthOrPercentageOrAuto,
-};
-use style::context::QuirksMode;
-use style::media_queries::MediaList;
-use style::parser::ParserContext;
-use style::str::is_ascii_digit;
-use style::stylesheets::{CssRuleType, Origin};
-use style::values::specified::length::{Length, NoCalcLength};
-use style::values::specified::{source_size_list::SourceSizeList, AbsoluteLength};
-use style_traits::ParsingMode;
enum ParseState {
InDescriptor,