### Preflight Checklist
* [x] I have read the [Contributing Guidelines](https://github.com/electron/electron/blob/master/CONTRIBUTING.md) for this project.
* [x] I agree to follow the [Code of Conduct](https://github.com/electron/electron/blob/master/CODE_OF_CONDUCT.md) that this project adheres to.
* [x] I have searched the issue tracker for an issue that matches the one I want to file, without success.

### Issue Details

* **Electron Version:**
  * 6.0.0-beta.15
* **Operating System:**
  * Windows 10 64bit
* **Last Known Working Electron version:**
  * 5.0.8

### Expected Behavior
The window restores its size to what it used to be

### Actual Behavior
The window is shown in the smallest size

### To Reproduce
1) Maximize Window
2) Minimize Window
3) Restore Window (click on the icon in the taskbar)
4) Unmaximize Window

### Screenshots
![grafik](https://user-images.githubusercontent.com/10595986/61781949-84f18100-ae05-11e9-8983-17edb536427f.png)


shell/browser/native_window_views_win.cc
RECT rcClient;
  ::GetWindowRect(hwnd, &rcClient);
  ::SetWindowPos(hwnd, NULL, rcClient.left, rcClient.top,
                 rcClient.right - rcClient.left, rcClient.bottom - rcClient.top,
                 SWP_FRAMECHANGED);
}
}  
std::set<NativeWindowViews*> NativeWindowViews::forwarding_windows_;
HHOOK NativeWindowViews::mouse_hook_ = NULL;
void NativeWindowViews::Maximize() {
  int autohide_edges = 0;
  if (!has_frame())
    autohide_edges = GetAppbarAutohideEdges(GetAcceleratedWidget());
  
  
  
  if ((::GetWindowLong(GetAcceleratedWidget(), GWL_STYLE) & WS_THICKFRAME) &&
      (has_frame() || autohide_edges == 0)) {
    if (IsVisible())
      widget()->Maximize();
    else
      widget()->native_widget_private()->Show(ui::SHOW_STATE_MAXIMIZED,
                                              gfx::Rect());
    return;