Title: [286081] trunk/Source/WebKit
Revision
286081
Author
[email protected]
Date
2021-11-19 14:41:30 -0800 (Fri, 19 Nov 2021)

Log Message

[Model] Reduce use of callOnMainRunLoop in ModelElementControllerCocoa
https://bugs.webkit.org/show_bug.cgi?id=233376

Reviewed by Wenson Hsieh.

We only need to use callOnMainRunLoop inside of blocks.

* UIProcess/Cocoa/ModelElementControllerCocoa.mm:
(WebKit::ModelElementController::getCameraForModelElement):
(WebKit::ModelElementController::setCameraForModelElement):
(WebKit::ModelElementController::isPlayingAnimationForModelElement):
(WebKit::ModelElementController::setAnimationIsPlayingForModelElement):

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (286080 => 286081)


--- trunk/Source/WebKit/ChangeLog	2021-11-19 22:38:00 UTC (rev 286080)
+++ trunk/Source/WebKit/ChangeLog	2021-11-19 22:41:30 UTC (rev 286081)
@@ -1,3 +1,18 @@
+2021-11-19  Antoine Quint  <[email protected]>
+
+        [Model] Reduce use of callOnMainRunLoop in ModelElementControllerCocoa
+        https://bugs.webkit.org/show_bug.cgi?id=233376
+
+        Reviewed by Wenson Hsieh.
+
+        We only need to use callOnMainRunLoop inside of blocks.
+
+        * UIProcess/Cocoa/ModelElementControllerCocoa.mm:
+        (WebKit::ModelElementController::getCameraForModelElement):
+        (WebKit::ModelElementController::setCameraForModelElement):
+        (WebKit::ModelElementController::isPlayingAnimationForModelElement):
+        (WebKit::ModelElementController::setAnimationIsPlayingForModelElement):
+
 2021-11-19  Chris Dumez  <[email protected]>
 
         Revert r282446 to bring back support for WebKitAdditions in Framework headers

Modified: trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm (286080 => 286081)


--- trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm	2021-11-19 22:38:00 UTC (rev 286080)
+++ trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm	2021-11-19 22:41:30 UTC (rev 286081)
@@ -246,10 +246,7 @@
 {
     auto* preview = previewForModelIdentifier(modelIdentifier);
     if (!previewHasCameraSupport(preview)) {
-        callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
-            if (weakThis)
-                completionHandler(makeUnexpected(error));
-        });
+        completionHandler(makeUnexpected(WebCore::ResourceError { WebCore::ResourceError::Type::General }));
         return;
     }
 
@@ -256,9 +253,9 @@
 #if ENABLE(ARKIT_INLINE_PREVIEW_CAMERA_TRANSFORM)
     [preview getCameraTransform:makeBlockPtr([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] (simd_float3 cameraTransform, NSError *error) mutable {
         if (error) {
-            callOnMainRunLoop([weakThis = WTFMove(weakThis), completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
+            callOnMainRunLoop([weakThis = WTFMove(weakThis), completionHandler = WTFMove(completionHandler)] () mutable {
                 if (weakThis)
-                    completionHandler(makeUnexpected(error));
+                    completionHandler(makeUnexpected(WebCore::ResourceError { WebCore::ResourceError::Type::General }));
             });
             return;
         }
@@ -269,11 +266,7 @@
         });
     }).get()];
 #else
-    callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
-        if (weakThis)
-            completionHandler(makeUnexpected(error));
-    });
-    return;
+    ASSERT_NOT_REACHED();
 #endif
 }
 
@@ -281,25 +274,16 @@
 {
     auto* preview = previewForModelIdentifier(modelIdentifier);
     if (!previewHasCameraSupport(preview)) {
-        callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
-            if (weakThis)
-                completionHandler(false);
-        });
+        completionHandler(false);
         return;
     }
 
 #if ENABLE(ARKIT_INLINE_PREVIEW_CAMERA_TRANSFORM)
     [preview setCameraTransform:simd_make_float3(camera.pitch, camera.yaw, camera.scale)];
-#endif
-
-    callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
-        if (weakThis)
-#if ENABLE(ARKIT_INLINE_PREVIEW_CAMERA_TRANSFORM)
-            completionHandler(true);
+    completionHandler(true);
 #else
-            completionHandler(false);
+    ASSERT_NOT_REACHED();
 #endif
-    });
 }
 
 static bool previewHasAnimationSupport(ASVInlinePreview *preview)
@@ -315,22 +299,15 @@
 {
     auto* preview = previewForModelIdentifier(modelIdentifier);
     if (!previewHasAnimationSupport(preview)) {
-        callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
-            if (weakThis)
-                completionHandler(makeUnexpected(error));
-        });
+        completionHandler(makeUnexpected(WebCore::ResourceError { WebCore::ResourceError::Type::General }));
         return;
     }
 
 #if ENABLE(ARKIT_INLINE_PREVIEW_ANIMATIONS_CONTROL)
-    auto isPlaying = [preview isPlaying];
+    completionHandler([preview isPlaying]);
 #else
-    auto isPlaying = false;
+    ASSERT_NOT_REACHED();
 #endif
-    callOnMainRunLoop([isPlaying, weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
-        if (weakThis)
-            completionHandler(isPlaying);
-    });
 }
 
 void ModelElementController::setAnimationIsPlayingForModelElement(ModelIdentifier modelIdentifier, bool isPlaying, CompletionHandler<void(bool)>&& completionHandler)
@@ -337,10 +314,7 @@
 {
     auto* preview = previewForModelIdentifier(modelIdentifier);
     if (!previewHasAnimationSupport(preview)) {
-        callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
-            if (weakThis)
-                completionHandler(false);
-        });
+        completionHandler(false);
         return;
     }
 
@@ -352,10 +326,7 @@
         });
     }).get()];
 #else
-    callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
-        if (weakThis)
-            completionHandler(false);
-    });
+    ASSERT_NOT_REACHED();
 #endif
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to