| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/ui/toolbar/test_toolbar_actions_bar_helper.h" | 5 #include "chrome/browser/ui/toolbar/test_toolbar_actions_bar_helper.h" |
| 6 | 6 |
| 7 #import "base/mac/scoped_nsobject.h" | 7 #import "base/mac/scoped_nsobject.h" |
| 8 #import "chrome/browser/ui/cocoa/extensions/browser_actions_container_view.h" | 8 #import "chrome/browser/ui/cocoa/extensions/browser_actions_container_view.h" |
| 9 #import "chrome/browser/ui/cocoa/extensions/browser_actions_controller.h" | 9 #import "chrome/browser/ui/cocoa/extensions/browser_actions_controller.h" |
| 10 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" | 10 #import "chrome/browser/ui/cocoa/cocoa_test_helper.h" |
| 11 | 11 |
| 12 namespace { | 12 namespace { |
| 13 | 13 |
| 14 // The cocoa implementation of the TestToolbarActionsBarHelper, which creates | 14 // The cocoa implementation of the TestToolbarActionsBarHelper, which creates |
| 15 // (and owns) a BrowserActionsController and BrowserActionsContainerView for | 15 // (and owns) a BrowserActionsController and BrowserActionsContainerView for |
| 16 // testing purposes. | 16 // testing purposes. |
| 17 class TestToolbarActionsBarHelperCocoa : public TestToolbarActionsBarHelper { | 17 class TestToolbarActionsBarHelperCocoa : public TestToolbarActionsBarHelper { |
| 18 public: | 18 public: |
| 19 TestToolbarActionsBarHelperCocoa(Browser* browser); | 19 TestToolbarActionsBarHelperCocoa(Browser* browser, |
| 20 TestToolbarActionsBarHelperCocoa* mainBar); |
| 20 ~TestToolbarActionsBarHelperCocoa() override; | 21 ~TestToolbarActionsBarHelperCocoa() override; |
| 21 | 22 |
| 22 private: | 23 private: |
| 23 // TestToolbarActionsBarHelper: | 24 // TestToolbarActionsBarHelper: |
| 24 ToolbarActionsBar* GetToolbarActionsBar() override; | 25 ToolbarActionsBar* GetToolbarActionsBar() override; |
| 25 | 26 |
| 26 // The owned BrowserActionsContainerView and BrowserActionsController; the | 27 // The owned BrowserActionsContainerView and BrowserActionsController; the |
| 27 // mac implementation of the ToolbarActionsBar delegate and view. | 28 // mac implementation of the ToolbarActionsBar delegate and view. |
| 28 base::scoped_nsobject<BrowserActionsContainerView> containerView_; | 29 base::scoped_nsobject<BrowserActionsContainerView> containerView_; |
| 29 base::scoped_nsobject<BrowserActionsController> controller_; | 30 base::scoped_nsobject<BrowserActionsController> controller_; |
| 30 | 31 |
| 31 DISALLOW_COPY_AND_ASSIGN(TestToolbarActionsBarHelperCocoa); | 32 DISALLOW_COPY_AND_ASSIGN(TestToolbarActionsBarHelperCocoa); |
| 32 }; | 33 }; |
| 33 | 34 |
| 34 TestToolbarActionsBarHelperCocoa::TestToolbarActionsBarHelperCocoa( | 35 TestToolbarActionsBarHelperCocoa::TestToolbarActionsBarHelperCocoa( |
| 35 Browser* browser) { | 36 Browser* browser, |
| 37 TestToolbarActionsBarHelperCocoa* mainBar) { |
| 36 // Make sure that Cocoa has been bootstrapped. | 38 // Make sure that Cocoa has been bootstrapped. |
| 37 CocoaTest::BootstrapCocoa(); | 39 CocoaTest::BootstrapCocoa(); |
| 38 | 40 |
| 39 containerView_.reset([[BrowserActionsContainerView alloc] | 41 containerView_.reset([[BrowserActionsContainerView alloc] |
| 40 initWithFrame:NSMakeRect(0, 0, 0, 15)]); | 42 initWithFrame:NSMakeRect(0, 0, 0, 15)]); |
| 43 BrowserActionsController* mainController = |
| 44 mainBar ? mainBar->controller_.get() : nil; |
| 41 controller_.reset([[BrowserActionsController alloc] | 45 controller_.reset([[BrowserActionsController alloc] |
| 42 initWithBrowser:browser | 46 initWithBrowser:browser |
| 43 containerView:containerView_.get() | 47 containerView:containerView_.get() |
| 44 isOverflow:NO]); | 48 mainController:mainController]); |
| 45 } | 49 } |
| 46 | 50 |
| 47 TestToolbarActionsBarHelperCocoa::~TestToolbarActionsBarHelperCocoa() {} | 51 TestToolbarActionsBarHelperCocoa::~TestToolbarActionsBarHelperCocoa() {} |
| 48 | 52 |
| 49 ToolbarActionsBar* TestToolbarActionsBarHelperCocoa::GetToolbarActionsBar() { | 53 ToolbarActionsBar* TestToolbarActionsBarHelperCocoa::GetToolbarActionsBar() { |
| 50 return [controller_ toolbarActionsBar]; | 54 return [controller_ toolbarActionsBar]; |
| 51 } | 55 } |
| 52 | 56 |
| 53 } // namespace | 57 } // namespace |
| 54 | 58 |
| 55 scoped_ptr<TestToolbarActionsBarHelper> TestToolbarActionsBarHelper::Create( | 59 scoped_ptr<TestToolbarActionsBarHelper> TestToolbarActionsBarHelper::Create( |
| 56 Browser* browser) { | 60 Browser* browser, |
| 57 return make_scoped_ptr(new TestToolbarActionsBarHelperCocoa(browser)); | 61 TestToolbarActionsBarHelper* main_bar) { |
| 62 return make_scoped_ptr(new TestToolbarActionsBarHelperCocoa( |
| 63 browser, |
| 64 static_cast<TestToolbarActionsBarHelperCocoa*>(main_bar))); |
| 58 } | 65 } |
| OLD | NEW |