Chromium Code Reviews| Index: chrome/browser/ui/views/apps/app_window_native_widget_mac.mm |
| diff --git a/chrome/browser/ui/views/apps/app_window_native_widget_mac.mm b/chrome/browser/ui/views/apps/app_window_native_widget_mac.mm |
| index 1bab9b8373373bc19105d504b911f2a1fee03e52..e21795759d9237c9da3b18d279f709bfea36a777 100644 |
| --- a/chrome/browser/ui/views/apps/app_window_native_widget_mac.mm |
| +++ b/chrome/browser/ui/views/apps/app_window_native_widget_mac.mm |
| @@ -6,7 +6,9 @@ |
| #import <Cocoa/Cocoa.h> |
| +#import "base/mac/foundation_util.h" |
| #import "chrome/browser/ui/cocoa/apps/titlebar_background_view.h" |
| +#import "chrome/browser/ui/cocoa/chrome_command_dispatcher_delegate.h" |
| #import "chrome/browser/ui/views/frame/native_widget_mac_frameless_nswindow.h" |
| #include "extensions/browser/app_window/native_app_window.h" |
| #import "ui/base/cocoa/window_size_constants.h" |
| @@ -14,8 +16,10 @@ |
| AppWindowNativeWidgetMac::AppWindowNativeWidgetMac( |
| views::Widget* widget, |
| extensions::NativeAppWindow* native_app_window) |
| - : NativeWidgetMac(widget), native_app_window_(native_app_window) { |
| -} |
| + : NativeWidgetMac(widget), |
| + native_app_window_(native_app_window), |
| + command_dispatcher_delegate_( |
| + [[ChromeCommandDispatcherDelegate alloc] init]) {} |
| AppWindowNativeWidgetMac::~AppWindowNativeWidgetMac() { |
| } |
| @@ -32,6 +36,8 @@ NSWindow* AppWindowNativeWidgetMac::CreateNSWindow( |
| activeColor:native_app_window_->ActiveFrameColor() |
| inactiveColor:native_app_window_->InactiveFrameColor()]; |
| } |
| + [base::mac::ObjCCastStrict<NativeWidgetMacNSWindow>(ns_window) |
|
tapted
2015/08/27 02:58:18
Should we change the return type of CreateNSWindow
jackhou1
2015/08/27 22:37:47
Yeah I considered that, but didn't because native_
tapted
2015/08/28 01:36:06
Yeah.. I think so. It's ok just for the forward de
jackhou1
2015/08/28 05:15:09
Done.
tapted
2015/08/28 05:48:14
Ah, good point!
|
| + setCommandDispatcherDelegate:command_dispatcher_delegate_]; |
| return ns_window; |
| } |
| @@ -40,9 +46,12 @@ NSWindow* AppWindowNativeWidgetMac::CreateNSWindow( |
| NSUInteger style_mask = NSTexturedBackgroundWindowMask | NSTitledWindowMask | |
| NSClosableWindowMask | NSMiniaturizableWindowMask | |
| NSResizableWindowMask; |
| - return [[[NativeWidgetMacFramelessNSWindow alloc] |
| - initWithContentRect:ui::kWindowSizeDeterminedLater |
| - styleMask:style_mask |
| - backing:NSBackingStoreBuffered |
| - defer:NO] autorelease]; |
| + base::scoped_nsobject<NativeWidgetMacFramelessNSWindow> ns_window( |
| + [[NativeWidgetMacFramelessNSWindow alloc] |
| + initWithContentRect:ui::kWindowSizeDeterminedLater |
| + styleMask:style_mask |
| + backing:NSBackingStoreBuffered |
| + defer:NO]); |
| + [ns_window setCommandDispatcherDelegate:command_dispatcher_delegate_]; |
| + return ns_window.autorelease(); |
| } |