Title: [118245] trunk/Source/WebKit2
Revision
118245
Author
jer.no...@apple.com
Date
2012-05-23 14:15:21 -0700 (Wed, 23 May 2012)

Log Message

REGRESSION (117623) - Entering/exiting fullscreen HTML5 videos, there is a quick animated fade
https://bugs.webkit.org/show_bug.cgi?id=87294

Reviewed by Darin Adler.

When setting the sublayers array on the layer hosting view, wrap the call in a CATransaction which disables
animations.

* UIProcess/API/mac/WKView.mm:
(-[WKView _updateAcceleratedCompositingMode:WebKit::]):

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (118244 => 118245)


--- trunk/Source/WebKit2/ChangeLog	2012-05-23 21:13:51 UTC (rev 118244)
+++ trunk/Source/WebKit2/ChangeLog	2012-05-23 21:15:21 UTC (rev 118245)
@@ -1,3 +1,16 @@
+2012-05-23  Jer Noble  <jer.no...@apple.com>
+
+        REGRESSION (117623) - Entering/exiting fullscreen HTML5 videos, there is a quick animated fade
+        https://bugs.webkit.org/show_bug.cgi?id=87294
+
+        Reviewed by Darin Adler.
+
+        When setting the sublayers array on the layer hosting view, wrap the call in a CATransaction which disables
+        animations.
+
+        * UIProcess/API/mac/WKView.mm:
+        (-[WKView _updateAcceleratedCompositingMode:WebKit::]):
+
 2012-05-23  Dinu Jacob  <dinu.ja...@nokia.com>
 
         [Qt][Wk2] Assertion failure when selecting an option in select list with size attribute greater than one

Modified: trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm (118244 => 118245)


--- trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm	2012-05-23 21:13:51 UTC (rev 118244)
+++ trunk/Source/WebKit2/UIProcess/API/mac/WKView.mm	2012-05-23 21:15:21 UTC (rev 118245)
@@ -2514,8 +2514,15 @@
 - (void)_updateAcceleratedCompositingMode:(const WebKit::LayerTreeContext&)layerTreeContext
 {
     if (_data->_layerHostingView) {
+        // Wrap the call to setSublayers: in a CATransaction with actions disabled to
+        // keep CA from cross-fading between the two sublayer arrays.
+        [CATransaction begin];
+        [CATransaction setDisableActions:YES];
+
         CALayer *renderLayer = WKMakeRenderLayer(layerTreeContext.contextID);
         [[_data->_layerHostingView.get() layer] setSublayers:[NSArray arrayWithObject:renderLayer]];
+
+        [CATransaction commit];
     } else {
         [self _exitAcceleratedCompositingMode];
         [self _enterAcceleratedCompositingMode:layerTreeContext];
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to