Browse Source

Register visibility change listener when attached

Kevin Sawicki 8 years ago
parent
commit
f4717b34e9
1 changed files with 2 additions and 1 deletions
  1. 2 1
      lib/renderer/web-view/web-view.js

+ 2 - 1
lib/renderer/web-view/web-view.js

@@ -34,10 +34,10 @@ class WebViewImpl {
     this.viewInstanceId = getNextId()
     shadowRoot.appendChild(this.browserPluginNode)
 
+    // Forward window visibility changes to guest contents
     this.onVisibilityChanged = (event, visibilityState) => {
       this.webviewNode.send('ELECTRON_RENDERER_WINDOW_VISIBILITY_CHANGE', visibilityState)
     }
-    ipcRenderer.on('ELECTRON_RENDERER_WINDOW_VISIBILITY_CHANGE', this.onVisibilityChanged)
   }
 
   createBrowserPluginNode () {
@@ -315,6 +315,7 @@ var registerWebViewElement = function () {
       return
     }
     if (!internal.elementAttached) {
+      ipcRenderer.on('ELECTRON_RENDERER_WINDOW_VISIBILITY_CHANGE', internal.onVisibilityChanged)
       guestViewInternal.registerEvents(internal, internal.viewInstanceId)
       internal.elementAttached = true
       instance = internal.attributes[webViewConstants.ATTRIBUTE_GUESTINSTANCE].getValue()