diff options
Diffstat (limited to 'src/components/script/script_task.rs')
-rw-r--r-- | src/components/script/script_task.rs | 11 |
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. |