Commit b1400bfb authored by pkotwicz's avatar pkotwicz Committed by Commit bot

Disables the maximize button for an app window with a maximum size and a custom frame color

BUG=416214
TEST=Manual, see bug

Review URL: https://codereview.chromium.org/588873002

Cr-Commit-Position: refs/heads/master@{#295922}
parent 49ce0fa0
...@@ -229,6 +229,13 @@ void AppWindowFrameView::GetWindowMask(const gfx::Size& size, ...@@ -229,6 +229,13 @@ void AppWindowFrameView::GetWindowMask(const gfx::Size& size,
// We got nothing to say about no window mask. // We got nothing to say about no window mask.
} }
void AppWindowFrameView::SizeConstraintsChanged() {
if (draw_frame_) {
maximize_button_->SetEnabled(widget_->widget_delegate() &&
widget_->widget_delegate()->CanMaximize());
}
}
gfx::Size AppWindowFrameView::GetPreferredSize() const { gfx::Size AppWindowFrameView::GetPreferredSize() const {
gfx::Size pref = widget_->client_view()->GetPreferredSize(); gfx::Size pref = widget_->client_view()->GetPreferredSize();
gfx::Rect bounds(0, 0, pref.width(), pref.height()); gfx::Rect bounds(0, 0, pref.width(), pref.height());
...@@ -250,10 +257,8 @@ void AppWindowFrameView::Layout() { ...@@ -250,10 +257,8 @@ void AppWindowFrameView::Layout() {
close_size.width(), close_size.width(),
close_size.height()); close_size.height());
bool can_ever_resize = widget_->widget_delegate() maximize_button_->SetEnabled(widget_->widget_delegate() &&
? widget_->widget_delegate()->CanResize() widget_->widget_delegate()->CanMaximize());
: false;
maximize_button_->SetEnabled(can_ever_resize);
gfx::Size maximize_size = maximize_button_->GetPreferredSize(); gfx::Size maximize_size = maximize_button_->GetPreferredSize();
maximize_button_->SetBounds( maximize_button_->SetBounds(
close_button_->x() - kButtonSpacing - maximize_size.width(), close_button_->x() - kButtonSpacing - maximize_size.width(),
......
...@@ -77,7 +77,7 @@ class AppWindowFrameView : public views::NonClientFrameView, ...@@ -77,7 +77,7 @@ class AppWindowFrameView : public views::NonClientFrameView,
virtual void ResetWindowControls() OVERRIDE {} virtual void ResetWindowControls() OVERRIDE {}
virtual void UpdateWindowIcon() OVERRIDE {} virtual void UpdateWindowIcon() OVERRIDE {}
virtual void UpdateWindowTitle() OVERRIDE {} virtual void UpdateWindowTitle() OVERRIDE {}
virtual void SizeConstraintsChanged() OVERRIDE {} virtual void SizeConstraintsChanged() OVERRIDE;
// views::View implementation. // views::View implementation.
virtual gfx::Size GetPreferredSize() const OVERRIDE; virtual gfx::Size GetPreferredSize() const OVERRIDE;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment