* Output of `node_modules/.bin/electron --version`:
v3.0.6
v4.0.0-beta.5

* Operating System (Platform and Version):
macOS High Siearra 10.13.6

* Output of `node_modules/.bin/electron --version` on last known working Electron version (if applicable):
v2.0.11

**Expected Behavior**
BrowserWindow.getNativeWindowHandle() must return non-nullable result.

**Actual behavior**
BrowserWindow.getNativeWindowHandle() returns null.

**To Reproduce**

***Sample code***
```
const { app, BrowserWindow } = require('electron');

let win

app
	.on('ready', () => {
		win = new BrowserWindow({width: 800, height: 600})
		win.loadURL('https://www.google.com')
		
		win.on('closed', () => win = null);

		const handle = win.getNativeWindowHandle();
		console.log('Current window: ' + handle.toString('hex'));
	})
	.on('window-all-closed', () => app.quit());
```

***Expected output***
Something different than `Current window: 0000000000000000`

***Actual output***
`Current window: 0000000000000000`
atom/browser/native_window.h
NativeWindow* parent() const { return parent_; }
  bool is_modal() const { return is_modal_; }
 protected:
  NativeWindow(const mate::Dictionary& options, NativeWindow* parent);
  
  views::Widget* GetWidget() override;
  const views::Widget* GetWidget() const override;
  void set_content_view(views::View* view) { content_view_ = view; }
  void set_browser_view(NativeBrowserView* browser_view) {
    browser_view_ = browser_view;
  }
 private:
  std::unique_ptr<views::Widget> widget_;
  
  views::View* content_view_ = nullptr;
  
  bool has_frame_ = true;
  
  bool transparent_ = false;
  
  extensions::SizeConstraints size_constraints_;
  
  bool enable_larger_than_screen_ = false;
  
  bool is_closed_ = false;
  
  
  double sheet_offset_x_ = 0.0;
  double sheet_offset_y_ = 0.0;