* 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
return opacity_;
}
void NativeWindowViews::SetIgnoreMouseEvents(bool ignore, bool forward) {
#if defined(OS_WIN)
  LONG ex_style = ::GetWindowLong(GetAcceleratedWidget(), GWL_EXSTYLE);
  if (ignore)
    ex_style |= (WS_EX_TRANSPARENT | WS_EX_LAYERED);
  else
    ex_style &= ~(WS_EX_TRANSPARENT | WS_EX_LAYERED);
  if (layered_)
    ex_style |= WS_EX_LAYERED;
  ::SetWindowLong(GetAcceleratedWidget(), GWL_EXSTYLE, ex_style);
  
  if (!ignore) {
    SetForwardMouseMessages(false);
  } else {
    SetForwardMouseMessages(forward);
  }
#elif defined(USE_X11)
  if (ignore) {
    XRectangle r = {0, 0, 1, 1};
    XShapeCombineRectangles(gfx::GetXDisplay(), GetAcceleratedWidget(),
                            ShapeInput, 0, 0, &r, 1, ShapeSet, YXBanded);
  } else {
    XShapeCombineMask(gfx::GetXDisplay(), GetAcceleratedWidget(), ShapeInput, 0,
                      0, x11::None, ShapeSet);
  }
#endif
}
void NativeWindowViews::SetContentProtection(bool enable) {