- Electron version: 1.4.1
- Operating system: Windows 7 and 10

If you drag the window to the top edge to maximize it, and then call `restore()` or `unmaximize()` the window will move to the top, where the maximization happened, usually slightly out of view. 
With the regular Windows restore button it moves back to place before the drag started.

I'd really like to use a frameless window with my own window controls, but this problem comes out pretty often.

atom/browser/native_window_views.h
TaskbarHost taskbar_host_;
  
  bool checked_for_a11y_support_;
  
  bool thick_frame_;
  
  gfx::Rect restore_bounds_;
  
  base::win::ScopedHICON window_icon_;
  base::win::ScopedHICON app_icon_;
#endif
  
  std::unique_ptr<views::UnhandledKeyboardEventHandler> keyboard_event_handler_;
  
  accelerator_util::AcceleratorTable accelerator_table_;
  
  int disable_count_;
  bool use_content_size_;
  bool movable_;
  bool resizable_;
  bool maximizable_;
  bool minimizable_;
  bool fullscreenable_;
  std::string title_;
  gfx::Size widget_size_;
  DISALLOW_COPY_AND_ASSIGN(NativeWindowViews);
};
}  
#endif