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

Side by Side Diff: chrome/browser/ui/cocoa/browser_window_controller.mm

Issue 1917973002: mac: Remove IsOSLion(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: tapted Created 4 years, 8 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
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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 #import "chrome/browser/ui/cocoa/browser_window_controller.h" 5 #import "chrome/browser/ui/cocoa/browser_window_controller.h"
6 6
7 #include <cmath> 7 #include <cmath>
8 #include <numeric> 8 #include <numeric>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
195 [base::mac::ObjCCastStrict<ChromeEventProcessingWindow>(window) 195 [base::mac::ObjCCastStrict<ChromeEventProcessingWindow>(window)
196 setCommandHandler:[[[BrowserWindowCommandHandler alloc] init] 196 setCommandHandler:[[[BrowserWindowCommandHandler alloc] init]
197 autorelease]]; 197 autorelease]];
198 } 198 }
199 199
200 } // namespace 200 } // namespace
201 201
202 @interface NSWindow (NSPrivateApis) 202 @interface NSWindow (NSPrivateApis)
203 // Note: These functions are private, use -[NSObject respondsToSelector:] 203 // Note: These functions are private, use -[NSObject respondsToSelector:]
204 // before calling them. 204 // before calling them.
205
206 - (void)setBottomCornerRounded:(BOOL)rounded;
207
208 - (NSRect)_growBoxRect; 205 - (NSRect)_growBoxRect;
209
210 @end 206 @end
211 207
212 @implementation BrowserWindowController 208 @implementation BrowserWindowController
213 209
214 + (BrowserWindowController*)browserWindowControllerForWindow:(NSWindow*)window { 210 + (BrowserWindowController*)browserWindowControllerForWindow:(NSWindow*)window {
215 while (window) { 211 while (window) {
216 id controller = [window windowController]; 212 id controller = [window windowController];
217 if ([controller isKindOfClass:[BrowserWindowController class]]) 213 if ([controller isKindOfClass:[BrowserWindowController class]])
218 return (BrowserWindowController*)controller; 214 return (BrowserWindowController*)controller;
219 window = [window parentWindow]; 215 window = [window parentWindow];
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
257 [[self window] setMinSize:minSize]; 253 [[self window] setMinSize:minSize];
258 254
259 // Create the bar visibility lock set; 10 is arbitrary, but should hopefully 255 // Create the bar visibility lock set; 10 is arbitrary, but should hopefully
260 // be big enough to hold all locks that'll ever be needed. 256 // be big enough to hold all locks that'll ever be needed.
261 barVisibilityLocks_.reset([[NSMutableSet setWithCapacity:10] retain]); 257 barVisibilityLocks_.reset([[NSMutableSet setWithCapacity:10] retain]);
262 258
263 // Lion will attempt to automagically save and restore the UI. This 259 // Lion will attempt to automagically save and restore the UI. This
264 // functionality appears to be leaky (or at least interacts badly with our 260 // functionality appears to be leaky (or at least interacts badly with our
265 // architecture) and thus BrowserWindowController never gets released. This 261 // architecture) and thus BrowserWindowController never gets released. This
266 // prevents the browser from being able to quit <http://crbug.com/79113>. 262 // prevents the browser from being able to quit <http://crbug.com/79113>.
267 if ([window respondsToSelector:@selector(setRestorable:)]) 263 [window setRestorable:NO];
268 [window setRestorable:NO];
269 264
270 // Get the windows to swish in on Lion. 265 // Get the windows to swish in on Lion.
271 if ([window respondsToSelector:@selector(setAnimationBehavior:)]) 266 [window setAnimationBehavior:NSWindowAnimationBehaviorDocumentWindow];
272 [window setAnimationBehavior:NSWindowAnimationBehaviorDocumentWindow];
273 267
274 // Get the most appropriate size for the window, then enforce the 268 // Get the most appropriate size for the window, then enforce the
275 // minimum width and height. The window shim will handle flipping 269 // minimum width and height. The window shim will handle flipping
276 // the coordinates for us so we can use it to save some code. 270 // the coordinates for us so we can use it to save some code.
277 // Note that this may leave a significant portion of the window 271 // Note that this may leave a significant portion of the window
278 // offscreen, but there will always be enough window onscreen to 272 // offscreen, but there will always be enough window onscreen to
279 // drag the whole window back into view. 273 // drag the whole window back into view.
280 ui::WindowShowState show_state = ui::SHOW_STATE_DEFAULT; 274 ui::WindowShowState show_state = ui::SHOW_STATE_DEFAULT;
281 gfx::Rect desiredContentRect; 275 gfx::Rect desiredContentRect;
282 chrome::GetSavedWindowBoundsAndShowState(browser_.get(), 276 chrome::GetSavedWindowBoundsAndShowState(browser_.get(),
(...skipping 1570 matching lines...) Expand 10 before | Expand all | Expand 10 after
1853 1847
1854 - (TabAlertState)alertState { 1848 - (TabAlertState)alertState {
1855 return static_cast<BrowserWindowCocoa*>([self browserWindow])->alert_state(); 1849 return static_cast<BrowserWindowCocoa*>([self browserWindow])->alert_state();
1856 } 1850 }
1857 1851
1858 @end // @implementation BrowserWindowController 1852 @end // @implementation BrowserWindowController
1859 1853
1860 @implementation BrowserWindowController(Fullscreen) 1854 @implementation BrowserWindowController(Fullscreen)
1861 1855
1862 - (void)handleLionToggleFullscreen { 1856 - (void)handleLionToggleFullscreen {
1863 DCHECK(base::mac::IsOSLionOrLater());
1864 chrome::ExecuteCommand(browser_.get(), IDC_FULLSCREEN); 1857 chrome::ExecuteCommand(browser_.get(), IDC_FULLSCREEN);
1865 } 1858 }
1866 1859
1867 - (void)enterBrowserFullscreenWithToolbar:(BOOL)withToolbar { 1860 - (void)enterBrowserFullscreenWithToolbar:(BOOL)withToolbar {
1868 if (!chrome::mac::SupportsSystemFullscreen()) { 1861 if (!chrome::mac::SupportsSystemFullscreen()) {
1869 if (![self isInImmersiveFullscreen]) 1862 if (![self isInImmersiveFullscreen])
1870 [self enterImmersiveFullscreen]; 1863 [self enterImmersiveFullscreen];
1871 return; 1864 return;
1872 } 1865 }
1873 1866
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
2069 2062
2070 - (BOOL)isTabbedWindow { 2063 - (BOOL)isTabbedWindow {
2071 return browser_->is_type_tabbed(); 2064 return browser_->is_type_tabbed();
2072 } 2065 }
2073 2066
2074 - (NSRect)savedRegularWindowFrame { 2067 - (NSRect)savedRegularWindowFrame {
2075 return savedRegularWindowFrame_; 2068 return savedRegularWindowFrame_;
2076 } 2069 }
2077 2070
2078 @end // @implementation BrowserWindowController(WindowType) 2071 @end // @implementation BrowserWindowController(WindowType)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698