Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1227)

Side by Side Diff: chrome/browser/ui/cocoa/apps/native_app_window_cocoa.mm

Issue 338773002: [Mac] Make app window backgrounds white. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/apps/native_app_window_cocoa.h" 5 #include "chrome/browser/ui/cocoa/apps/native_app_window_cocoa.h"
6 6
7 #include "apps/app_shim/extension_app_shim_handler_mac.h" 7 #include "apps/app_shim/extension_app_shim_handler_mac.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/mac/foundation_util.h" 9 #include "base/mac/foundation_util.h"
10 #include "base/mac/mac_util.h" 10 #include "base/mac/mac_util.h"
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after
210 @interface ShellNSWindow : ChromeEventProcessingWindow 210 @interface ShellNSWindow : ChromeEventProcessingWindow
211 @end 211 @end
212 @implementation ShellNSWindow 212 @implementation ShellNSWindow
213 213
214 // Similar to ChromeBrowserWindow, don't draw the title, but allow it to be seen 214 // Similar to ChromeBrowserWindow, don't draw the title, but allow it to be seen
215 // in menus, Expose, etc. 215 // in menus, Expose, etc.
216 - (BOOL)_isTitleHidden { 216 - (BOOL)_isTitleHidden {
217 return YES; 217 return YES;
218 } 218 }
219 219
220 - (void)drawCustomFrameRect:(NSRect)rect forView:(NSView*)view {
221 [super drawCustomFrameRect:rect
222 forView:view];
223
224 // Make the background color of the content area white.
225 NSRect contentRect = [NSWindow contentRectForFrameRect:rect
226 styleMask:[self styleMask]];
227 [[NSBezierPath bezierPathWithRect:contentRect] addClip];
228 [[NSColor whiteColor] set];
229 NSRectFill(rect);
230 }
231
220 @end 232 @end
221 233
222 @interface ShellCustomFrameNSWindow : ShellNSWindow { 234 @interface ShellCustomFrameNSWindow : ShellNSWindow {
223 @private 235 @private
224 base::scoped_nsobject<NSColor> color_; 236 base::scoped_nsobject<NSColor> color_;
225 base::scoped_nsobject<NSColor> inactiveColor_; 237 base::scoped_nsobject<NSColor> inactiveColor_;
226 } 238 }
227 239
228 - (void)setColor:(NSColor*)color 240 - (void)setColor:(NSColor*)color
229 inactiveColor:(NSColor*)inactiveColor; 241 inactiveColor:(NSColor*)inactiveColor;
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
333 345
334 // Estimate the initial bounds of the window. Once the frame insets are known, 346 // Estimate the initial bounds of the window. Once the frame insets are known,
335 // the window bounds and constraints can be set precisely. 347 // the window bounds and constraints can be set precisely.
336 NSRect cocoa_bounds = GfxToCocoaBounds( 348 NSRect cocoa_bounds = GfxToCocoaBounds(
337 params.GetInitialWindowBounds(gfx::Insets())); 349 params.GetInitialWindowBounds(gfx::Insets()));
338 window.reset([[window_class alloc] 350 window.reset([[window_class alloc]
339 initWithContentRect:cocoa_bounds 351 initWithContentRect:cocoa_bounds
340 styleMask:GetWindowStyleMask() 352 styleMask:GetWindowStyleMask()
341 backing:NSBackingStoreBuffered 353 backing:NSBackingStoreBuffered
342 defer:NO]); 354 defer:NO]);
343 355
tapted 2014/06/17 00:21:53 would it make sense to just call [window setBackgr
jackhou1 2014/06/17 00:37:15 That seems to make the entire background white (in
tapted 2014/06/17 06:09:51 Ah - yeah that would suck.
344 std::string name; 356 std::string name;
345 const extensions::Extension* extension = app_window_->GetExtension(); 357 const extensions::Extension* extension = app_window_->GetExtension();
346 if (extension) 358 if (extension)
347 name = extension->name(); 359 name = extension->name();
348 [window setTitle:base::SysUTF8ToNSString(name)]; 360 [window setTitle:base::SysUTF8ToNSString(name)];
349 [[window contentView] cr_setWantsLayer:YES]; 361 [[window contentView] cr_setWantsLayer:YES];
350 if (has_frame_ && has_frame_color_) { 362 if (has_frame_ && has_frame_color_) {
351 [base::mac::ObjCCastStrict<ShellCustomFrameNSWindow>(window) 363 [base::mac::ObjCCastStrict<ShellCustomFrameNSWindow>(window)
352 setColor:gfx::SkColorToSRGBNSColor(active_frame_color_) 364 setColor:gfx::SkColorToSRGBNSColor(active_frame_color_)
353 inactiveColor:gfx::SkColorToSRGBNSColor(inactive_frame_color_)]; 365 inactiveColor:gfx::SkColorToSRGBNSColor(inactive_frame_color_)];
(...skipping 609 matching lines...) Expand 10 before | Expand all | Expand 10 after
963 } 975 }
964 976
965 void NativeAppWindowCocoa::UpdateRestoredBounds() { 977 void NativeAppWindowCocoa::UpdateRestoredBounds() {
966 if (IsRestored(*this)) 978 if (IsRestored(*this))
967 restored_bounds_ = [window() frame]; 979 restored_bounds_ = [window() frame];
968 } 980 }
969 981
970 void NativeAppWindowCocoa::HideWithoutMarkingHidden() { 982 void NativeAppWindowCocoa::HideWithoutMarkingHidden() {
971 [window() orderOut:window_controller_]; 983 [window() orderOut:window_controller_];
972 } 984 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698