Chromium Code Reviews| Index: chrome/browser/ui/cocoa/apps/native_app_window_cocoa.mm |
| diff --git a/chrome/browser/ui/cocoa/apps/native_app_window_cocoa.mm b/chrome/browser/ui/cocoa/apps/native_app_window_cocoa.mm |
| index 43107fe03f8e28976e23036e44051d0a26e28c98..ddf012c996f65c018e6ecf24f4f6e7de5c7674f2 100644 |
| --- a/chrome/browser/ui/cocoa/apps/native_app_window_cocoa.mm |
| +++ b/chrome/browser/ui/cocoa/apps/native_app_window_cocoa.mm |
| @@ -56,7 +56,8 @@ using apps::ShellWindow; |
| @end |
| enum { |
| - NSWindowCollectionBehaviorFullScreenPrimary = 1 << 7 |
| + NSWindowCollectionBehaviorFullScreenPrimary = 1 << 7, |
| + NSFullScreenWindowMask = 1 << 14 |
| }; |
| #endif // MAC_OS_X_VERSION_10_7 |
| @@ -85,6 +86,21 @@ enum { |
| appWindow_->WindowDidResize(); |
| } |
| +- (void)windowDidEndLiveResize:(NSNotification*)notification { |
| + if (appWindow_) |
| + appWindow_->WindowDidFinishResize(); |
| +} |
| + |
| +- (void)windowDidEnterFullScreen:(NSNotification*)notification { |
| + if (appWindow_) |
| + appWindow_->WindowDidFinishResize(); |
| +} |
| + |
| +- (void)windowDidExitFullScreen:(NSNotification*)notification { |
| + if (appWindow_) |
| + appWindow_->WindowDidFinishResize(); |
| +} |
| + |
| - (void)windowDidMove:(NSNotification*)notification { |
| if (appWindow_) |
| appWindow_->WindowDidMove(); |
| @@ -566,6 +582,7 @@ void NativeAppWindowCocoa::SetBounds(const gfx::Rect& bounds) { |
| cocoa_bounds.origin.y = NSHeight([screen frame]) - checked_bounds.bottom(); |
| [window() setFrame:cocoa_bounds display:YES]; |
| + WindowDidFinishResize(); |
|
scheib
2013/09/30 14:11:01
Place explanation summary from patch discussion in
jackhou1
2013/10/01 02:41:15
Done.
|
| } |
| void NativeAppWindowCocoa::UpdateWindowIcon() { |
| @@ -839,7 +856,7 @@ void NativeAppWindowCocoa::WindowDidResignKey() { |
| rwhv->SetActive(false); |
| } |
| -void NativeAppWindowCocoa::WindowDidResize() { |
| +void NativeAppWindowCocoa::WindowDidFinishResize() { |
| // Update |is_maximized_| if needed: |
| // - Exit maximized state if resized. |
| // - Consider us maximized if resize places us back to maximized location. |
| @@ -851,7 +868,13 @@ void NativeAppWindowCocoa::WindowDidResize() { |
| else if (NSEqualPoints(frame.origin, screen.origin)) |
| is_maximized_ = true; |
| + // Update |is_fullscreen_| if needed. |
| + is_fullscreen_ = ([window() styleMask] & NSFullScreenWindowMask) != 0; |
| + |
| UpdateRestoredBounds(); |
| +} |
| + |
| +void NativeAppWindowCocoa::WindowDidResize() { |
| shell_window_->OnNativeWindowChanged(); |
| } |