Changeset 87003 in webkit


Ignore:
Timestamp:
May 20, 2011 5:29:51 PM (13 years ago)
Author:
jer.noble@apple.com
Message:

2011-05-20 Jeremy Noble <jer.noble@apple.com>

Reviewed by Simon Fraser.

Stack overflow in WebFullScreenController when built on Leopard and run on SnowLeopard.
https://bugs.webkit.org/show_bug.cgi?id=61224

Remove the CATransaction(SnowLeopardConvenience) functions, and replace them with the Leopard
versions of same.

  • WebView/WebFullScreenController.mm: (-[WebFullScreenController windowDidEnterFullscreen:]): (-[WebFullScreenController enterFullscreen:]): (-[WebFullScreenController exitFullscreen]): (-[WebFullscreenWindow setRendererLayer:]):
Location:
trunk/Source/WebKit/mac
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/mac/ChangeLog

    r86995 r87003  
     12011-05-20  Jeremy Noble  <jer.noble@apple.com>
     2
     3        Reviewed by Simon Fraser.
     4
     5        Stack overflow in WebFullScreenController when built on Leopard and run on SnowLeopard.
     6        https://bugs.webkit.org/show_bug.cgi?id=61224
     7
     8        Remove the CATransaction(SnowLeopardConvenience) functions, and replace them with the Leopard
     9        versions of same.
     10
     11        * WebView/WebFullScreenController.mm:
     12        (-[WebFullScreenController windowDidEnterFullscreen:]):
     13        (-[WebFullScreenController enterFullscreen:]):
     14        (-[WebFullScreenController exitFullscreen]):
     15        (-[WebFullscreenWindow setRendererLayer:]):
     16
    1172011-05-20  Andy Estes  <aestes@apple.com>
    218
  • trunk/Source/WebKit/mac/WebView/WebFullScreenController.mm

    r86995 r87003  
    6262using namespace WebCore;
    6363
    64 #if defined(BUILDING_ON_LEOPARD)
    65 @interface CATransaction(SnowLeopardConvenienceFunctions)
    66 + (void)setDisableActions:(BOOL)flag;
    67 + (void)setAnimationDuration:(CFTimeInterval)dur;
    68 @end
    69 
    70 @implementation CATransaction(SnowLeopardConvenienceFunctions)
    71 + (void)setDisableActions:(BOOL)flag
    72 {
    73     [self setValue:[NSNumber numberWithBool:flag] forKey:kCATransactionDisableActions];
    74 }
    75 
    76 + (void)setAnimationDuration:(CFTimeInterval)dur
    77 {
    78     [self setValue:[NSNumber numberWithDouble:dur] forKey:kCATransactionAnimationDuration];
    79 }
    80 @end
    81 
    82 #endif
    83 
    8464@interface WebFullscreenWindow : NSWindow
    8565#ifndef BUILDING_ON_LEOPARD
     
    308288
    309289        [CATransaction begin];
    310         [CATransaction setDisableActions:YES];
     290        [CATransaction setValue:[NSNumber numberWithBool:YES] forKey:kCATransactionDisableActions];
    311291        [[[window animationView] layer] setOpacity:0];
    312292        [CATransaction commit];
     
    470450    // the animation finishes.
    471451    [CATransaction begin];
    472     [CATransaction setAnimationDuration:duration];
     452    [CATransaction setValue:[NSNumber numberWithDouble:duration] forKey:kCATransactionAnimationDuration];
    473453    [backgroundLayer setOpacity:1];
    474454    [CATransaction commit];
     
    487467    // Disable implicit animations and set the layer's transformation matrix to its final state.
    488468    [CATransaction begin];
    489     [CATransaction setDisableActions:YES];
     469    [CATransaction setValue:[NSNumber numberWithBool:YES] forKey:kCATransactionDisableActions];
    490470    [rendererLayer setTransform:CATransform3DIdentity];
    491471    [rendererLayer addAnimation:zoomAnimation forKey:@"zoom"];
     
    555535        // wise, the content will appear to fade into view.
    556536        [CATransaction begin];
    557         [CATransaction setDisableActions:YES];
     537        [CATransaction setValue:[NSNumber numberWithBool:YES] forKey:kCATransactionDisableActions];
    558538        WebFullscreenWindow* window = [self _fullscreenWindow];
    559539        [[[window animationView] layer] setOpacity:1];
     
    618598    CALayer* backgroundLayer = [[self _fullscreenWindow] backgroundLayer];
    619599    [CATransaction begin];
    620     [CATransaction setAnimationDuration:duration];
     600    [CATransaction setValue:[NSNumber numberWithDouble:duration] forKey:kCATransactionAnimationDuration];
    621601    [backgroundLayer setOpacity:0];
    622602    [CATransaction commit];
     
    883863{
    884864    [CATransaction begin];
    885     [CATransaction setDisableActions:YES];
     865    [CATransaction setValue:[NSNumber numberWithBool:YES] forKey:kCATransactionDisableActions];
    886866    [rendererLayer retain];
    887867    [_rendererLayer removeFromSuperlayer];
Note: See TracChangeset for help on using the changeset viewer.