| OLD | NEW |
| 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/mac_util.h" | 9 #include "base/mac/mac_util.h" |
| 10 #include "base/strings/sys_string_conversions.h" | 10 #include "base/strings/sys_string_conversions.h" |
| (...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 153 appWindow_->WindowDidResize(); | 153 appWindow_->WindowDidResize(); |
| 154 } | 154 } |
| 155 | 155 |
| 156 - (void)windowDidEndLiveResize:(NSNotification*)notification { | 156 - (void)windowDidEndLiveResize:(NSNotification*)notification { |
| 157 if (appWindow_) | 157 if (appWindow_) |
| 158 appWindow_->WindowDidFinishResize(); | 158 appWindow_->WindowDidFinishResize(); |
| 159 } | 159 } |
| 160 | 160 |
| 161 - (void)windowDidEnterFullScreen:(NSNotification*)notification { | 161 - (void)windowDidEnterFullScreen:(NSNotification*)notification { |
| 162 if (appWindow_) | 162 if (appWindow_) |
| 163 appWindow_->WindowDidFinishResize(); | 163 appWindow_->WindowDidEnterFullscreen(); |
| 164 } | 164 } |
| 165 | 165 |
| 166 - (void)windowDidExitFullScreen:(NSNotification*)notification { | 166 - (void)windowDidExitFullScreen:(NSNotification*)notification { |
| 167 if (appWindow_) | 167 if (appWindow_) |
| 168 appWindow_->WindowDidFinishResize(); | 168 appWindow_->WindowDidExitFullscreen(); |
| 169 } | 169 } |
| 170 | 170 |
| 171 - (void)windowDidMove:(NSNotification*)notification { | 171 - (void)windowDidMove:(NSNotification*)notification { |
| 172 if (appWindow_) | 172 if (appWindow_) |
| 173 appWindow_->WindowDidMove(); | 173 appWindow_->WindowDidMove(); |
| 174 } | 174 } |
| 175 | 175 |
| 176 - (void)windowDidMiniaturize:(NSNotification*)notification { | 176 - (void)windowDidMiniaturize:(NSNotification*)notification { |
| 177 if (appWindow_) | 177 if (appWindow_) |
| 178 appWindow_->WindowDidMiniaturize(); | 178 appWindow_->WindowDidMiniaturize(); |
| (...skipping 639 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 818 // - Exit maximized state if resized. | 818 // - Exit maximized state if resized. |
| 819 // - Consider us maximized if resize places us back to maximized location. | 819 // - Consider us maximized if resize places us back to maximized location. |
| 820 // This happens when returning from fullscreen. | 820 // This happens when returning from fullscreen. |
| 821 NSRect frame = [window() frame]; | 821 NSRect frame = [window() frame]; |
| 822 NSRect screen = [[window() screen] visibleFrame]; | 822 NSRect screen = [[window() screen] visibleFrame]; |
| 823 if (!NSEqualSizes(frame.size, screen.size)) | 823 if (!NSEqualSizes(frame.size, screen.size)) |
| 824 is_maximized_ = false; | 824 is_maximized_ = false; |
| 825 else if (NSEqualPoints(frame.origin, screen.origin)) | 825 else if (NSEqualPoints(frame.origin, screen.origin)) |
| 826 is_maximized_ = true; | 826 is_maximized_ = true; |
| 827 | 827 |
| 828 // Update |is_fullscreen_| if needed. | |
| 829 is_fullscreen_ = ([window() styleMask] & NSFullScreenWindowMask) != 0; | |
| 830 // If not fullscreen but the window is constrained, disable the fullscreen UI | |
| 831 // control. | |
| 832 if (!is_fullscreen_ && !shows_fullscreen_controls_) | |
| 833 SetFullScreenCollectionBehavior(window(), false); | |
| 834 | |
| 835 UpdateRestoredBounds(); | 828 UpdateRestoredBounds(); |
| 836 } | 829 } |
| 837 | 830 |
| 838 void NativeAppWindowCocoa::WindowDidResize() { | 831 void NativeAppWindowCocoa::WindowDidResize() { |
| 839 app_window_->OnNativeWindowChanged(); | 832 app_window_->OnNativeWindowChanged(); |
| 840 UpdateDraggableRegionViews(); | 833 UpdateDraggableRegionViews(); |
| 841 } | 834 } |
| 842 | 835 |
| 843 void NativeAppWindowCocoa::WindowDidMove() { | 836 void NativeAppWindowCocoa::WindowDidMove() { |
| 844 UpdateRestoredBounds(); | 837 UpdateRestoredBounds(); |
| 845 app_window_->OnNativeWindowChanged(); | 838 app_window_->OnNativeWindowChanged(); |
| 846 } | 839 } |
| 847 | 840 |
| 848 void NativeAppWindowCocoa::WindowDidMiniaturize() { | 841 void NativeAppWindowCocoa::WindowDidMiniaturize() { |
| 849 app_window_->OnNativeWindowChanged(); | 842 app_window_->OnNativeWindowChanged(); |
| 850 } | 843 } |
| 851 | 844 |
| 852 void NativeAppWindowCocoa::WindowDidDeminiaturize() { | 845 void NativeAppWindowCocoa::WindowDidDeminiaturize() { |
| 853 app_window_->OnNativeWindowChanged(); | 846 app_window_->OnNativeWindowChanged(); |
| 854 } | 847 } |
| 855 | 848 |
| 849 void NativeAppWindowCocoa::WindowDidEnterFullscreen() { |
| 850 is_fullscreen_ = true; |
| 851 app_window_->OSFullscreen(); |
| 852 app_window_->OnNativeWindowChanged(); |
| 853 } |
| 854 |
| 855 void NativeAppWindowCocoa::WindowDidExitFullscreen() { |
| 856 is_fullscreen_ = false; |
| 857 if (!shows_fullscreen_controls_) |
| 858 SetFullScreenCollectionBehavior(window(), false); |
| 859 |
| 860 app_window_->Restore(); |
| 861 app_window_->OnNativeWindowChanged(); |
| 862 } |
| 863 |
| 856 void NativeAppWindowCocoa::WindowWillZoom() { | 864 void NativeAppWindowCocoa::WindowWillZoom() { |
| 857 // See top of file NOTE: Maximize and Zoom. | 865 // See top of file NOTE: Maximize and Zoom. |
| 858 if (IsMaximized()) | 866 if (IsMaximized()) |
| 859 Restore(); | 867 Restore(); |
| 860 else | 868 else |
| 861 Maximize(); | 869 Maximize(); |
| 862 } | 870 } |
| 863 | 871 |
| 864 bool NativeAppWindowCocoa::HandledByExtensionCommand(NSEvent* event) { | 872 bool NativeAppWindowCocoa::HandledByExtensionCommand(NSEvent* event) { |
| 865 return extension_keybinding_registry_->ProcessKeyEvent( | 873 return extension_keybinding_registry_->ProcessKeyEvent( |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 949 } | 957 } |
| 950 | 958 |
| 951 void NativeAppWindowCocoa::UpdateRestoredBounds() { | 959 void NativeAppWindowCocoa::UpdateRestoredBounds() { |
| 952 if (IsRestored(*this)) | 960 if (IsRestored(*this)) |
| 953 restored_bounds_ = [window() frame]; | 961 restored_bounds_ = [window() frame]; |
| 954 } | 962 } |
| 955 | 963 |
| 956 void NativeAppWindowCocoa::HideWithoutMarkingHidden() { | 964 void NativeAppWindowCocoa::HideWithoutMarkingHidden() { |
| 957 [window() orderOut:window_controller_]; | 965 [window() orderOut:window_controller_]; |
| 958 } | 966 } |
| OLD | NEW |