aboutsummaryrefslogtreecommitdiffstats
path: root/components/script/dom/eventtarget.rs
diff options
context:
space:
mode:
authorddh <dianehosfelt@gmail.com>2017-11-20 23:07:10 +0000
committerddh <dianehosfelt@gmail.com>2017-11-30 16:18:57 +0000
commit79d896d4744c347236fbf6916e3a71ddaa670ccb (patch)
treef8c4ca3255ce386ee12ba23662c3af6a487773d6 /components/script/dom/eventtarget.rs
parent462409ada54b002689d01c7c7243f0d9fe90df26 (diff)
downloadservo-79d896d4744c347236fbf6916e3a71ddaa670ccb.tar.gz
servo-79d896d4744c347236fbf6916e3a71ddaa670ccb.zip
queue event instead of immediately fire
created checks to see if parser is in use before event dispatch changed tests to expect crash and added async style test
Diffstat (limited to 'components/script/dom/eventtarget.rs')
-rw-r--r--components/script/dom/eventtarget.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/components/script/dom/eventtarget.rs b/components/script/dom/eventtarget.rs
index 01fbc10c463..43a0a3502a3 100644
--- a/components/script/dom/eventtarget.rs
+++ b/components/script/dom/eventtarget.rs
@@ -315,10 +315,21 @@ impl EventTarget {
pub fn dispatch_event_with_target(&self,
target: &EventTarget,
event: &Event) -> EventStatus {
+ if let Some(window) = target.global().downcast::<Window>() {
+ if window.has_document() {
+ assert!(window.Document().can_invoke_script());
+ }
+ };
+
event.dispatch(self, Some(target))
}
pub fn dispatch_event(&self, event: &Event) -> EventStatus {
+ if let Some(window) = self.global().downcast::<Window>() {
+ if window.has_document() {
+ assert!(window.Document().can_invoke_script());
+ }
+ };
event.dispatch(self, None)
}