Title: [254490] trunk/Source/WebCore
Revision
254490
Author
[email protected]
Date
2020-01-13 21:09:19 -0800 (Mon, 13 Jan 2020)

Log Message

[WK1][iOS] VideoFullscreenControllerContext uses UIKit on the WebThread
https://bugs.webkit.org/show_bug.cgi?id=206203
<rdar://problem/48742782>

Reviewed by Simon Fraser.

* platform/ios/WebVideoFullscreenControllerAVKit.mm:
(VideoFullscreenControllerContext::setVideoLayerFrame):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (254489 => 254490)


--- trunk/Source/WebCore/ChangeLog	2020-01-14 04:53:22 UTC (rev 254489)
+++ trunk/Source/WebCore/ChangeLog	2020-01-14 05:09:19 UTC (rev 254490)
@@ -1,3 +1,14 @@
+2020-01-13  Jer Noble  <[email protected]>
+
+        [WK1][iOS] VideoFullscreenControllerContext uses UIKit on the WebThread
+        https://bugs.webkit.org/show_bug.cgi?id=206203
+        <rdar://problem/48742782>
+
+        Reviewed by Simon Fraser.
+
+        * platform/ios/WebVideoFullscreenControllerAVKit.mm:
+        (VideoFullscreenControllerContext::setVideoLayerFrame):
+
 2020-01-13  Zalan Bujtas  <[email protected]>
 
         RenderTreeBuilder::Block::attachIgnoringContinuation should handle inline-block anonymous containers.

Modified: trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm (254489 => 254490)


--- trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm	2020-01-14 04:53:22 UTC (rev 254489)
+++ trunk/Source/WebCore/platform/ios/WebVideoFullscreenControllerAVKit.mm	2020-01-14 05:09:19 UTC (rev 254490)
@@ -589,18 +589,16 @@
     RetainPtr<CALayer> videoFullscreenLayer = [m_videoFullscreenView layer];
     [videoFullscreenLayer setSublayerTransform:[videoFullscreenLayer transform]];
 
-    dispatch_async(dispatch_get_main_queue(), [protectedThis = makeRefPtr(this), this, frame, videoFullscreenLayer = WTFMove(videoFullscreenLayer)] () mutable {
-        WebThreadRun([protectedThis = WTFMove(protectedThis), this, frame, videoFullscreenLayer = WTFMove(videoFullscreenLayer)] {
-            [CATransaction begin];
-            [CATransaction setDisableActions:YES];
-            [CATransaction setAnimationDuration:0];
-            
-            [videoFullscreenLayer setSublayerTransform:CATransform3DIdentity];
-            
-            if (m_fullscreenModel)
-                m_fullscreenModel->setVideoLayerFrame(frame);
-            [CATransaction commit];
-        });
+    dispatchAsyncOnMainThreadWithWebThreadLockIfNeeded([protectedThis = makeRefPtr(this), this, frame, videoFullscreenLayer = WTFMove(videoFullscreenLayer)] {
+        [CATransaction begin];
+        [CATransaction setDisableActions:YES];
+        [CATransaction setAnimationDuration:0];
+
+        [videoFullscreenLayer setSublayerTransform:CATransform3DIdentity];
+
+        if (m_fullscreenModel)
+            m_fullscreenModel->setVideoLayerFrame(frame);
+        [CATransaction commit];
     });
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to