diff --git a/atom/browser/native_window_views.cc b/atom/browser/native_window_views.cc index 9dfbe89a6cd1..93ff0f3855c1 100644 --- a/atom/browser/native_window_views.cc +++ b/atom/browser/native_window_views.cc @@ -269,6 +269,21 @@ gfx::Size NativeWindowViews::GetMaximumSize() { void NativeWindowViews::SetResizable(bool resizable) { resizable_ = resizable; + +#if defined(OS_WIN) + if (has_frame_) { + // WS_MAXIMIZEBOX => Maximize button + // WS_MINIMIZEBOX => Minimize button + // WS_THICKFRAME => Resize handle + DWORD style = ::GetWindowLong(GetAcceleratedWidget(), GWL_STYLE); + if (resizable) + style |= WS_MAXIMIZEBOX | WS_MINIMIZEBOX | WS_THICKFRAME; + else + style &= ~(WS_MAXIMIZEBOX | WS_MINIMIZEBOX | WS_THICKFRAME); + ::SetWindowLong(GetAcceleratedWidget(), GWL_STYLE, style); + } +#endif + // FIXME Implement me for X11. }