From 8c2e89da0b4db88c84e69e278414d1de4bd3d4e3 Mon Sep 17 00:00:00 2001 From: Revertron Date: Fri, 7 May 2021 11:28:24 +0200 Subject: [PATCH] Fixed JS part for Edge. --- Cargo.toml | 2 +- src/web_ui.rs | 1 + src/webview/scripts.js | 8 +++++++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index a895c41..87d6c89 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -72,5 +72,5 @@ FileDescription="Alternative Free Identity System" [features] webgui = ["web-view", "tinyfiledialogs", "open"] -edge = ["web-view/edge"] +edge = ["webgui", "web-view/edge"] default = ["webgui"] \ No newline at end of file diff --git a/src/web_ui.rs b/src/web_ui.rs index 8c55989..a40f05c 100644 --- a/src/web_ui.rs +++ b/src/web_ui.rs @@ -180,6 +180,7 @@ fn action_load_key(context: &Arc>, web_view: &mut WebView<()>) { } fn action_loaded(context: &Arc>, web_view: &mut WebView<()>) { + info!("Interface loaded"); web_view.eval("showMiningIndicator(false, false);").expect("Error evaluating!"); let handle: Handle<()> = web_view.handle(); let threads = context.lock().unwrap().settings.mining.threads; diff --git a/src/webview/scripts.js b/src/webview/scripts.js index f7bfca0..fa0fe0d 100644 --- a/src/webview/scripts.js +++ b/src/webview/scripts.js @@ -183,7 +183,13 @@ function editDomain(domain, event) { function onLoad() { // Workaround for Arch Linux Webkit // https://github.com/Boscop/web-view/issues/212#issuecomment-671055663 - window.external={invoke:function(x){window.webkit.messageHandlers.external.postMessage(x);}}; + if (typeof window.external == 'undefined' || typeof window.external.invoke == 'undefined') { + window.external = { + invoke: function(x) { + window.webkit.messageHandlers.external.postMessage(x); + } + }; + } external.invoke(JSON.stringify({cmd: 'loaded'})); }