From ae5e8eb0e4cd2bb752bab94d3528340aaf8a5db0 Mon Sep 17 00:00:00 2001 From: Tim Date: Fri, 31 Jan 2025 17:40:05 +0100 Subject: [PATCH] feat(webview): handle window.open --- src/stremio_app/stremio_wevbiew/wevbiew.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/src/stremio_app/stremio_wevbiew/wevbiew.rs b/src/stremio_app/stremio_wevbiew/wevbiew.rs index 8a2f527..51229a6 100644 --- a/src/stremio_app/stremio_wevbiew/wevbiew.rs +++ b/src/stremio_app/stremio_wevbiew/wevbiew.rs @@ -137,6 +137,23 @@ impl PartialUi for WebView { } }) }catch(e){} + + window.open = (url) => { + if (typeof url === 'string' && URL.canParse(url)) + return console.error('Not a valid URL string'); + + try { + const message = { + id: 1, + args: ['open-external', url], + }; + + window.chrome.webview.postMessage(JSON.stringify(message)); + } catch(e) { + console.error('Failed to post message'); + } + }; + try{console.log('Shell JS injected');if(window.self === window.top) { window.qt={webChannelTransport:{send:window.chrome.webview.postMessage}}; window.chrome.webview.addEventListener('message',ev=>window.qt.webChannelTransport.onmessage(ev));