* Electron Version: 2.0.0
* Operating System (Platform and Version): Windows 10
* Last known working Electron version: before commit bb5eecc16cff8053c7b04e0b9396803fbbb8c4df

**Expected Behavior**
Width and height of a window should not change while being dragged 

**Actual behavior**
Width and height become smaller.

**To Reproduce**
Create a window with:
  var mainWindow = new BrowserWindow({width: 1024, height: 880, x: 30, y: 30,
            resizable: false })

Then drag the window.  Width and height become smaller than specified (1024, 880)

**Additional Information**
NativeWindowViews::SetBounds calls SetMin/MaxSize(bounds) when resizable_ is false.  bounds get adjusted to smaller  numbers by WindowBoundsToContentBounds.

shell/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) {