oxygengine_input_device_web/
utils.rs

1use wasm_bindgen::JsCast;
2use web_sys::*;
3
4pub fn get_event_target_by_id(id: &str) -> EventTarget {
5    let document = window().document().expect("no `window.document` exists");
6    let canvas = document
7        .get_element_by_id(id)
8        .unwrap_or_else(|| panic!("no `{}` event target in document", id));
9    canvas.dyn_into::<EventTarget>().map_err(|_| ()).unwrap()
10}
11
12pub fn get_event_target_document() -> EventTarget {
13    let document = window().document().expect("no `window.document` exists");
14    document.dyn_into::<EventTarget>().map_err(|_| ()).unwrap()
15}
16
17fn window() -> web_sys::Window {
18    web_sys::window().expect("no global `window` exists")
19}