- Electron version:
  We are using node 5.10.0, Chrome 49.0.2623.75, and Electron 1.0.1. 
- Operating system:
  Mac OS X 10.11.3 (15D21)

Trying to use the [Web Bluetooth APIs](https://developers.google.com/web/updates/2015/07/interact-with-ble-devices-on-the-web?hl=en#scan-for-bluetooth-devices) but when I run the Web Bluetooth demo code, the callbacks fail with the error:

`Argh! NotFoundError: User cancelled the requestDevice() chooser.`

main.js code:

```
// Module to control application life.
const {app} = electron;

// @link https://github.com/electron/electron/blob/master/docs/api/chrome-command-line-switches.md
app.commandLine.appendSwitch('enable-web-bluetooth', true);
```

Index.html code:

```
<a href="#" onclick="run();" class="scanDevices">Scan</a>
    <script>
    function run() {
        var filters = [{
    services: [0x1800, 0x1801, 0x1812]
  }];
          console.log('Requesting Bluetooth Device...');
  navigator.bluetooth.requestDevice({filters: filters})
  .then(device => {
    console.log('> Name:             ' + device.name);
    console.log('> Id:               ' + device.id);
    console.log('> UUIDs:            ' + device.uuids.join('\n' + ' '.repeat(20)));
    console.log('> Connected:        ' + device.gatt.connected);
  })
  .catch(error => {
    console.log('Argh! ' + error);
  });
  }
    </script>
```

Reference:
https://github.com/electron/electron/blob/master/atom/browser/atom_permission_manager.cc#L93

atom/browser/api/atom_api_web_contents.cc
content::RenderFrameHost* render_frame_host) {
  if (!render_frame_host->GetParent())
    Emit("dom-ready");
}
void WebContents::DidFinishLoad(content::RenderFrameHost* render_frame_host,
                                const GURL& validated_url) {
  bool is_main_frame = !render_frame_host->GetParent();
  Emit("did-frame-finish-load", is_main_frame);
  if (is_main_frame)
    Emit("did-finish-load");
}
void WebContents::DidFailProvisionalLoad(
    content::RenderFrameHost* render_frame_host,
    const GURL& url,
    int code,
    const base::string16& description,
    bool was_ignored_by_handler) {
  bool is_main_frame = !render_frame_host->GetParent();
  Emit("did-fail-provisional-load", code, description, url, is_main_frame);
  Emit("did-fail-load", code, description, url, is_main_frame);
}
void WebContents::DidFailLoad(content::RenderFrameHost* render_frame_host,
                              const GURL& url,
                              int error_code,
                              const base::string16& error_description,
                              bool was_ignored_by_handler) {
  bool is_main_frame = !render_frame_host->GetParent();
  Emit("did-fail-load", error_code, error_description, url, is_main_frame);
}
void WebContents::DidStartLoading() {