use blitz_dom::NodeId;
use blitz_dom::{Document, EventHandler};
use blitz_traits::events::{DomEvent, EventState};
use crate::runtime::ScriptRuntime;
pub(crate) struct ScriptEventHandler<'rt> {
pub runtime: &'rt mut ScriptRuntime,
pub profiling: bool,
}
impl EventHandler for ScriptEventHandler<'_> {
fn handle_event(
&mut self,
chain: &[NodeId],
event: &mut DomEvent,
_doc: &mut dyn Document,
event_state: &mut EventState,
) {
self.runtime
.dispatch_dom_event(chain, event, event_state, self.profiling);
}
}