* 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.cc
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) {
  base::PostTaskWithTraits(
      FROM_HERE, {BrowserThread::UI},
      base::BindOnce(&HandleExternalProtocolInUI, url, web_contents_getter,
                     has_user_gesture));
  return true;
}
std::vector<std::unique_ptr<content::NavigationThrottle>>
AtomBrowserClient::CreateThrottlesForNavigation(
    content::NavigationHandle* handle) {
  std::vector<std::unique_ptr<content::NavigationThrottle>> throttles;
  throttles.push_back(std::make_unique<AtomNavigationThrottle>(handle));
  return throttles;
}
content::MediaObserver* AtomBrowserClient::GetMediaObserver() {