diff options
Diffstat (limited to 'src/models')
-rw-r--r-- | src/models/Service.js | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/src/models/Service.js b/src/models/Service.js index 74e100ea4..36b310da1 100644 --- a/src/models/Service.js +++ b/src/models/Service.js | |||
@@ -275,11 +275,17 @@ export default class Service { | |||
275 | debug(this.name, 'modifyRequestHeaders is not defined in the recipe'); | 275 | debug(this.name, 'modifyRequestHeaders is not defined in the recipe'); |
276 | } | 276 | } |
277 | 277 | ||
278 | this.webview.addEventListener('ipc-message', e => handleIPCMessage({ | 278 | this.webview.addEventListener('ipc-message', async (e) => { |
279 | serviceId: this.id, | 279 | if (e.channel === 'inject-js-unsafe') { |
280 | channel: e.channel, | 280 | await Promise.all(e.args.map(script => this.webview.executeJavaScript(`"use strict"; (() => { ${script} })();`))); |
281 | args: e.args, | 281 | } else { |
282 | })); | 282 | handleIPCMessage({ |
283 | serviceId: this.id, | ||
284 | channel: e.channel, | ||
285 | args: e.args, | ||
286 | }); | ||
287 | } | ||
288 | }); | ||
283 | 289 | ||
284 | this.webview.addEventListener('new-window', (event, url, frameName, options) => { | 290 | this.webview.addEventListener('new-window', (event, url, frameName, options) => { |
285 | debug('new-window', event, url, frameName, options); | 291 | debug('new-window', event, url, frameName, options); |
@@ -334,6 +340,11 @@ export default class Service { | |||
334 | this.hasCrashed = true; | 340 | this.hasCrashed = true; |
335 | }); | 341 | }); |
336 | 342 | ||
343 | this.webview.addEventListener('found-in-page', ({ result }) => { | ||
344 | debug('Found in page', result); | ||
345 | this.webview.send('found-in-page', result); | ||
346 | }); | ||
347 | |||
337 | webviewWebContents.on('login', (event, request, authInfo, callback) => { | 348 | webviewWebContents.on('login', (event, request, authInfo, callback) => { |
338 | // const authCallback = callback; | 349 | // const authCallback = callback; |
339 | debug('browser login event', authInfo); | 350 | debug('browser login event', authInfo); |