aboutsummaryrefslogtreecommitdiffstats
path: root/src/components/script/script_task.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/script/script_task.rs')
-rw-r--r--src/components/script/script_task.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/components/script/script_task.rs b/src/components/script/script_task.rs
index fed211c1fce..8a21e984639 100644
--- a/src/components/script/script_task.rs
+++ b/src/components/script/script_task.rs
@@ -12,6 +12,8 @@ use dom::bindings::utils::{Reflectable, GlobalStaticData};
use dom::document::AbstractDocument;
use dom::element::Element;
use dom::event::{Event_, ResizeEvent, ReflowEvent, ClickEvent, MouseDownEvent, MouseUpEvent};
+use dom::event::{Event, HTMLEventTypeId};
+use dom::eventtarget::AbstractEventTarget;
use dom::htmldocument::HTMLDocument;
use dom::window::Window;
use layout_interface::{AddStylesheetMsg, DocumentDamage};
@@ -765,6 +767,15 @@ impl ScriptTask {
file.url.to_str(),
1);
}
+
+ // We have no concept of a document loader right now, so just dispatch the
+ // "load" event as soon as we've finished executing all scripts parsed during
+ // the initial load.
+ let event = Event::new(window, HTMLEventTypeId);
+ event.mut_event().InitEvent(&Some(~"load"), false, false);
+ let doctarget = AbstractEventTarget::from_document(document);
+ let wintarget = AbstractEventTarget::from_window(window);
+ window.eventtarget.dispatch_event_with_target(wintarget, Some(doctarget), event);
}
/// This is the main entry point for receiving and dispatching DOM events.