<!--
Thanks for opening an issue! A few things to keep in mind:

- The issue tracker is only for bugs and feature requests.
- Before reporting a bug, please try reproducing your issue against
  the latest version of Electron.
- If you need general advice, join our Slack: http://atom-slack.herokuapp.com
-->

* Electron version: 1.6.6
* Operating system: macOS 10.12.4

### Expected behavior

When creating a new `BrowserWindow` the [PDF plugin](https://github.com/electron/electron/pull/8435) should respect the BrowserWindow `webPreferences.plugins` option as stated in the [API documentation](https://electron.atom.io/docs/api/browser-window/#new-browserwindowoptions):
> plugins Boolean (optional) - Whether plugins should be enabled. Default is false.

### Actual behavior

The plugin is always enabled. Even if `plugins` is explicitly set to `false` like that:
```
    mainWindow = new BrowserWindow({
      webPreferences: {
        plugins: false  // set it explicitly to false even if it should be the default
      }
    })
```

### How to reproduce

  $ git clone https://github.com/rreimann/electron-quick-start.git -b pdf-plugin-always-enabled
  $ npm install
  $ npm start || electron .

See that "Chromium PDF Viewer" is contained in the listed plugins and the PDF link opens the PDF Viewer instead of downloading the PDF as it would be the case if the plugin was not enabled.

atom/browser/web_contents_preferences.cc
bool webview_tag = node_integration;
  web_preferences.GetBoolean(options::kWebviewTag, &webview_tag);
  command_line->AppendSwitchASCII(switches::kWebviewTag,
                                  webview_tag ? "true" : "false");
  
  
  
  if (IsSandboxed(web_contents))
    command_line->AppendSwitch(switches::kEnableSandbox);
  if (web_preferences.GetBoolean("nativeWindowOpen", &b) && b)
    command_line->AppendSwitch(switches::kNativeWindowOpen);
  
  base::FilePath::StringType preload;
  if (web_preferences.GetString(options::kPreloadScript, &preload)) {
    if (base::FilePath(preload).IsAbsolute())
      command_line->AppendSwitchNative(switches::kPreloadScript, preload);
    else
      LOG(ERROR) << "preload script must have absolute path.";
  } else if (web_preferences.GetString(options::kPreloadURL, &preload)) {
    
    base::FilePath preload_path;
    if (net::FileURLToFilePath(GURL(preload), &preload_path))
      command_line->AppendSwitchPath(switches::kPreloadScript, preload_path);
    else
      LOG(ERROR) << "preload url must be file:// protocol.";
  }
  
  bool isolated;
  if (web_preferences.GetBoolean(options::kContextIsolation, &isolated) &&
      isolated)