Index: ui/views/win/hwnd_message_handler.cc |
diff --git a/ui/views/win/hwnd_message_handler.cc b/ui/views/win/hwnd_message_handler.cc |
index d726ea930d98d95feceb2da247503f41c5fabb27..e5b3bd50b514d8acbaf810e9a7d644ed536045e5 100644 |
--- a/ui/views/win/hwnd_message_handler.cc |
+++ b/ui/views/win/hwnd_message_handler.cc |
@@ -868,6 +868,23 @@ void HWNDMessageHandler::SetFullscreen(bool fullscreen) { |
PerformDwmTransition(); |
} |
+void HWNDMessageHandler::SizeConstraintsChanged() { |
+ bool can_resize = delegate_->CanResize(); |
+ bool can_maximize = delegate_->CanMaximize(); |
+ LONG style = GetWindowLong(hwnd(), GWL_STYLE); |
+ if (can_resize && can_maximize) { |
+ style |= WS_MINIMIZEBOX | WS_MAXIMIZEBOX; |
+ } else { |
+ style &= ~(WS_MINIMIZEBOX | WS_MAXIMIZEBOX); |
+ } |
+ if (can_resize) { |
+ style |= WS_THICKFRAME; |
+ } else { |
+ style &= ~WS_THICKFRAME; |
+ } |
+ SetWindowLong(hwnd(), GWL_STYLE, style); |
+} |
+ |
//////////////////////////////////////////////////////////////////////////////// |
// HWNDMessageHandler, InputMethodDelegate implementation: |