Add remote.getGuestWebContents
This commit is contained in:
parent
c0955eaa90
commit
e95c1256a0
4 changed files with 18 additions and 2 deletions
|
@ -54,3 +54,7 @@ ipc.on 'ATOM_SHELL_GUEST_VIEW_MANAGER_SET_AUTO_SIZE', (event, id, params) ->
|
||||||
|
|
||||||
ipc.on 'ATOM_SHELL_GUEST_VIEW_MANAGER_SET_ALLOW_TRANSPARENCY', (event, id, allowtransparency) ->
|
ipc.on 'ATOM_SHELL_GUEST_VIEW_MANAGER_SET_ALLOW_TRANSPARENCY', (event, id, allowtransparency) ->
|
||||||
guestInstances[id]?.setAllowTransparency allowtransparency
|
guestInstances[id]?.setAllowTransparency allowtransparency
|
||||||
|
|
||||||
|
# Returns WebContents from its guest id.
|
||||||
|
exports.getGuest = (id) ->
|
||||||
|
guestInstances[id]
|
||||||
|
|
|
@ -157,3 +157,10 @@ ipc.on 'ATOM_BROWSER_MEMBER_GET', (event, id, name) ->
|
||||||
|
|
||||||
ipc.on 'ATOM_BROWSER_DEREFERENCE', (event, storeId) ->
|
ipc.on 'ATOM_BROWSER_DEREFERENCE', (event, storeId) ->
|
||||||
objectsRegistry.remove event.sender.getId(), storeId
|
objectsRegistry.remove event.sender.getId(), storeId
|
||||||
|
|
||||||
|
ipc.on 'ATOM_BROWSER_GUEST_WEB_CONTENTS', (event, guestInstanceId) ->
|
||||||
|
try
|
||||||
|
guestViewManager = require './guest-view-manager'
|
||||||
|
event.returnValue = valueToMeta event.sender, guestViewManager.getGuest(guestInstanceId)
|
||||||
|
catch e
|
||||||
|
event.returnValue = errorToMeta e
|
||||||
|
|
|
@ -129,3 +129,8 @@ exports.createFunctionWithReturnValue = (returnValue) ->
|
||||||
func = -> returnValue
|
func = -> returnValue
|
||||||
v8Util.setHiddenValue func, 'returnValue', true
|
v8Util.setHiddenValue func, 'returnValue', true
|
||||||
func
|
func
|
||||||
|
|
||||||
|
# Get the guest WebContents from guestInstanceId.
|
||||||
|
exports.getGuestWebContents = (guestInstanceId) ->
|
||||||
|
meta = ipc.sendChannelSync 'ATOM_BROWSER_GUEST_WEB_CONTENTS', guestInstanceId
|
||||||
|
metaToValue meta
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
v8Util = process.atomBinding 'v8_util'
|
v8Util = process.atomBinding 'v8_util'
|
||||||
guestViewInternal = require './guest-view-internal'
|
guestViewInternal = require './guest-view-internal'
|
||||||
webFrame = require 'web-frame'
|
webFrame = require 'web-frame'
|
||||||
|
remote = require 'remote'
|
||||||
|
|
||||||
# ID generator.
|
# ID generator.
|
||||||
nextId = 0
|
nextId = 0
|
||||||
|
@ -357,8 +358,7 @@ class WebView
|
||||||
return
|
return
|
||||||
|
|
||||||
# Navigate to |this.src|.
|
# Navigate to |this.src|.
|
||||||
# FIXME
|
remote.getGuestWebContents(@guestInstanceId).loadUrl @src
|
||||||
# WebViewInternal.navigate @guestInstanceId, @src
|
|
||||||
|
|
||||||
parseAttributes: ->
|
parseAttributes: ->
|
||||||
return unless @elementAttached
|
return unless @elementAttached
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue