electron_sys/module/
web_frame.rs1use crate::interface::{ResourceUsage, SpellCheckProvider, WorldInfo};
2use js_sys::{JsString, Number, Promise};
3use node_sys::EventEmitter;
4use wasm_bindgen::prelude::*;
5
6#[wasm_bindgen(module = "electron")]
7extern {
8 #[wasm_bindgen(extends = EventEmitter)]
9 pub type WebFrame;
10
11 #[wasm_bindgen(js_name = "webFrame")]
12 pub static web_frame: WebFrame;
13
14 #[wasm_bindgen(method, js_name = "clearCache")]
19 pub fn clear_cache(this: &WebFrame);
20
21 #[must_use]
22 #[wasm_bindgen(method, js_name = "executeJavaScript")]
23 pub fn execute_java_script(this: &WebFrame, code: &str, user_gesture: Option<bool>) -> Promise;
24
25 #[wasm_bindgen(method, js_name = "executeJavaScriptInIsolatedWorld")]
26 pub fn execute_java_script_in_isolated_world(
27 this: &WebFrame,
28 world_id: u32,
29 scripts: Box<[JsValue]>,
30 user_gesture: Option<bool>,
31 ) -> Promise;
32
33 #[wasm_bindgen(method, js_name = "findFrameByName")]
34 pub fn find_frame_by_name(this: &WebFrame, name: &str) -> WebFrame;
35
36 #[wasm_bindgen(method, js_name = "findFrameByRoutingId")]
37 pub fn find_frame_by_routing_id(this: &WebFrame, routing_id: u32) -> WebFrame;
38
39 #[wasm_bindgen(method, js_name = "getFrameForSelector")]
40 pub fn get_frame_for_selector(this: &WebFrame, selector: &str) -> WebFrame;
41
42 #[wasm_bindgen(method, js_name = "getResourceUsage")]
43 pub fn get_resource_usage(this: &WebFrame) -> ResourceUsage;
44
45 #[wasm_bindgen(method, js_name = "getZoomFactor")]
46 pub fn get_zoom_factor(this: &WebFrame) -> Number;
47
48 #[wasm_bindgen(method, js_name = "getZoomLevel")]
49 pub fn get_zoom_level(this: &WebFrame) -> Number;
50
51 #[wasm_bindgen(method, js_name = "insertCSS")]
52 pub fn insert_css(this: &WebFrame, css: &str) -> JsString;
53
54 #[wasm_bindgen(method, js_name = "insertText")]
55 pub fn insert_text(this: &WebFrame, text: &str);
56
57 #[wasm_bindgen(method, js_name = "removeInsertedCSS")]
58 pub fn remove_inserted_css(this: &WebFrame, key: &str);
59
60 #[wasm_bindgen(method, js_name = "setIsolatedWorldInfo")]
61 pub fn set_isolated_world_info(this: &WebFrame, world_id: u32, info: WorldInfo);
62
63 #[wasm_bindgen(method, js_name = "setLayoutZoomLevelLimits")]
64 pub fn set_layout_zoom_level_limits(this: &WebFrame, min: &Number, max: &Number);
65
66 #[wasm_bindgen(method, js_name = "setSpellCheckProvider")]
67 pub fn set_spell_check_provider(this: &WebFrame, language: &str, provider: SpellCheckProvider);
68
69 #[wasm_bindgen(method, js_name = "setVisualZoomLevelLimits")]
70 pub fn set_visual_zoom_level_limits(this: &WebFrame, min: &Number, max: &Number);
71
72 #[wasm_bindgen(method, js_name = "setZoomFactor")]
73 pub fn set_zoom_factor(this: &WebFrame, factor: &Number);
74
75 #[wasm_bindgen(method, js_name = "setZoomLevel")]
76 pub fn set_zoom_level(this: &WebFrame, level: &Number);
77
78 #[wasm_bindgen(method, getter, js_name = "firstChild")] pub fn first_child(this: &WebFrame) -> Option<WebFrame>;
84
85 #[wasm_bindgen(method, getter, js_name = "nextSibling")] pub fn next_sibling(this: &WebFrame) -> Option<WebFrame>;
87
88 #[wasm_bindgen(method, getter)] pub fn opener(this: &WebFrame) -> Option<WebFrame>;
90
91 #[wasm_bindgen(method, getter)] pub fn parent(this: &WebFrame) -> Option<WebFrame>;
93
94 #[wasm_bindgen(method, getter, js_name = "routingId")] pub fn routing_id(this: &WebFrame) -> u32;
96
97 #[wasm_bindgen(method, getter)] pub fn top(this: &WebFrame) -> Option<WebFrame>;
99}