Add a top-level web_sys::window function

Returns `Option<Window>` and can be used as a convenience to get a handle to the
global `window` object.
This commit is contained in:
Alex Crichton
2018-09-17 14:25:04 -07:00
parent 99e1b352e5
commit f24828a16b
5 changed files with 19 additions and 4 deletions

View File

@ -17,4 +17,15 @@ extern crate wasm_bindgen;
extern crate js_sys;
use js_sys::Object;
#[cfg(feature = "Window")]
pub fn window() -> Option<Window> {
use wasm_bindgen::{JsValue, JsCast};
js_sys::Function::new_no_args("return this")
.call0(&JsValue::undefined())
.ok()?
.dyn_into::<Window>()
.ok()
}
include!(concat!(env!("OUT_DIR"), "/bindings.rs"));