Skip to content

Commit 4cfb2ee

Browse files
zeyapmeta-codesync[bot]
authored andcommitted
enable -DRN_USE_ANIMATION_BACKEND by default (#55266)
Summary: Pull Request resolved: #55266 ## Changelog: [General] [Changed] - enable -DRN_USE_ANIMATION_BACKEND by default Reviewed By: cipolleschi Differential Revision: D91056420 fbshipit-source-id: bd8ef6b63a593540688c1af6a25274d047f43f9b
1 parent 3d0aa9f commit 4cfb2ee

10 files changed

Lines changed: 4 additions & 36 deletions

File tree

packages/react-native/Package.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -456,7 +456,7 @@ let reactFabric = RNTarget(
456456
"components/root/tests",
457457
],
458458
dependencies: [.reactNativeDependencies, .reactJsiExecutor, .rctTypesafety, .reactTurboModuleCore, .jsi, .logger, .reactDebug, .reactFeatureFlags, .reactUtils, .reactRuntimeScheduler, .reactCxxReact, .reactRendererDebug, .reactGraphics, .yoga],
459-
sources: ["animations", "attributedstring", "core", "componentregistry", "componentregistry/native", "components/root", "components/view", "components/view/platform/cxx", "components/scrollview", "components/scrollview/platform/cxx", "components/legacyviewmanagerinterop", "dom", "scheduler", "mounting", "observers/events", "observers/intersection", "telemetry", "consistency", "leakchecker", "uimanager", "uimanager/consistency"]
459+
sources: ["animationbackend", "animations", "attributedstring", "core", "componentregistry", "componentregistry/native", "components/root", "components/view", "components/view/platform/cxx", "components/scrollview", "components/scrollview/platform/cxx", "components/legacyviewmanagerinterop", "dom", "scheduler", "mounting", "observers/events", "observers/intersection", "telemetry", "consistency", "leakchecker", "uimanager", "uimanager/consistency"]
460460
)
461461

462462
let reactFabricInputAccessory = RNTarget(

packages/react-native/ReactCommon/React-Fabric.podspec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ Pod::Spec.new do |s|
5656
add_rncore_dependency(s)
5757

5858
s.subspec "animated" do |ss|
59+
ss.dependency "React-Fabric/animationbackend"
5960
ss.source_files = podspec_sources("react/renderer/animated/**/*.{m,mm,cpp,h}", "react/renderer/animated/**/*.{h}")
6061
ss.exclude_files = "react/renderer/animated/tests"
6162
ss.header_dir = "react/renderer/animated"

packages/react-native/ReactCommon/react/renderer/animated/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,3 @@ target_link_libraries(react_renderer_animated
3232
)
3333
target_compile_reactnative_options(react_renderer_animated PRIVATE)
3434
target_compile_options(react_renderer_animated PRIVATE -Wpedantic)
35-
target_compile_definitions(react_renderer_animated PRIVATE RN_USE_ANIMATION_BACKEND)

packages/react-native/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -514,11 +514,9 @@ void NativeAnimatedNodesManager::handleAnimatedEvent(
514514
// proactivelly trigger the animation loop to avoid showing stale
515515
// frames.
516516
if (ReactNativeFeatureFlags::useSharedAnimatedBackend()) {
517-
#ifdef RN_USE_ANIMATION_BACKEND
518517
if (auto animationBackend = animationBackend_.lock()) {
519518
animationBackend->trigger();
520519
}
521-
#endif
522520
} else {
523521
onRender();
524522
}
@@ -553,14 +551,12 @@ void NativeAnimatedNodesManager::startRenderCallbackIfNeeded(bool isAsync) {
553551
}
554552

555553
if (ReactNativeFeatureFlags::useSharedAnimatedBackend()) {
556-
#ifdef RN_USE_ANIMATION_BACKEND
557554
if (auto animationBackend = animationBackend_.lock()) {
558555
animationBackendCallbackId_ =
559556
animationBackend->start([this](AnimationTimestamp timestamp) {
560557
return pullAnimationMutations(timestamp);
561558
});
562559
}
563-
#endif
564560

565561
return;
566562
}
@@ -579,13 +575,11 @@ void NativeAnimatedNodesManager::stopRenderCallbackIfNeeded(
579575
auto isRenderCallbackStarted = isRenderCallbackStarted_.exchange(false);
580576

581577
if (ReactNativeFeatureFlags::useSharedAnimatedBackend()) {
582-
#ifdef RN_USE_ANIMATION_BACKEND
583578
if (isRenderCallbackStarted) {
584579
if (auto animationBackend = animationBackend_.lock()) {
585580
animationBackend->stop(animationBackendCallbackId_);
586581
}
587582
}
588-
#endif
589583
return;
590584
}
591585

@@ -947,8 +941,6 @@ void NativeAnimatedNodesManager::schedulePropsCommit(
947941
}
948942
}
949943

950-
#ifdef RN_USE_ANIMATION_BACKEND
951-
952944
void NativeAnimatedNodesManager::insertMutations(
953945
std::unordered_map<Tag, std::pair<ShadowNodeFamily::Weak, folly::dynamic>>&
954946
updates,
@@ -1089,7 +1081,6 @@ AnimationMutations NativeAnimatedNodesManager::pullAnimationMutations(
10891081
shouldRequestAsyncFlush_.clear();
10901082
return mutations;
10911083
}
1092-
#endif
10931084

10941085
void NativeAnimatedNodesManager::onRender() {
10951086
if (ReactNativeFeatureFlags::useSharedAnimatedBackend()) {

packages/react-native/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,8 @@
1717
#include <react/debug/flags.h>
1818
#include <react/renderer/animated/EventEmitterListener.h>
1919
#include <react/renderer/animated/event_drivers/EventAnimationDriver.h>
20-
#ifdef RN_USE_ANIMATION_BACKEND
2120
#include <react/renderer/animationbackend/AnimatedPropsBuilder.h>
2221
#include <react/renderer/animationbackend/AnimationBackend.h>
23-
#endif
2422
#include <react/renderer/core/ReactPrimitives.h>
2523
#include <react/renderer/core/ShadowNode.h>
2624
#include <react/renderer/uimanager/UIManagerAnimationBackend.h>
@@ -121,15 +119,13 @@ class NativeAnimatedNodesManager {
121119

122120
void setAnimatedNodeOffset(Tag tag, double offset);
123121

124-
#ifdef RN_USE_ANIMATION_BACKEND
125122
void insertMutations(
126123
std::unordered_map<Tag, std::pair<ShadowNodeFamily::Weak, folly::dynamic>> &updates,
127124
AnimationMutations &mutations,
128125
AnimatedPropsBuilder &propsBuilder,
129126
bool hasLayoutUpdates = false);
130127
AnimationMutations onAnimationFrameForBackend(AnimatedPropsBuilder &propsBuilder, AnimationTimestamp timestamp);
131128
AnimationMutations pullAnimationMutations(AnimationTimestamp timestamp);
132-
#endif
133129

134130
#pragma mark - Drivers
135131

@@ -286,9 +282,7 @@ class NativeAnimatedNodesManager {
286282
bool warnedAboutGraphTraversal_ = false;
287283
#endif
288284

289-
#ifdef RN_USE_ANIMATION_BACKEND
290285
CallbackId animationBackendCallbackId_{0};
291-
#endif
292286

293287
friend class ColorAnimatedNode;
294288
friend class AnimationDriver;

packages/react-native/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,8 @@
1111
#include <react/featureflags/ReactNativeFeatureFlags.h>
1212
#include <react/renderer/animated/MergedValueDispatcher.h>
1313
#include <react/renderer/animated/internal/AnimatedMountingOverrideDelegate.h>
14-
#ifdef RN_USE_ANIMATION_BACKEND
15-
#include <react/renderer/animationbackend/AnimationBackend.h>
16-
#endif
1714
#include <react/renderer/animated/internal/primitives.h>
15+
#include <react/renderer/animationbackend/AnimationBackend.h>
1816
#include <react/renderer/components/view/conversions.h>
1917
#include <react/renderer/scheduler/Scheduler.h>
2018
#include <react/renderer/uimanager/UIManagerBinding.h>
@@ -87,15 +85,13 @@ NativeAnimatedNodesManagerProvider::getOrCreate(
8785
};
8886

8987
if (ReactNativeFeatureFlags::useSharedAnimatedBackend()) {
90-
#ifdef RN_USE_ANIMATION_BACKEND
9188
auto animationBackend = uiManager->unstable_getAnimationBackend().lock();
9289
react_native_assert(
9390
animationBackend != nullptr && "animationBackend is nullptr");
9491
animationBackend->registerJSInvoker(jsInvoker);
9592

9693
nativeAnimatedNodesManager_ =
9794
std::make_shared<NativeAnimatedNodesManager>(animationBackend);
98-
#endif
9995
} else {
10096
nativeAnimatedNodesManager_ =
10197
std::make_shared<NativeAnimatedNodesManager>(

packages/react-native/ReactCommon/react/renderer/scheduler/CMakeLists.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,4 +37,3 @@ target_link_libraries(react_renderer_scheduler
3737
)
3838
target_compile_reactnative_options(react_renderer_scheduler PRIVATE)
3939
target_compile_options(react_renderer_scheduler PRIVATE -Wpedantic)
40-
target_compile_definitions(react_renderer_scheduler PRIVATE RN_USE_ANIMATION_BACKEND)

packages/react-native/ReactCommon/react/renderer/scheduler/Scheduler.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
#include <cxxreact/TraceSection.h>
1414
#include <react/debug/react_native_assert.h>
1515
#include <react/featureflags/ReactNativeFeatureFlags.h>
16+
#include <react/renderer/animationbackend/AnimationBackend.h>
1617
#include <react/renderer/componentregistry/ComponentDescriptorRegistry.h>
1718
#include <react/renderer/core/EventQueueProcessor.h>
1819
#include <react/renderer/core/LayoutContext.h>
@@ -21,9 +22,6 @@
2122
#include <react/renderer/runtimescheduler/RuntimeScheduler.h>
2223
#include <react/renderer/uimanager/UIManager.h>
2324
#include <react/renderer/uimanager/UIManagerBinding.h>
24-
#ifdef RN_USE_ANIMATION_BACKEND
25-
#include <react/renderer/animationbackend/AnimationBackend.h>
26-
#endif
2725

2826
namespace facebook::react {
2927

@@ -59,15 +57,13 @@ Scheduler::Scheduler(
5957
std::make_shared<UIManager>(runtimeExecutor_, contextContainer_);
6058

6159
if (ReactNativeFeatureFlags::useSharedAnimatedBackend()) {
62-
#ifdef RN_USE_ANIMATION_BACKEND
6360
auto animationBackend = std::make_shared<AnimationBackend>(
6461
schedulerToolbox.animationChoreographer, uiManager);
6562

6663
schedulerToolbox.animationChoreographer->setAnimationBackend(
6764
animationBackend);
6865

6966
uiManager->unstable_setAnimationBackend(animationBackend);
70-
#endif
7167
}
7268

7369
auto eventOwnerBox = std::make_shared<EventBeat::OwnerBox>();

private/react-native-fantom/runner/executables/tester.js

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import {NATIVE_BUILD_OUTPUT_PATH} from '../paths';
1515
import {
1616
getBuckModesForPlatform,
1717
getBuckOptionsForHermes,
18-
getConfigForAnimationBackend,
1918
getDebugInfoFromCommandResult,
2019
runBuck2,
2120
runBuck2Sync,
@@ -55,7 +54,6 @@ export function build(options: TesterOptions): void {
5554
'build',
5655
...getBuckModesForPlatform(options.isOptimizedMode),
5756
...getBuckOptionsForHermes(options.hermesVariant),
58-
...getConfigForAnimationBackend(),
5957
FANTOM_TESTER_BUCK_TARGET,
6058
'--out',
6159
tmpPath,
@@ -96,7 +94,6 @@ export function run(
9694
'run',
9795
...getBuckModesForPlatform(options.isOptimizedMode),
9896
...getBuckOptionsForHermes(options.hermesVariant),
99-
...getConfigForAnimationBackend(),
10097
FANTOM_TESTER_BUCK_TARGET,
10198
'--',
10299
...args,

private/react-native-fantom/runner/utils.js

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -109,11 +109,6 @@ export function getBuckModesForPlatform(
109109
return modes;
110110
}
111111

112-
// TODO: T240293839 Remove when we get rid of RN_USE_ANIMATION_BACKEND preprocessor flag
113-
export function getConfigForAnimationBackend(): ReadonlyArray<string> {
114-
return ['-c rn.use_animationbackend=true'];
115-
}
116-
117112
export type AsyncCommandResult = {
118113
originalCommand: string,
119114
childProcess: ReturnType<typeof spawn>,

0 commit comments

Comments
 (0)