MCPcopy Create free account
hub / github.com/Snapchat/Valdi / setTweakValueProvider

Method setTweakValueProvider

valdi/src/valdi/runtime/RuntimeManager.cpp:561–597  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

559 _anrDetector->setMetrics(metrics);
560}
561
562void RuntimeManager::setTweakValueProvider(const Shared<ITweakValueProvider>& tweakValueProvider) {
563 std::vector<SharedRuntime> runtimes;
564 Ref<ValdiRuntimeTweaks> runtimeTweaks;
565
566 if (tweakValueProvider != nullptr) {
567 runtimeTweaks = makeShared<ValdiRuntimeTweaks>(tweakValueProvider);
568 }
569
570 {
571 std::lock_guard<Mutex> guard(_mutex);
572 _runtimeTweaks = runtimeTweaks;
573 runtimes = getAllRuntimes(guard);
574 }
575
576 auto anrDetectorListener = castOrNull<ANRDetectorListener>(_anrDetector->getListener());
577
578 if (anrDetectorListener != nullptr) {
579 anrDetectorListener->setShouldCrashOnANR(runtimeTweaks != nullptr ? runtimeTweaks->shouldCrashOnANR() : false);
580 }
581 _anrDetector->setNudgeEnabled(runtimeTweaks != nullptr ? runtimeTweaks->shouldNudgeJSThread() : false);
582
583 YGConfigSetExperimentalFeatureEnabled(_yogaConfig.get(),
584 YGExperimentalFeatureFixFlexBasisFitContent,
585 runtimeTweaks != nullptr ? runtimeTweaks->enableFixFlexBasisFitContent() :
586 false);
587
588 auto disableAnimationRemoveOnCompleteIos =
589 runtimeTweaks != nullptr ? runtimeTweaks->disableAnimationRemoveOnCompleteIos() : false;
590 for (const auto& viewManagerContext : _viewManagerContexts) {
591 viewManagerContext->getViewManager().setDisableAnimationRemoveOnCompleteIos(
592 disableAnimationRemoveOnCompleteIos);
593 }
594
595 for (const auto& runtime : runtimes) {
596 runtime->setRuntimeTweaks(runtimeTweaks);
597 }
598}
599
600void RuntimeManager::cancelDeferredGCTask() {

Callers 1

createMethod · 0.80

Calls 11

setShouldCrashOnANRMethod · 0.80
shouldCrashOnANRMethod · 0.80
setNudgeEnabledMethod · 0.80
shouldNudgeJSThreadMethod · 0.80
getViewManagerMethod · 0.80
getMethod · 0.65
getListenerMethod · 0.45
setRuntimeTweaksMethod · 0.45

Tested by

no test coverage detected