* Electron Version: 2.0.2
* Operating System (Platform and Version): Win10 x64 version 1803
* Last known working Electron version: 1.9.0

**Expected Behavior**
Calling win.setResizable(false) and then win.setResizable(true) should return the window to it's original state. Specifically, it should not change the result of win.isMaximizable().

**Actual behavior**
Calling win.setResizable(false) and then win.setResizable(true) results in the window not being maximizable. The maximize button is disabled and win.isMaximizable returns false.

**To Reproduce**
In any electron application with a window that is resizable, call win.setResizable(false) and then win.setResizable(true). The window will now be impossible to maximize.
atom/browser/native_window_views.cc
#if defined(OS_WIN)
  return minimizable_;
#elif defined(USE_X11)
  return true;
#endif
}
base::string16 NativeWindowViews::GetWindowTitle() const {
  return base::UTF8ToUTF16(title_);
}
views::View* NativeWindowViews::GetContentsView() {
  return root_view_.get();
}
bool NativeWindowViews::ShouldDescendIntoChildForEventHandling(
    gfx::NativeView child,
    const gfx::Point& location) {
  
  if (draggable_region() &&
      draggable_region()->contains(location.x(), location.y()))
    return false;
  
  if (!has_frame() && CanResize()) {
    FramelessView* frame =
        static_cast<FramelessView*>(widget()->non_client_view()->frame_view());
    return frame->ResizingBorderHitTest(location) == HTNOWHERE;
  }
  return true;
}
views::ClientView* NativeWindowViews::CreateClientView(views::Widget* widget) {