session: allow providing permission to handle external protocols
This commit is contained in:
parent
aa29dc0c8a
commit
ca756c3c24
6 changed files with 58 additions and 7 deletions
|
@ -722,11 +722,13 @@ describe('<webview> tag', function () {
|
|||
})
|
||||
|
||||
describe('permission-request event', function () {
|
||||
function setUpRequestHandler (webview, requested_permission) {
|
||||
function setUpRequestHandler (webview, requested_permission, completed) {
|
||||
var listener = function (webContents, permission, callback) {
|
||||
if (webContents.getId() === webview.getId()) {
|
||||
assert.equal(permission, requested_permission)
|
||||
callback(false)
|
||||
if (completed)
|
||||
completed()
|
||||
}
|
||||
}
|
||||
session.fromPartition(webview.partition).setPermissionRequestHandler(listener)
|
||||
|
@ -770,6 +772,13 @@ describe('<webview> tag', function () {
|
|||
setUpRequestHandler(webview, 'midiSysex')
|
||||
document.body.appendChild(webview)
|
||||
})
|
||||
|
||||
it('emits when accessing external protocol', function (done) {
|
||||
webview.src = 'magnet:test'
|
||||
webview.partition = 'permissionTest'
|
||||
setUpRequestHandler(webview, 'openExternal', done)
|
||||
document.body.appendChild(webview)
|
||||
})
|
||||
})
|
||||
|
||||
describe('<webview>.getWebContents', function () {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue