* Output of `node_modules/.bin/electron --version`: v5.0.0-nightly.20190107
* Operating System (Platform and Version): macOS Mojave 10.14.2 (18C54)
* Output of `node_modules/.bin/electron --version` on last known working Electron version (if applicable): never

**Expected Behavior**
Using navigator.mediaDevices.getDisplayMedia({ video: true }), a native screen picker should appear.

**Actual behavior**
The following error is thrown: NotAllowedError: Permission denied

**Screenshots**
Expected dialog
![image](https://user-images.githubusercontent.com/1120050/51625551-71736500-1f0b-11e9-9a95-1406cad95046.png)
atom/browser/atom_browser_client.h
content::RenderProcessHost* host,
      const content::ChildProcessTerminationInfo& info) override;
  bool HandleExternalProtocol(
      const GURL& url,
      content::ResourceRequestInfo::WebContentsGetter web_contents_getter,
      int child_id,
      content::NavigationUIData* navigation_data,
      bool is_main_frame,
      ui::PageTransition page_transition,
      bool has_user_gesture,
      const std::string& method,
      const net::HttpRequestHeaders& headers) override;
 private:
  struct ProcessPreferences {
    bool sandbox = false;
    bool native_window_open = false;
    bool disable_popups = false;
    bool web_security = true;
  };
  bool ShouldForceNewSiteInstance(content::RenderFrameHost* current_rfh,
                                  content::RenderFrameHost* speculative_rfh,
                                  content::BrowserContext* browser_context,
                                  const GURL& dest_url,
                                  bool has_request_started) const;
  bool NavigationWasRedirectedCrossSite(
      content::BrowserContext* browser_context,
      content::SiteInstance* current_instance,
      content::SiteInstance* speculative_instance,
      const GURL& dest_url,
      bool has_request_started) const;