From 08fa2382b023c13d83624f21c85d6b0a42eb10ae Mon Sep 17 00:00:00 2001 From: Ilya Maximov Date: Thu, 17 Mar 2022 22:55:26 +0100 Subject: [PATCH] add eval to `DesktopContext` --- packages/desktop/src/desktop_context.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/desktop/src/desktop_context.rs b/packages/desktop/src/desktop_context.rs index 93162842b..def9a21d0 100644 --- a/packages/desktop/src/desktop_context.rs +++ b/packages/desktop/src/desktop_context.rs @@ -119,6 +119,11 @@ impl DesktopContext { pub fn devtool(&self) { let _ = self.proxy.send_event(DevTool); } + + /// run (evaluate) a script in the WebView context + pub fn eval(&self, script: impl std::fmt::Display) { + let _ = self.proxy.send_event(Eval(script.to_string())); + } } #[derive(Debug)] @@ -144,6 +149,8 @@ pub enum UserWindowEvent { SetDecorations(bool), DevTool, + + Eval(String), } pub(super) fn handler( @@ -185,5 +192,7 @@ pub(super) fn handler( SetDecorations(state) => window.set_decorations(state), DevTool => webview.devtool(), + + Eval(code) => webview.evaluate_script(code.as_str()).expect("failed to eval script"), } }