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 935d52d9556b7cc8b7600880cdaa5cfa1f566231..4657bf37999e3d659d5086ce2360a0093bd93818 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,11 +6,16 @@ |
| #import <Cocoa/Cocoa.h> |
| +#import "chrome/browser/ui/cocoa/apps/titlebar_background_view.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" |
| +#import "ui/gfx/mac/nswindow_frame_controls.h" |
|
tapted
2015/05/12 06:15:43
unused?
jackhou1
2015/05/14 02:59:13
Done.
|
| -AppWindowNativeWidgetMac::AppWindowNativeWidgetMac(views::Widget* widget) |
| - : NativeWidgetMac(widget) { |
| +AppWindowNativeWidgetMac::AppWindowNativeWidgetMac( |
| + views::Widget* widget, |
| + extensions::NativeAppWindow* native_app_window) |
| + : NativeWidgetMac(widget), native_app_window_(native_app_window) { |
| } |
| AppWindowNativeWidgetMac::~AppWindowNativeWidgetMac() { |
| @@ -18,10 +23,18 @@ AppWindowNativeWidgetMac::~AppWindowNativeWidgetMac() { |
| NSWindow* AppWindowNativeWidgetMac::CreateNSWindow( |
| const views::Widget::InitParams& params) { |
| - // If the window has a standard frame, use the same NSWindow as |
| + // If the window has a native or colored frame, use the same NSWindow as |
| // NativeWidgetMac. |
| - if (!params.remove_standard_frame) |
| - return NativeWidgetMac::CreateNSWindow(params); |
| + if (!native_app_window_->IsFrameless()) { |
| + NSWindow* ns_window = NativeWidgetMac::CreateNSWindow(params); |
| + if (native_app_window_->HasFrameColor()) { |
| + [TitlebarBackgroundView |
| + addToNSWindow:ns_window |
| + activeColor:native_app_window_->ActiveFrameColor() |
| + inactiveColor:native_app_window_->InactiveFrameColor()]; |
| + } |
| + return ns_window; |
| + } |
| // NSTexturedBackgroundWindowMask is needed to implement draggable window |
| // regions. |