2018-09-23 00:28:50 +12:00
|
|
|
'use strict'
|
|
|
|
|
2018-09-20 13:43:26 +10:00
|
|
|
const Event = require('@electron/internal/renderer/extensions/event')
|
2019-02-14 17:24:25 -08:00
|
|
|
const { ipcRendererInternal } = require('@electron/internal/renderer/ipc-renderer-internal')
|
2016-06-16 09:46:26 -07:00
|
|
|
|
2016-06-16 12:07:59 -07:00
|
|
|
class WebNavigation {
|
|
|
|
constructor () {
|
|
|
|
this.onBeforeNavigate = new Event()
|
|
|
|
this.onCompleted = new Event()
|
2016-06-16 09:46:26 -07:00
|
|
|
|
2019-02-14 17:24:25 -08:00
|
|
|
ipcRendererInternal.on('CHROME_WEBNAVIGATION_ONBEFORENAVIGATE', (event, details) => {
|
2016-06-16 12:07:59 -07:00
|
|
|
this.onBeforeNavigate.emit(details)
|
|
|
|
})
|
|
|
|
|
2019-02-14 17:24:25 -08:00
|
|
|
ipcRendererInternal.on('CHROME_WEBNAVIGATION_ONCOMPLETED', (event, details) => {
|
2016-06-16 12:07:59 -07:00
|
|
|
this.onCompleted.emit(details)
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
exports.setup = () => {
|
|
|
|
return new WebNavigation()
|
|
|
|
}
|