react-native 0.84.0-nightly-20251204-5bb3a6d68 → 0.84.0-nightly-20251206-63b0aef13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/Animated/nodes/AnimatedProps.js +29 -3
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +7 -0
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -0
- package/React/Base/RCTVersion.m +1 -1
- package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +7 -0
- package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +2 -0
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +18 -0
- package/React/Fabric/RCTSurfaceTouchHandler.mm +1 -1
- package/ReactAndroid/api/ReactAndroid.api +0 -2
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +85 -11
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +11 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +12 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +7 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +9 -91
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +4 -23
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +1 -10
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +42 -28
- package/ReactAndroid/src/main/jni/CMakeLists.txt +7 -0
- package/ReactAndroid/src/main/jni/react/devsupport/CMakeLists.txt +7 -0
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +15 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +4 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/ReactCommon/jsi/jsi/jsi.cpp +2 -1
- package/ReactCommon/jsinspector-modern/HostAgent.cpp +2 -2
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +10 -5
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.h +2 -2
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +1 -1
- package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.cpp +4 -4
- package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +11 -6
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +6 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +51 -33
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +4 -2
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +10 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +2 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +6 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +3 -1
- package/ReactCommon/react/renderer/animated/AnimatedModule.cpp +19 -1
- package/ReactCommon/react/renderer/animated/AnimatedModule.h +8 -0
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +83 -9
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +6 -0
- package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.cpp +1 -0
- package/ReactCommon/react/renderer/animated/nodes/ColorAnimatedNode.cpp +0 -1
- package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +1 -0
- package/ReactCommon/react/renderer/animated/nodes/RoundAnimatedNode.cpp +1 -1
- package/ReactCommon/react/renderer/animated/nodes/ValueAnimatedNode.cpp +1 -1
- package/ReactCommon/react/renderer/animated/tests/AnimatedNodeTests.cpp +67 -0
- package/ReactCommon/react/renderer/animated/tests/AnimationDriverTests.cpp +59 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +81 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +83 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +26 -15
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +7 -4
- package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.cpp +69 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +32 -0
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +6 -0
- package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +1 -0
- package/package.json +9 -9
- package/scripts/cocoapods/utils.rb +2 -0
- package/sdks/hermes-engine/version.properties +1 -1
- package/src/private/animated/NativeAnimatedHelper.js +29 -1
- package/src/private/featureflags/ReactNativeFeatureFlags.js +6 -1
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +2 -1
- package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +0 -32
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#include <react/renderer/animationbackend/AnimationBackendCommitHook.h>
|
|
9
|
+
|
|
10
|
+
namespace facebook::react {
|
|
11
|
+
|
|
12
|
+
AnimationBackendCommitHook::AnimationBackendCommitHook(
|
|
13
|
+
UIManager* uiManager,
|
|
14
|
+
std::shared_ptr<AnimatedPropsRegistry> animatedPropsRegistry)
|
|
15
|
+
: animatedPropsRegistry_(std::move(animatedPropsRegistry)) {
|
|
16
|
+
uiManager->registerCommitHook(*this);
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
RootShadowNode::Unshared AnimationBackendCommitHook::shadowTreeWillCommit(
|
|
20
|
+
const ShadowTree& shadowTree,
|
|
21
|
+
const RootShadowNode::Shared& oldRootShadowNode,
|
|
22
|
+
const RootShadowNode::Unshared& newRootShadowNode,
|
|
23
|
+
const ShadowTreeCommitOptions& commitOptions) noexcept {
|
|
24
|
+
if (commitOptions.source != ShadowTreeCommitSource::React) {
|
|
25
|
+
return newRootShadowNode;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const auto& res = animatedPropsRegistry_->getMap(shadowTree.getSurfaceId());
|
|
29
|
+
auto& surfaceFamilies = res.first;
|
|
30
|
+
auto& updates = res.second;
|
|
31
|
+
|
|
32
|
+
if (surfaceFamilies.empty()) {
|
|
33
|
+
return newRootShadowNode;
|
|
34
|
+
}
|
|
35
|
+
return std::static_pointer_cast<RootShadowNode>(
|
|
36
|
+
newRootShadowNode->cloneMultiple(
|
|
37
|
+
surfaceFamilies,
|
|
38
|
+
[&surfaceFamilies, &updates](
|
|
39
|
+
const ShadowNode& shadowNode,
|
|
40
|
+
const ShadowNodeFragment& fragment) {
|
|
41
|
+
auto newProps = ShadowNodeFragment::propsPlaceholder();
|
|
42
|
+
std::shared_ptr<BaseViewProps> viewProps = nullptr;
|
|
43
|
+
if (surfaceFamilies.contains(&shadowNode.getFamily()) &&
|
|
44
|
+
updates.contains(shadowNode.getTag())) {
|
|
45
|
+
auto& snapshot = updates.at(shadowNode.getTag());
|
|
46
|
+
if (!snapshot->propNames.empty()) {
|
|
47
|
+
PropsParserContext propsParserContext{
|
|
48
|
+
shadowNode.getSurfaceId(),
|
|
49
|
+
*shadowNode.getContextContainer()};
|
|
50
|
+
|
|
51
|
+
newProps = shadowNode.getComponentDescriptor().cloneProps(
|
|
52
|
+
propsParserContext, shadowNode.getProps(), {});
|
|
53
|
+
viewProps = std::const_pointer_cast<BaseViewProps>(
|
|
54
|
+
std::static_pointer_cast<const BaseViewProps>(newProps));
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
for (const auto& propName : snapshot->propNames) {
|
|
58
|
+
updateProp(propName, *viewProps, *snapshot);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return shadowNode.clone(
|
|
62
|
+
{.props = newProps,
|
|
63
|
+
.children = fragment.children,
|
|
64
|
+
.state = shadowNode.getState(),
|
|
65
|
+
.runtimeShadowNodeReference = true});
|
|
66
|
+
}));
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
} // namespace facebook::react
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the MIT license found in the
|
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#pragma once
|
|
9
|
+
|
|
10
|
+
#include <folly/dynamic.h>
|
|
11
|
+
#include <react/renderer/core/ReactPrimitives.h>
|
|
12
|
+
#include <react/renderer/uimanager/UIManager.h>
|
|
13
|
+
#include <react/renderer/uimanager/UIManagerCommitHook.h>
|
|
14
|
+
#include "AnimatedPropsRegistry.h"
|
|
15
|
+
|
|
16
|
+
namespace facebook::react {
|
|
17
|
+
|
|
18
|
+
class AnimationBackendCommitHook : public UIManagerCommitHook {
|
|
19
|
+
std::shared_ptr<AnimatedPropsRegistry> animatedPropsRegistry_;
|
|
20
|
+
|
|
21
|
+
public:
|
|
22
|
+
AnimationBackendCommitHook(UIManager *uiManager, std::shared_ptr<AnimatedPropsRegistry> animatedPropsRegistry);
|
|
23
|
+
RootShadowNode::Unshared shadowTreeWillCommit(
|
|
24
|
+
const ShadowTree &shadowTree,
|
|
25
|
+
const RootShadowNode::Shared &oldRootShadowNode,
|
|
26
|
+
const RootShadowNode::Unshared &newRootShadowNode,
|
|
27
|
+
const ShadowTreeCommitOptions &commitOptions) noexcept override;
|
|
28
|
+
void commitHookWasRegistered(const UIManager &uiManager) noexcept override {}
|
|
29
|
+
void commitHookWasUnregistered(const UIManager &uiManager) noexcept override {}
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
} // namespace facebook::react
|
|
@@ -205,6 +205,12 @@ void UIManager::completeSurface(
|
|
|
205
205
|
// after we commit a specific one.
|
|
206
206
|
lazyShadowTreeRevisionConsistencyManager_->updateCurrentRevision(
|
|
207
207
|
surfaceId, shadowTree.getCurrentRevision().rootShadowNode);
|
|
208
|
+
|
|
209
|
+
if (ReactNativeFeatureFlags::useSharedAnimatedBackend()) {
|
|
210
|
+
if (auto animationBackend = animationBackend_.lock()) {
|
|
211
|
+
animationBackend->clearRegistry(surfaceId);
|
|
212
|
+
}
|
|
213
|
+
}
|
|
208
214
|
}
|
|
209
215
|
});
|
|
210
216
|
}
|
|
@@ -19,6 +19,7 @@ class UIManagerAnimationBackend {
|
|
|
19
19
|
virtual void onAnimationFrame(double timestamp) = 0;
|
|
20
20
|
// TODO: T240293839 Move over start() function and mutation types
|
|
21
21
|
virtual void stop(bool isAsync) = 0;
|
|
22
|
+
virtual void clearRegistry(SurfaceId surfaceId) = 0;
|
|
22
23
|
};
|
|
23
24
|
|
|
24
25
|
} // namespace facebook::react
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native",
|
|
3
|
-
"version": "0.84.0-nightly-
|
|
3
|
+
"version": "0.84.0-nightly-20251206-63b0aef13",
|
|
4
4
|
"description": "A framework for building native apps using React",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -160,13 +160,13 @@
|
|
|
160
160
|
},
|
|
161
161
|
"dependencies": {
|
|
162
162
|
"@jest/create-cache-key-function": "^29.7.0",
|
|
163
|
-
"@react-native/assets-registry": "0.84.0-nightly-
|
|
164
|
-
"@react-native/codegen": "0.84.0-nightly-
|
|
165
|
-
"@react-native/community-cli-plugin": "0.84.0-nightly-
|
|
166
|
-
"@react-native/gradle-plugin": "0.84.0-nightly-
|
|
167
|
-
"@react-native/js-polyfills": "0.84.0-nightly-
|
|
168
|
-
"@react-native/normalize-colors": "0.84.0-nightly-
|
|
169
|
-
"@react-native/virtualized-lists": "0.84.0-nightly-
|
|
163
|
+
"@react-native/assets-registry": "0.84.0-nightly-20251206-63b0aef13",
|
|
164
|
+
"@react-native/codegen": "0.84.0-nightly-20251206-63b0aef13",
|
|
165
|
+
"@react-native/community-cli-plugin": "0.84.0-nightly-20251206-63b0aef13",
|
|
166
|
+
"@react-native/gradle-plugin": "0.84.0-nightly-20251206-63b0aef13",
|
|
167
|
+
"@react-native/js-polyfills": "0.84.0-nightly-20251206-63b0aef13",
|
|
168
|
+
"@react-native/normalize-colors": "0.84.0-nightly-20251206-63b0aef13",
|
|
169
|
+
"@react-native/virtualized-lists": "0.84.0-nightly-20251206-63b0aef13",
|
|
170
170
|
"abort-controller": "^3.0.0",
|
|
171
171
|
"anser": "^1.4.9",
|
|
172
172
|
"ansi-regex": "^5.0.0",
|
|
@@ -175,7 +175,7 @@
|
|
|
175
175
|
"base64-js": "^1.5.1",
|
|
176
176
|
"commander": "^12.0.0",
|
|
177
177
|
"flow-enums-runtime": "^0.0.6",
|
|
178
|
-
"hermes-compiler": "0.14.0-commitly-
|
|
178
|
+
"hermes-compiler": "0.14.0-commitly-202512051838-1e8c447f2",
|
|
179
179
|
"invariant": "^2.2.4",
|
|
180
180
|
"jest-environment-node": "^29.7.0",
|
|
181
181
|
"memoize-one": "^5.0.0",
|
|
@@ -58,9 +58,11 @@ class ReactNativePodsUtils
|
|
|
58
58
|
|
|
59
59
|
def self.set_gcc_preprocessor_definition_for_debugger(installer)
|
|
60
60
|
self.add_build_settings_to_pod(installer, "GCC_PREPROCESSOR_DEFINITIONS", "REACT_NATIVE_DEBUGGER_ENABLED=1", "React-jsinspector", :debug)
|
|
61
|
+
self.add_build_settings_to_pod(installer, "GCC_PREPROCESSOR_DEFINITIONS", "REACT_NATIVE_DEBUGGER_ENABLED=1", "React-jsinspectornetwork", :debug)
|
|
61
62
|
self.add_build_settings_to_pod(installer, "GCC_PREPROCESSOR_DEFINITIONS", "REACT_NATIVE_DEBUGGER_ENABLED=1", "React-RCTNetwork", :debug)
|
|
62
63
|
self.add_build_settings_to_pod(installer, "GCC_PREPROCESSOR_DEFINITIONS", "REACT_NATIVE_DEBUGGER_ENABLED=1", "React-networking", :debug)
|
|
63
64
|
self.add_build_settings_to_pod(installer, "GCC_PREPROCESSOR_DEFINITIONS", "REACT_NATIVE_DEBUGGER_ENABLED_DEVONLY=1", "React-jsinspector", :debug)
|
|
65
|
+
self.add_build_settings_to_pod(installer, "GCC_PREPROCESSOR_DEFINITIONS", "REACT_NATIVE_DEBUGGER_ENABLED_DEVONLY=1", "React-jsinspectornetwork", :debug)
|
|
64
66
|
self.add_build_settings_to_pod(installer, "GCC_PREPROCESSOR_DEFINITIONS", "REACT_NATIVE_DEBUGGER_ENABLED_DEVONLY=1", "React-RCTNetwork", :debug)
|
|
65
67
|
self.add_build_settings_to_pod(installer, "GCC_PREPROCESSOR_DEFINITIONS", "REACT_NATIVE_DEBUGGER_ENABLED_DEVONLY=1", "React-networking", :debug)
|
|
66
68
|
end
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
HERMES_VERSION_NAME=0.14.0-commitly-
|
|
1
|
+
HERMES_VERSION_NAME=0.14.0-commitly-202512051838-1e8c447f2
|
|
2
2
|
HERMES_V1_VERSION_NAME=250829098.0.4
|
|
@@ -17,6 +17,8 @@ import type {
|
|
|
17
17
|
AnimatedNodeConfig,
|
|
18
18
|
EventMapping,
|
|
19
19
|
} from '../../../Libraries/Animated/NativeAnimatedModule';
|
|
20
|
+
import type {Spec as NativeAnimatedTurboModuleSpec} from '../../../Libraries/Animated/NativeAnimatedTurboModule';
|
|
21
|
+
import type {Node} from '../../../Libraries/Renderer/shims/ReactNativeTypes';
|
|
20
22
|
import type {EventSubscription} from '../../../Libraries/vendor/emitter/EventEmitter';
|
|
21
23
|
|
|
22
24
|
import NativeAnimatedNonTurboModule from '../../../Libraries/Animated/NativeAnimatedModule';
|
|
@@ -28,8 +30,17 @@ import * as ReactNativeFeatureFlags from '../featureflags/ReactNativeFeatureFlag
|
|
|
28
30
|
import invariant from 'invariant';
|
|
29
31
|
import nullthrows from 'nullthrows';
|
|
30
32
|
|
|
33
|
+
interface NativeAnimatedModuleSpec extends NativeAnimatedTurboModuleSpec {
|
|
34
|
+
// connectAnimatedNodeToShadowNodeFamily is available only in NativeAnimatedNonTurboModule
|
|
35
|
+
+connectAnimatedNodeToShadowNodeFamily?: (
|
|
36
|
+
nodeTag: number,
|
|
37
|
+
// $FlowExpectedError[unclear-type].
|
|
38
|
+
shadowNode: Object,
|
|
39
|
+
) => void;
|
|
40
|
+
}
|
|
41
|
+
|
|
31
42
|
// TODO T69437152 @petetheheat - Delete this fork when Fabric ships to 100%.
|
|
32
|
-
const NativeAnimatedModule:
|
|
43
|
+
const NativeAnimatedModule: ?NativeAnimatedModuleSpec =
|
|
33
44
|
NativeAnimatedNonTurboModule ?? NativeAnimatedTurboModule;
|
|
34
45
|
|
|
35
46
|
let __nativeAnimatedNodeTagCount = 1; /* used for animated nodes */
|
|
@@ -84,6 +95,13 @@ function createNativeOperations(): $NonMaybeType<typeof NativeAnimatedModule> {
|
|
|
84
95
|
'addListener', // 20
|
|
85
96
|
'removeListener', // 21
|
|
86
97
|
];
|
|
98
|
+
if (
|
|
99
|
+
ReactNativeFeatureFlags.cxxNativeAnimatedEnabled() &&
|
|
100
|
+
//eslint-disable-next-line
|
|
101
|
+
ReactNativeFeatureFlags.useSharedAnimatedBackend()
|
|
102
|
+
) {
|
|
103
|
+
methodNames.push('connectAnimatedNodeToShadowNodeFamily');
|
|
104
|
+
}
|
|
87
105
|
const nativeOperations: {
|
|
88
106
|
[$Values<typeof methodNames>]: (...$ReadOnlyArray<mixed>) => void,
|
|
89
107
|
} = {};
|
|
@@ -312,6 +330,16 @@ const API = {
|
|
|
312
330
|
NativeOperations.connectAnimatedNodeToView(nodeTag, viewTag);
|
|
313
331
|
},
|
|
314
332
|
|
|
333
|
+
connectAnimatedNodeToShadowNodeFamily(
|
|
334
|
+
nodeTag: number,
|
|
335
|
+
shadowNode: Node,
|
|
336
|
+
): void {
|
|
337
|
+
NativeOperations.connectAnimatedNodeToShadowNodeFamily?.(
|
|
338
|
+
nodeTag,
|
|
339
|
+
shadowNode,
|
|
340
|
+
);
|
|
341
|
+
},
|
|
342
|
+
|
|
315
343
|
disconnectAnimatedNodeFromView(nodeTag: number, viewTag: number): void {
|
|
316
344
|
NativeOperations.disconnectAnimatedNodeFromView(nodeTag, viewTag);
|
|
317
345
|
},
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<b16ca6ca4e47b347e4f5cb8555d3308f>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
* @noformat
|
|
10
10
|
*/
|
|
@@ -108,6 +108,7 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
|
|
|
108
108
|
enableVirtualViewWindowFocusDetection: Getter<boolean>,
|
|
109
109
|
enableWebPerformanceAPIsByDefault: Getter<boolean>,
|
|
110
110
|
fixMappingOfEventPrioritiesBetweenFabricAndReact: Getter<boolean>,
|
|
111
|
+
fixTextClippingAndroid15useBoundsForWidth: Getter<boolean>,
|
|
111
112
|
fuseboxAssertSingleHostState: Getter<boolean>,
|
|
112
113
|
fuseboxEnabledRelease: Getter<boolean>,
|
|
113
114
|
fuseboxNetworkInspectionEnabled: Getter<boolean>,
|
|
@@ -454,6 +455,10 @@ export const enableWebPerformanceAPIsByDefault: Getter<boolean> = createNativeFl
|
|
|
454
455
|
* Uses the default event priority instead of the discreet event priority by default when dispatching events from Fabric to React.
|
|
455
456
|
*/
|
|
456
457
|
export const fixMappingOfEventPrioritiesBetweenFabricAndReact: Getter<boolean> = createNativeFlagGetter('fixMappingOfEventPrioritiesBetweenFabricAndReact', false);
|
|
458
|
+
/**
|
|
459
|
+
* Fix text clipping starting in Android 15 due to usage of useBoundsForWidth
|
|
460
|
+
*/
|
|
461
|
+
export const fixTextClippingAndroid15useBoundsForWidth: Getter<boolean> = createNativeFlagGetter('fixTextClippingAndroid15useBoundsForWidth', false);
|
|
457
462
|
/**
|
|
458
463
|
* Enable system assertion validating that Fusebox is configured with a single host. When set, the CDP backend will dynamically disable features (Perf and Network) in the event that multiple hosts are registered (undefined behaviour), and broadcast this over `ReactNativeApplication.systemStateChanged`.
|
|
459
464
|
*/
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<c43da900298aae909ac525053b5ba848>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
* @noformat
|
|
10
10
|
*/
|
|
@@ -82,6 +82,7 @@ export interface Spec extends TurboModule {
|
|
|
82
82
|
+enableVirtualViewWindowFocusDetection?: () => boolean;
|
|
83
83
|
+enableWebPerformanceAPIsByDefault?: () => boolean;
|
|
84
84
|
+fixMappingOfEventPrioritiesBetweenFabricAndReact?: () => boolean;
|
|
85
|
+
+fixTextClippingAndroid15useBoundsForWidth?: () => boolean;
|
|
85
86
|
+fuseboxAssertSingleHostState?: () => boolean;
|
|
86
87
|
+fuseboxEnabledRelease?: () => boolean;
|
|
87
88
|
+fuseboxNetworkInspectionEnabled?: () => boolean;
|
|
@@ -49,6 +49,10 @@ export interface Spec extends TurboModule {
|
|
|
49
49
|
+flattenAnimatedNodeOffset: (nodeTag: number) => void;
|
|
50
50
|
+extractAnimatedNodeOffset: (nodeTag: number) => void;
|
|
51
51
|
+connectAnimatedNodeToView: (nodeTag: number, viewTag: number) => void;
|
|
52
|
+
+connectAnimatedNodeToShadowNodeFamily?: (
|
|
53
|
+
nodeTag: number,
|
|
54
|
+
shadowNode: Object,
|
|
55
|
+
) => void;
|
|
52
56
|
+disconnectAnimatedNodeFromView: (nodeTag: number, viewTag: number) => void;
|
|
53
57
|
+restoreDefaultValues: (nodeTag: number) => void;
|
|
54
58
|
+dropAnimatedNode: (tag: number) => void;
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the MIT license found in the
|
|
5
|
-
* LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/
|
|
7
|
-
|
|
8
|
-
package com.facebook.react.uimanager
|
|
9
|
-
|
|
10
|
-
import com.facebook.react.common.annotations.internal.LegacyArchitecture
|
|
11
|
-
import com.facebook.react.common.annotations.internal.LegacyArchitectureLogLevel
|
|
12
|
-
|
|
13
|
-
// Common conditionals:
|
|
14
|
-
// - `kind == PARENT` checks whether the node can host children in the native tree.
|
|
15
|
-
// - `kind != NONE` checks whether the node appears in the native tree.
|
|
16
|
-
@LegacyArchitecture(logLevel = LegacyArchitectureLogLevel.ERROR)
|
|
17
|
-
@Deprecated(
|
|
18
|
-
message = "This class is part of Legacy Architecture and will be removed in a future release",
|
|
19
|
-
level = DeprecationLevel.WARNING,
|
|
20
|
-
)
|
|
21
|
-
internal enum class NativeKind {
|
|
22
|
-
// Node is in the native hierarchy and the HierarchyOptimizer should assume it can host children
|
|
23
|
-
// (e.g. because it's a ViewGroup). Note that it's okay if the node doesn't support children. When
|
|
24
|
-
// the HierarchyOptimizer generates children manipulation commands for that node, the
|
|
25
|
-
// HierarchyManager will catch this case and throw an exception.
|
|
26
|
-
PARENT,
|
|
27
|
-
// Node is in the native hierarchy, it may have children, but it cannot host them itself (e.g.
|
|
28
|
-
// because it isn't a ViewGroup). Consequently, its children need to be hosted by an ancestor.
|
|
29
|
-
LEAF,
|
|
30
|
-
// Node is not in the native hierarchy.
|
|
31
|
-
NONE,
|
|
32
|
-
}
|