| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/cocoa/toolbar/media_router_action_platform_delegate_
cocoa.h" | 5 #include "chrome/browser/ui/cocoa/toolbar/media_router_action_platform_delegate_
cocoa.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "base/memory/ptr_util.h" |
| 8 #include "chrome/browser/ui/browser.h" | 9 #include "chrome/browser/ui/browser.h" |
| 9 #include "chrome/browser/ui/browser_window.h" | 10 #include "chrome/browser/ui/browser_window.h" |
| 10 #import "chrome/browser/ui/cocoa/app_menu/app_menu_controller.h" | 11 #import "chrome/browser/ui/cocoa/app_menu/app_menu_controller.h" |
| 11 #import "chrome/browser/ui/cocoa/browser_window_controller.h" | 12 #import "chrome/browser/ui/cocoa/browser_window_controller.h" |
| 12 #import "chrome/browser/ui/cocoa/toolbar/toolbar_controller.h" | 13 #import "chrome/browser/ui/cocoa/toolbar/toolbar_controller.h" |
| 13 | 14 |
| 14 // static | 15 // static |
| 15 scoped_ptr<MediaRouterActionPlatformDelegate> | 16 std::unique_ptr<MediaRouterActionPlatformDelegate> |
| 16 MediaRouterActionPlatformDelegate::Create(Browser* browser) { | 17 MediaRouterActionPlatformDelegate::Create(Browser* browser) { |
| 17 return make_scoped_ptr(new MediaRouterActionPlatformDelegateCocoa(browser)); | 18 return base::WrapUnique(new MediaRouterActionPlatformDelegateCocoa(browser)); |
| 18 } | 19 } |
| 19 | 20 |
| 20 MediaRouterActionPlatformDelegateCocoa::MediaRouterActionPlatformDelegateCocoa( | 21 MediaRouterActionPlatformDelegateCocoa::MediaRouterActionPlatformDelegateCocoa( |
| 21 Browser* browser) | 22 Browser* browser) |
| 22 : MediaRouterActionPlatformDelegate(), | 23 : MediaRouterActionPlatformDelegate(), |
| 23 browser_(browser) { | 24 browser_(browser) { |
| 24 DCHECK(browser_); | 25 DCHECK(browser_); |
| 25 } | 26 } |
| 26 | 27 |
| 27 MediaRouterActionPlatformDelegateCocoa:: | 28 MediaRouterActionPlatformDelegateCocoa:: |
| 28 ~MediaRouterActionPlatformDelegateCocoa() { | 29 ~MediaRouterActionPlatformDelegateCocoa() { |
| 29 } | 30 } |
| 30 | 31 |
| 31 bool MediaRouterActionPlatformDelegateCocoa::CloseOverflowMenuIfOpen() { | 32 bool MediaRouterActionPlatformDelegateCocoa::CloseOverflowMenuIfOpen() { |
| 32 // TODO(apacible): This should be factored to share code with extension | 33 // TODO(apacible): This should be factored to share code with extension |
| 33 // actions. | 34 // actions. |
| 34 AppMenuController* appMenuController = | 35 AppMenuController* appMenuController = |
| 35 [[[BrowserWindowController | 36 [[[BrowserWindowController |
| 36 browserWindowControllerForWindow: | 37 browserWindowControllerForWindow: |
| 37 browser_->window()->GetNativeWindow()] | 38 browser_->window()->GetNativeWindow()] |
| 38 toolbarController] appMenuController]; | 39 toolbarController] appMenuController]; |
| 39 if (![appMenuController isMenuOpen]) | 40 if (![appMenuController isMenuOpen]) |
| 40 return false; | 41 return false; |
| 41 | 42 |
| 42 [appMenuController cancel]; | 43 [appMenuController cancel]; |
| 43 return true; | 44 return true; |
| 44 } | 45 } |
| OLD | NEW |