OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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_private.h" | 5 #import "chrome/browser/ui/cocoa/browser_window_controller_private.h" |
6 | 6 |
7 #include <cmath> | 7 #include <cmath> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #import "base/memory/scoped_nsobject.h" | 10 #import "base/memory/scoped_nsobject.h" |
(...skipping 775 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
786 // mode, it needs to draw over the bookmark bar and part of the toolbar. | 786 // mode, it needs to draw over the bookmark bar and part of the toolbar. |
787 [[infoBarContainerController_ view] removeFromSuperview]; | 787 [[infoBarContainerController_ view] removeFromSuperview]; |
788 NSView* infoBarDest = [[self window] contentView]; | 788 NSView* infoBarDest = [[self window] contentView]; |
789 [infoBarDest addSubview:[infoBarContainerController_ view] | 789 [infoBarDest addSubview:[infoBarContainerController_ view] |
790 positioned:fullscreen ? NSWindowBelow : NSWindowAbove | 790 positioned:fullscreen ? NSWindowBelow : NSWindowAbove |
791 relativeTo:fullscreen ? nil | 791 relativeTo:fullscreen ? nil |
792 : [toolbarController_ view]]; | 792 : [toolbarController_ view]]; |
793 } | 793 } |
794 | 794 |
795 - (void)showFullscreenExitBubbleIfNecessary { | 795 - (void)showFullscreenExitBubbleIfNecessary { |
| 796 // This method is called in response to |
| 797 // |-updateFullscreenExitBubbleURL:bubbleType:|. If on Lion the system is |
| 798 // transitioning, do not show the bubble because it will cause visual jank |
| 799 // <http://crbug.com/130649>. This will be called again as part of |
| 800 // |-windowDidEnterFullScreen:|, so arrange to do that work then instead. |
| 801 if (enteringFullscreen_) |
| 802 return; |
| 803 |
796 [presentationModeController_ ensureOverlayHiddenWithAnimation:NO delay:NO]; | 804 [presentationModeController_ ensureOverlayHiddenWithAnimation:NO delay:NO]; |
797 | 805 |
798 if (fullscreenBubbleType_ == FEB_TYPE_NONE || | 806 if (fullscreenBubbleType_ == FEB_TYPE_NONE || |
799 fullscreenBubbleType_ == FEB_TYPE_BROWSER_FULLSCREEN_EXIT_INSTRUCTION) { | 807 fullscreenBubbleType_ == FEB_TYPE_BROWSER_FULLSCREEN_EXIT_INSTRUCTION) { |
800 // Show no exit instruction bubble on Mac when in Browser Fullscreen. | 808 // Show no exit instruction bubble on Mac when in Browser Fullscreen. |
801 [self destroyFullscreenExitBubbleIfNecessary]; | 809 [self destroyFullscreenExitBubbleIfNecessary]; |
802 } else { | 810 } else { |
803 [fullscreenExitBubbleController_ closeImmediately]; | 811 [fullscreenExitBubbleController_ closeImmediately]; |
804 fullscreenExitBubbleController_.reset( | 812 fullscreenExitBubbleController_.reset( |
805 [[FullscreenExitBubbleController alloc] | 813 [[FullscreenExitBubbleController alloc] |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
911 - (void)disableBarVisibilityUpdates { | 919 - (void)disableBarVisibilityUpdates { |
912 // Early escape if there's nothing to do. | 920 // Early escape if there's nothing to do. |
913 if (!barVisibilityUpdatesEnabled_) | 921 if (!barVisibilityUpdatesEnabled_) |
914 return; | 922 return; |
915 | 923 |
916 barVisibilityUpdatesEnabled_ = NO; | 924 barVisibilityUpdatesEnabled_ = NO; |
917 [presentationModeController_ cancelAnimationAndTimers]; | 925 [presentationModeController_ cancelAnimationAndTimers]; |
918 } | 926 } |
919 | 927 |
920 @end // @implementation BrowserWindowController(Private) | 928 @end // @implementation BrowserWindowController(Private) |
OLD | NEW |