* Electron version: 1.7.1
* Operating system: MacOS

### Expected behavior

The popup should have `window.opener` set

### Actual behavior

I was using native `window.open` in sandbox mode until this PR was merged : https://github.com/electron/electron/pull/8963

I switched to non-sandbox mode using the version 1.7.1 and what happen is that, if your main app is embedded in an iframe and if it open a new window using `window.open`, the new window won't have `window.opener` set

If I load the same app directly in the main window and not using the iframe, it is working as expected

I am using the code from https://github.com/electron/electron/blob/master/docs/api/window-open.md

### How to reproduce

In the main window load in an iframe your app.

In the app open a popup with `window.open`

The new popup does not have `window.opener` set
atom/browser/atom_browser_client.cc
AtomBrowserClient::CreateSpeechRecognitionManagerDelegate() {
  return new AtomSpeechRecognitionManagerDelegate;
}
void AtomBrowserClient::OverrideWebkitPrefs(
    content::RenderViewHost* host, content::WebPreferences* prefs) {
  prefs->javascript_enabled = true;
  prefs->web_security_enabled = true;
  prefs->javascript_can_open_windows_automatically = true;
  prefs->plugins_enabled = true;
  prefs->dom_paste_enabled = true;
  prefs->allow_scripts_to_close_windows = true;
  prefs->javascript_can_access_clipboard = true;
  prefs->local_storage_enabled = true;
  prefs->databases_enabled = true;
  prefs->application_cache_enabled = true;
  prefs->allow_universal_access_from_file_urls = true;
  prefs->allow_file_access_from_file_urls = true;
  prefs->experimental_webgl_enabled = true;
  prefs->allow_running_insecure_content = false;
  
  auto web_contents = content::WebContents::FromRenderViewHost(host);
  WebContentsPreferences::OverrideWebkitPrefs(web_contents, prefs);
}
std::string AtomBrowserClient::GetApplicationLocale() {
  return l10n_util::GetApplicationLocale("");
}
void AtomBrowserClient::OverrideSiteInstanceForNavigation(