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..f2b96afc6b6fcdab6c2bcf6e8910fad3c1407da8 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 |
@@ -7,10 +7,14 @@ |
#import <Cocoa/Cocoa.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" |
-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 +22,17 @@ 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()) { |
+ gfx::AddColoredTitlebarToNSWindow( |
+ ns_window, native_app_window_->ActiveFrameColor(), |
+ native_app_window_->InactiveFrameColor()); |
+ } |
+ return ns_window; |
+ } |
// NSTexturedBackgroundWindowMask is needed to implement draggable window |
// regions. |