| Index: ui/views/window/custom_frame_view_unittest.cc
|
| diff --git a/ui/views/window/custom_frame_view_unittest.cc b/ui/views/window/custom_frame_view_unittest.cc
|
| index 267111902144415eaead9361980e7c7483b158f4..f4dc37a093758b16d8ed13e7ef6bc50fe4d7f5f3 100644
|
| --- a/ui/views/window/custom_frame_view_unittest.cc
|
| +++ b/ui/views/window/custom_frame_view_unittest.cc
|
| @@ -16,25 +16,33 @@ namespace views {
|
|
|
| namespace {
|
|
|
| -// Allows for the control of whether or not the widget can maximize or not.
|
| -// This can be set after initial setup in order to allow testing of both forms
|
| -// of delegates. By default this can maximize.
|
| -class MaximizeStateControlDelegate : public WidgetDelegateView {
|
| +// Allows for the control of whether or not the widget can minimize/maximize or
|
| +// not. This can be set after initial setup in order to allow testing of both
|
| +// forms of delegates. By default this can minimize and maximize.
|
| +class MinimizeAndMaximizeStateControlDelegate : public WidgetDelegateView {
|
| public:
|
| - MaximizeStateControlDelegate() : can_maximize_(true) {}
|
| - virtual ~MaximizeStateControlDelegate() {}
|
| + MinimizeAndMaximizeStateControlDelegate()
|
| + : can_maximize_(true),
|
| + can_minimize_(true) {}
|
| + virtual ~MinimizeAndMaximizeStateControlDelegate() {}
|
|
|
| void set_can_maximize(bool can_maximize) {
|
| can_maximize_ = can_maximize;
|
| }
|
|
|
| + void set_can_minimize(bool can_minimize) {
|
| + can_minimize_ = can_minimize;
|
| + }
|
| +
|
| // WidgetDelegate:
|
| virtual bool CanMaximize() const OVERRIDE { return can_maximize_; }
|
| + virtual bool CanMinimize() const OVERRIDE { return can_minimize_; }
|
|
|
| private:
|
| bool can_maximize_;
|
| + bool can_minimize_;
|
|
|
| - DISALLOW_COPY_AND_ASSIGN(MaximizeStateControlDelegate);
|
| + DISALLOW_COPY_AND_ASSIGN(MinimizeAndMaximizeStateControlDelegate);
|
| };
|
|
|
| } // namespace
|
| @@ -48,8 +56,9 @@ class CustomFrameViewTest : public ViewsTestBase {
|
| return custom_frame_view_;
|
| }
|
|
|
| - MaximizeStateControlDelegate* maximize_state_control_delegate() {
|
| - return maximize_state_control_delegate_;
|
| + MinimizeAndMaximizeStateControlDelegate*
|
| + minimize_and_maximize_state_control_delegate() {
|
| + return minimize_and_maximize_state_control_delegate_;
|
| }
|
|
|
| Widget* widget() {
|
| @@ -100,8 +109,9 @@ class CustomFrameViewTest : public ViewsTestBase {
|
| // Owned by |widget_|
|
| CustomFrameView* custom_frame_view_;
|
|
|
| - // Delegate of |widget_| which controls maximizing
|
| - MaximizeStateControlDelegate* maximize_state_control_delegate_;
|
| + // Delegate of |widget_| which controls minimizing and maximizing
|
| + MinimizeAndMaximizeStateControlDelegate*
|
| + minimize_and_maximize_state_control_delegate_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(CustomFrameViewTest);
|
| };
|
| @@ -109,10 +119,11 @@ class CustomFrameViewTest : public ViewsTestBase {
|
| void CustomFrameViewTest::SetUp() {
|
| ViewsTestBase::SetUp();
|
|
|
| - maximize_state_control_delegate_ = new MaximizeStateControlDelegate;
|
| + minimize_and_maximize_state_control_delegate_ =
|
| + new MinimizeAndMaximizeStateControlDelegate;
|
| widget_ = new Widget;
|
| Widget::InitParams params = CreateParams(Widget::InitParams::TYPE_WINDOW);
|
| - params.delegate = maximize_state_control_delegate_;
|
| + params.delegate = minimize_and_maximize_state_control_delegate_;
|
| params.remove_standard_frame = true;
|
| widget_->Init(params);
|
|
|
| @@ -209,7 +220,8 @@ TEST_F(CustomFrameViewTest, MaximizeRevealsRestoreButton) {
|
| TEST_F(CustomFrameViewTest, CannotMaximizeHidesButton) {
|
| Widget* parent = widget();
|
| CustomFrameView* view = custom_frame_view();
|
| - MaximizeStateControlDelegate* delegate = maximize_state_control_delegate();
|
| + MinimizeAndMaximizeStateControlDelegate* delegate =
|
| + minimize_and_maximize_state_control_delegate();
|
| delegate->set_can_maximize(false);
|
|
|
| view->Init(parent);
|
| @@ -220,6 +232,22 @@ TEST_F(CustomFrameViewTest, CannotMaximizeHidesButton) {
|
| EXPECT_FALSE(maximize_button()->visible());
|
| }
|
|
|
| +// Tests that when the parent cannot minimize that the minimize button is not
|
| +// visible
|
| +TEST_F(CustomFrameViewTest, CannotMinimizeHidesButton) {
|
| + Widget* parent = widget();
|
| + CustomFrameView* view = custom_frame_view();
|
| + MinimizeAndMaximizeStateControlDelegate* delegate =
|
| + minimize_and_maximize_state_control_delegate();
|
| + delegate->set_can_minimize(false);
|
| +
|
| + view->Init(parent);
|
| + parent->SetBounds(gfx::Rect(0, 0, 300, 100));
|
| + parent->Show();
|
| +
|
| + EXPECT_FALSE(minimize_button()->visible());
|
| +}
|
| +
|
| // Tests that when maximized that the edge button has an increased width.
|
| TEST_F(CustomFrameViewTest, LargerEdgeButtonsWhenMaximized) {
|
| Widget* parent = widget();
|
|
|