Chromium Code Reviews| Index: chrome/browser/ui/cocoa/browser_window_fullscreen_transition.mm |
| diff --git a/chrome/browser/ui/cocoa/browser_window_fullscreen_transition.mm b/chrome/browser/ui/cocoa/browser_window_fullscreen_transition.mm |
| index 1a0792aa5cf9039d0eb00a55237b2e63a9298653..1a96211ceba098d1ff0eaa9430120574d5746ff1 100644 |
| --- a/chrome/browser/ui/cocoa/browser_window_fullscreen_transition.mm |
| +++ b/chrome/browser/ui/cocoa/browser_window_fullscreen_transition.mm |
| @@ -164,7 +164,7 @@ class FrameAndStyleLock { |
| - (void)changePrimaryWindowToFinalFrame; |
| // Override of CAAnimation delegate method. |
| -- (void)animationDidStop:(CAAnimation*)theAnimation finished:(BOOL)flag; |
| +- (void)animationDidStop:(CAAnimation*)theAnimation finished:(BOOL)finished; |
| // Returns the layer of the root view of |window|. |
| - (CALayer*)rootLayerOfWindow:(NSWindow*)window; |
| @@ -254,6 +254,14 @@ class FrameAndStyleLock { |
| : [[primaryWindow_ contentView] bounds].size; |
| } |
| +- (void)browserWillBeDestroyed { |
| + CALayer* root = [self rootLayerOfWindow:primaryWindow_]; |
| + [root removeAllAnimations]; |
| + [snapshotLayer_ removeAllAnimations]; |
| + |
| + controller_ = nullptr; |
|
Robert Sesek
2016/04/04 18:13:50
nullptr -> nil
spqchan
2016/04/04 18:40:35
Done.
|
| +} |
| + |
| // -------------------------Private Methods---------------------------- |
| - (void)takeSnapshot { |
| @@ -473,7 +481,7 @@ class FrameAndStyleLock { |
| changingPrimaryWindowSize_ = NO; |
| } |
| -- (void)animationDidStop:(CAAnimation*)theAnimation finished:(BOOL)flag { |
| +- (void)animationDidStop:(CAAnimation*)theAnimation finished:(BOOL)finished { |
| NSString* animationID = [theAnimation valueForKey:kAnimationIDKey]; |
| // Remove the snapshot window. |
| @@ -524,11 +532,11 @@ class FrameAndStyleLock { |
| [root removeAnimationForKey:kPrimaryWindowAnimationID]; |
| root.opacity = 1; |
| - if (!isEnteringFullscreen_) |
| + completedTransition_ = YES; |
| + |
| + if (!isEnteringFullscreen_ && controller_) |
|
Robert Sesek
2016/04/04 18:13:50
Don't need the && controller_ since it's an ObjC o
spqchan
2016/04/04 18:40:35
Done.
|
| [controller_ exitFullscreenAnimationFinished]; |
| } |
| - |
| - completedTransition_ = YES; |
| } |
| - (CALayer*)rootLayerOfWindow:(NSWindow*)window { |