⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 286081 in webkit


Ignore:
Timestamp:
Nov 19, 2021, 2:41:30 PM (5 years ago)
Author:
graouts@webkit.org
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):

Location:
trunk/Source/WebKit
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/ChangeLog

    r286080 r286081  
     12021-11-19  Antoine Quint  <graouts@webkit.org>
     2
     3        [Model] Reduce use of callOnMainRunLoop in ModelElementControllerCocoa
     4        https://bugs.webkit.org/show_bug.cgi?id=233376
     5
     6        Reviewed by Wenson Hsieh.
     7
     8        We only need to use callOnMainRunLoop inside of blocks.
     9
     10        * UIProcess/Cocoa/ModelElementControllerCocoa.mm:
     11        (WebKit::ModelElementController::getCameraForModelElement):
     12        (WebKit::ModelElementController::setCameraForModelElement):
     13        (WebKit::ModelElementController::isPlayingAnimationForModelElement):
     14        (WebKit::ModelElementController::setAnimationIsPlayingForModelElement):
     15
    1162021-11-19  Chris Dumez  <cdumez@apple.com>
    217
  • trunk/Source/WebKit/UIProcess/Cocoa/ModelElementControllerCocoa.mm

    r286068 r286081  
    247247    auto* preview = previewForModelIdentifier(modelIdentifier);
    248248    if (!previewHasCameraSupport(preview)) {
    249         callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
    250             if (weakThis)
    251                 completionHandler(makeUnexpected(error));
    252         });
     249        completionHandler(makeUnexpected(WebCore::ResourceError { WebCore::ResourceError::Type::General }));
    253250        return;
    254251    }
     
    257254    [preview getCameraTransform:makeBlockPtr([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] (simd_float3 cameraTransform, NSError *error) mutable {
    258255        if (error) {
    259             callOnMainRunLoop([weakThis = WTFMove(weakThis), completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
     256            callOnMainRunLoop([weakThis = WTFMove(weakThis), completionHandler = WTFMove(completionHandler)] () mutable {
    260257                if (weakThis)
    261                     completionHandler(makeUnexpected(error));
     258                    completionHandler(makeUnexpected(WebCore::ResourceError { WebCore::ResourceError::Type::General }));
    262259            });
    263260            return;
     
    270267    }).get()];
    271268#else
    272     callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
    273         if (weakThis)
    274             completionHandler(makeUnexpected(error));
    275     });
    276     return;
     269    ASSERT_NOT_REACHED();
    277270#endif
    278271}
     
    282275    auto* preview = previewForModelIdentifier(modelIdentifier);
    283276    if (!previewHasCameraSupport(preview)) {
    284         callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
    285             if (weakThis)
    286                 completionHandler(false);
    287         });
     277        completionHandler(false);
    288278        return;
    289279    }
     
    291281#if ENABLE(ARKIT_INLINE_PREVIEW_CAMERA_TRANSFORM)
    292282    [preview setCameraTransform:simd_make_float3(camera.pitch, camera.yaw, camera.scale)];
    293 #endif
    294 
    295     callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
    296         if (weakThis)
    297 #if ENABLE(ARKIT_INLINE_PREVIEW_CAMERA_TRANSFORM)
    298             completionHandler(true);
    299 #else
    300             completionHandler(false);
    301 #endif
    302     });
     283    completionHandler(true);
     284#else
     285    ASSERT_NOT_REACHED();
     286#endif
    303287}
    304288
     
    316300    auto* preview = previewForModelIdentifier(modelIdentifier);
    317301    if (!previewHasAnimationSupport(preview)) {
    318         callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler), error = WebCore::ResourceError { WebCore::ResourceError::Type::General }] () mutable {
    319             if (weakThis)
    320                 completionHandler(makeUnexpected(error));
    321         });
    322         return;
    323     }
    324 
    325 #if ENABLE(ARKIT_INLINE_PREVIEW_ANIMATIONS_CONTROL)
    326     auto isPlaying = [preview isPlaying];
    327 #else
    328     auto isPlaying = false;
    329 #endif
    330     callOnMainRunLoop([isPlaying, weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
    331         if (weakThis)
    332             completionHandler(isPlaying);
    333     });
     302        completionHandler(makeUnexpected(WebCore::ResourceError { WebCore::ResourceError::Type::General }));
     303        return;
     304    }
     305
     306#if ENABLE(ARKIT_INLINE_PREVIEW_ANIMATIONS_CONTROL)
     307    completionHandler([preview isPlaying]);
     308#else
     309    ASSERT_NOT_REACHED();
     310#endif
    334311}
    335312
     
    338315    auto* preview = previewForModelIdentifier(modelIdentifier);
    339316    if (!previewHasAnimationSupport(preview)) {
    340         callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
    341             if (weakThis)
    342                 completionHandler(false);
    343         });
     317        completionHandler(false);
    344318        return;
    345319    }
     
    353327    }).get()];
    354328#else
    355     callOnMainRunLoop([weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] () mutable {
    356         if (weakThis)
    357             completionHandler(false);
    358     });
     329    ASSERT_NOT_REACHED();
    359330#endif
    360331}
Note: See TracChangeset for help on using the changeset viewer.