Compile raw inline event handlers lazily. Resolves #8489.

This commit is contained in:
Josh Matthews 2015-11-12 11:20:08 -05:00 committed by Ms2ger
parent 3703e6d4f6
commit 2796a4dfa8
11 changed files with 323 additions and 67 deletions

View file

@ -11,7 +11,7 @@ use dom::bindings::js::{JS, Root, RootedReference};
use dom::bindings::reflector::Reflectable;
use dom::bindings::trace::RootedVec;
use dom::event::{Event, EventPhase};
use dom::eventtarget::{EventListenerType, EventTarget, ListenerPhase};
use dom::eventtarget::{CompiledEventListener, EventTarget, ListenerPhase};
use dom::node::Node;
use dom::virtualmethods::vtable_for;
use dom::window::Window;
@ -36,7 +36,7 @@ impl Drop for AutoDOMEventMarker {
}
}
fn handle_event(window: Option<&Window>, listener: &EventListenerType,
fn handle_event(window: Option<&Window>, listener: &CompiledEventListener,
current_target: &EventTarget, event: &Event) {
let _marker;
if let Some(window) = window {