react-native 0.84.0-nightly-20251113-6ddba300b → 0.84.0-nightly-20251114-dd6805dec
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/Core/ReactNativeVersion.js +1 -1
- package/React/Base/RCTVersion.m +1 -1
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +8 -0
- package/ReactAndroid/build.gradle.kts +2 -0
- package/ReactAndroid/gradle.properties +1 -1
- 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 +4 -2
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +12 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkEventUtil.kt +23 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
- package/ReactAndroid/src/main/jni/CMakeLists.txt +5 -0
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +15 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +4 -1
- package/ReactAndroid/src/main/res/views/uimanager/values-ne/strings.xml +1 -0
- package/ReactCommon/React-Fabric.podspec +8 -2
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +6 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +71 -53
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +4 -2
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +6 -2
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +10 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSCanary.h +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +2 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +2 -2
- package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +1 -0
- package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +7 -0
- package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +5 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +6 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +3 -1
- package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.h +4 -0
- package/ReactCommon/react/nativemodule/intersectionobserver/React-intersectionobservernativemodule.podspec +66 -0
- package/ReactCommon/react/renderer/core/ShadowNode.cpp +4 -10
- package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +32 -0
- package/package.json +8 -8
- package/scripts/react_native_pods.rb +1 -0
- package/src/private/featureflags/ReactNativeFeatureFlags.js +8 -3
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +2 -1
- package/src/private/setup/setUpDefaultReactNativeEnvironment.js +6 -0
|
@@ -16,7 +16,9 @@ else
|
|
|
16
16
|
source[:tag] = "v#{version}"
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
-
header_search_paths = [
|
|
19
|
+
header_search_paths = [
|
|
20
|
+
"\"$(PODS_ROOT)/Headers/Private/Yoga\"",
|
|
21
|
+
]
|
|
20
22
|
|
|
21
23
|
if ENV['USE_FRAMEWORKS']
|
|
22
24
|
header_search_paths << "\"$(PODS_TARGET_SRCROOT)/../../..\"" # this is needed to allow the defaultsnativemodule to access its own files
|
|
@@ -40,6 +42,7 @@ Pod::Spec.new do |s|
|
|
|
40
42
|
|
|
41
43
|
resolve_use_frameworks(s, header_mappings_dir: "../..", module_name: "React_defaultsnativemodule")
|
|
42
44
|
|
|
45
|
+
s.dependency "Yoga"
|
|
43
46
|
s.dependency "React-jsi"
|
|
44
47
|
s.dependency "React-jsiexecutor"
|
|
45
48
|
depend_on_js_engine(s)
|
|
@@ -49,6 +52,7 @@ Pod::Spec.new do |s|
|
|
|
49
52
|
s.dependency "React-domnativemodule"
|
|
50
53
|
s.dependency "React-microtasksnativemodule"
|
|
51
54
|
s.dependency "React-idlecallbacksnativemodule"
|
|
55
|
+
s.dependency "React-intersectionobservernativemodule"
|
|
52
56
|
s.dependency "React-webperformancenativemodule"
|
|
53
57
|
add_dependency(s, "React-RCTFBReactNativeSpec")
|
|
54
58
|
add_dependency(s, "React-featureflags")
|
|
@@ -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<<3235f8d2413da4e9f10c7d8ff78bfeb8>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -219,6 +219,11 @@ bool NativeReactNativeFeatureFlags::enableInteropViewManagerClassLookUpOptimizat
|
|
|
219
219
|
return ReactNativeFeatureFlags::enableInteropViewManagerClassLookUpOptimizationIOS();
|
|
220
220
|
}
|
|
221
221
|
|
|
222
|
+
bool NativeReactNativeFeatureFlags::enableIntersectionObserverByDefault(
|
|
223
|
+
jsi::Runtime& /*runtime*/) {
|
|
224
|
+
return ReactNativeFeatureFlags::enableIntersectionObserverByDefault();
|
|
225
|
+
}
|
|
226
|
+
|
|
222
227
|
bool NativeReactNativeFeatureFlags::enableKeyEvents(
|
|
223
228
|
jsi::Runtime& /*runtime*/) {
|
|
224
229
|
return ReactNativeFeatureFlags::enableKeyEvents();
|
|
@@ -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<<9a7d4159c54f9ccc3e0d3cc461b66b7e>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -106,6 +106,8 @@ class NativeReactNativeFeatureFlags
|
|
|
106
106
|
|
|
107
107
|
bool enableInteropViewManagerClassLookUpOptimizationIOS(jsi::Runtime& runtime);
|
|
108
108
|
|
|
109
|
+
bool enableIntersectionObserverByDefault(jsi::Runtime& runtime);
|
|
110
|
+
|
|
109
111
|
bool enableKeyEvents(jsi::Runtime& runtime);
|
|
110
112
|
|
|
111
113
|
bool enableLayoutAnimationsOnAndroid(jsi::Runtime& runtime);
|
|
@@ -7,7 +7,11 @@
|
|
|
7
7
|
|
|
8
8
|
#pragma once
|
|
9
9
|
|
|
10
|
+
#if __has_include("FBReactNativeSpecJSI.h") // CocoaPod headers on Apple
|
|
11
|
+
#include "FBReactNativeSpecJSI.h"
|
|
12
|
+
#else
|
|
10
13
|
#include <FBReactNativeSpec/FBReactNativeSpecJSI.h>
|
|
14
|
+
#endif
|
|
11
15
|
#include <react/renderer/bridging/bridging.h>
|
|
12
16
|
#include <react/renderer/observers/intersection/IntersectionObserverManager.h>
|
|
13
17
|
#include <optional>
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
2
|
+
#
|
|
3
|
+
# This source code is licensed under the MIT license found in the
|
|
4
|
+
# LICENSE file in the root directory of this source tree.
|
|
5
|
+
|
|
6
|
+
require "json"
|
|
7
|
+
|
|
8
|
+
package = JSON.parse(File.read(File.join(__dir__, "..", "..", "..", "..", "package.json")))
|
|
9
|
+
version = package['version']
|
|
10
|
+
|
|
11
|
+
source = { :git => 'https://github.com/facebook/react-native.git' }
|
|
12
|
+
if version == '1000.0.0'
|
|
13
|
+
# This is an unpublished version, use the latest commit hash of the react-native repo, which we're presumably in.
|
|
14
|
+
source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
|
|
15
|
+
else
|
|
16
|
+
source[:tag] = "v#{version}"
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
header_search_paths = [
|
|
20
|
+
"\"$(PODS_ROOT)/Headers/Private/Yoga\"",
|
|
21
|
+
]
|
|
22
|
+
|
|
23
|
+
if ENV['USE_FRAMEWORKS']
|
|
24
|
+
header_search_paths << "\"$(PODS_TARGET_SRCROOT)/../../..\"" # this is needed to allow the module access its own files
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
Pod::Spec.new do |s|
|
|
28
|
+
s.name = "React-intersectionobservernativemodule"
|
|
29
|
+
s.version = version
|
|
30
|
+
s.summary = "React Native intersection observer native module"
|
|
31
|
+
s.homepage = "https://reactnative.dev/"
|
|
32
|
+
s.license = package["license"]
|
|
33
|
+
s.author = "Meta Platforms, Inc. and its affiliates"
|
|
34
|
+
s.platforms = min_supported_versions
|
|
35
|
+
s.source = source
|
|
36
|
+
s.source_files = podspec_sources("*.{cpp,h}", "*.h")
|
|
37
|
+
s.header_dir = "react/nativemodule/intersectionobserver"
|
|
38
|
+
s.pod_target_xcconfig = { "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard(),
|
|
39
|
+
"HEADER_SEARCH_PATHS" => header_search_paths.join(' '),
|
|
40
|
+
"OTHER_CFLAGS" => "$(inherited)",
|
|
41
|
+
"DEFINES_MODULE" => "YES" }
|
|
42
|
+
|
|
43
|
+
if ENV['USE_FRAMEWORKS']
|
|
44
|
+
s.module_name = "intersectionobservernativemodule"
|
|
45
|
+
s.header_mappings_dir = "../.."
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
s.dependency "Yoga"
|
|
49
|
+
s.dependency "React-jsi"
|
|
50
|
+
s.dependency "React-jsiexecutor"
|
|
51
|
+
s.dependency "React-cxxreact"
|
|
52
|
+
|
|
53
|
+
depend_on_js_engine(s)
|
|
54
|
+
add_rn_third_party_dependencies(s)
|
|
55
|
+
add_rncore_dependency(s)
|
|
56
|
+
|
|
57
|
+
s.dependency "ReactCommon/turbomodule/core"
|
|
58
|
+
|
|
59
|
+
s.dependency "React-Fabric"
|
|
60
|
+
s.dependency "React-Fabric/bridging"
|
|
61
|
+
s.dependency "React-runtimescheduler"
|
|
62
|
+
add_dependency(s, "React-RCTFBReactNativeSpec")
|
|
63
|
+
add_dependency(s, "React-runtimeexecutor", :additional_framework_paths => ["platform/ios"])
|
|
64
|
+
add_dependency(s, "React-graphics", :additional_framework_paths => ["react/renderer/graphics/platform/ios"])
|
|
65
|
+
|
|
66
|
+
end
|
|
@@ -412,7 +412,6 @@ namespace {
|
|
|
412
412
|
|
|
413
413
|
std::shared_ptr<ShadowNode> cloneMultipleRecursive(
|
|
414
414
|
const ShadowNode& shadowNode,
|
|
415
|
-
const std::unordered_set<const ShadowNodeFamily*>& familiesToUpdate,
|
|
416
415
|
const std::unordered_map<const ShadowNodeFamily*, int>& childrenCount,
|
|
417
416
|
const std::function<std::shared_ptr<
|
|
418
417
|
ShadowNode>(const ShadowNode&, const ShadowNodeFragment&)>& callback) {
|
|
@@ -430,16 +429,12 @@ std::shared_ptr<ShadowNode> cloneMultipleRecursive(
|
|
|
430
429
|
std::make_shared<std::vector<std::shared_ptr<const ShadowNode>>>(
|
|
431
430
|
children);
|
|
432
431
|
}
|
|
433
|
-
(*newChildren)[i] =
|
|
434
|
-
*children[i],
|
|
432
|
+
(*newChildren)[i] =
|
|
433
|
+
cloneMultipleRecursive(*children[i], childrenCount, callback);
|
|
435
434
|
}
|
|
436
435
|
}
|
|
437
436
|
|
|
438
|
-
|
|
439
|
-
if (familiesToUpdate.contains(family)) {
|
|
440
|
-
return callback(shadowNode, fragment);
|
|
441
|
-
}
|
|
442
|
-
return shadowNode.clone(fragment);
|
|
437
|
+
return callback(shadowNode, {.children = newChildren});
|
|
443
438
|
}
|
|
444
439
|
|
|
445
440
|
} // namespace
|
|
@@ -479,8 +474,7 @@ std::shared_ptr<ShadowNode> ShadowNode::cloneMultiple(
|
|
|
479
474
|
return nullptr;
|
|
480
475
|
}
|
|
481
476
|
|
|
482
|
-
return cloneMultipleRecursive(
|
|
483
|
-
*this, familiesToUpdate, childrenCount, callback);
|
|
477
|
+
return cloneMultipleRecursive(*this, childrenCount, callback);
|
|
484
478
|
}
|
|
485
479
|
|
|
486
480
|
#pragma mark - DebugStringConvertible
|
|
@@ -342,3 +342,35 @@ TEST_F(ShadowNodeTest, cloneMultiple) {
|
|
|
342
342
|
EXPECT_EQ(newNodeABA->getTag(), nodeABA_->getTag());
|
|
343
343
|
EXPECT_EQ(newNodeABA.get(), nodeABA_.get());
|
|
344
344
|
}
|
|
345
|
+
|
|
346
|
+
TEST_F(ShadowNodeTest, cloneMultipleWithSingleFamily) {
|
|
347
|
+
auto newProps = std::make_shared<const TestProps>();
|
|
348
|
+
auto newRoot = nodeA_->cloneMultiple(
|
|
349
|
+
{&nodeAB_->getFamily()},
|
|
350
|
+
[&](const ShadowNode& oldShadowNode, const ShadowNodeFragment& fragment) {
|
|
351
|
+
return oldShadowNode.clone({
|
|
352
|
+
.props = newProps,
|
|
353
|
+
.children = fragment.children,
|
|
354
|
+
.state = fragment.state,
|
|
355
|
+
});
|
|
356
|
+
});
|
|
357
|
+
|
|
358
|
+
EXPECT_EQ(newRoot->getTag(), nodeA_->getTag());
|
|
359
|
+
// The callback is called for each cloned node, so the root props are also
|
|
360
|
+
// updated
|
|
361
|
+
EXPECT_EQ(newRoot->getProps(), newProps);
|
|
362
|
+
|
|
363
|
+
auto newNodeAA = newRoot->getChildren()[0];
|
|
364
|
+
EXPECT_EQ(newNodeAA->getTag(), nodeAA_->getTag());
|
|
365
|
+
EXPECT_EQ(newNodeAA->getProps(), nodeAA_->getProps());
|
|
366
|
+
// AA was cloned when its parent was cloned as it was shared
|
|
367
|
+
EXPECT_NE(newNodeAA.get(), nodeAA_.get());
|
|
368
|
+
|
|
369
|
+
auto newNodeAB = newRoot->getChildren()[1];
|
|
370
|
+
EXPECT_EQ(newNodeAB->getTag(), nodeAB_->getTag());
|
|
371
|
+
EXPECT_EQ(newNodeAB->getProps(), newProps);
|
|
372
|
+
|
|
373
|
+
auto newNodeABA = newNodeAB->getChildren()[0];
|
|
374
|
+
EXPECT_EQ(newNodeABA->getTag(), nodeABA_->getTag());
|
|
375
|
+
EXPECT_EQ(newNodeABA.get(), nodeABA_.get());
|
|
376
|
+
}
|
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-20251114-dd6805dec",
|
|
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-20251114-dd6805dec",
|
|
164
|
+
"@react-native/codegen": "0.84.0-nightly-20251114-dd6805dec",
|
|
165
|
+
"@react-native/community-cli-plugin": "0.84.0-nightly-20251114-dd6805dec",
|
|
166
|
+
"@react-native/gradle-plugin": "0.84.0-nightly-20251114-dd6805dec",
|
|
167
|
+
"@react-native/js-polyfills": "0.84.0-nightly-20251114-dd6805dec",
|
|
168
|
+
"@react-native/normalize-colors": "0.84.0-nightly-20251114-dd6805dec",
|
|
169
|
+
"@react-native/virtualized-lists": "0.84.0-nightly-20251114-dd6805dec",
|
|
170
170
|
"abort-controller": "^3.0.0",
|
|
171
171
|
"anser": "^1.4.9",
|
|
172
172
|
"ansi-regex": "^5.0.0",
|
|
@@ -143,6 +143,7 @@ def use_react_native! (
|
|
|
143
143
|
pod 'React-featureflagsnativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/featureflags"
|
|
144
144
|
pod 'React-microtasksnativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/microtasks"
|
|
145
145
|
pod 'React-idlecallbacksnativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/idlecallbacks"
|
|
146
|
+
pod 'React-intersectionobservernativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/intersectionobserver"
|
|
146
147
|
pod 'React-webperformancenativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/webperformance"
|
|
147
148
|
pod 'React-domnativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/dom"
|
|
148
149
|
pod 'React-defaultsnativemodule', :path => "#{prefix}/ReactCommon/react/nativemodule/defaults"
|
|
@@ -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<<312e7dcaaaf8bade0acf80d15e8eedee>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
* @noformat
|
|
10
10
|
*/
|
|
@@ -86,6 +86,7 @@ export type ReactNativeFeatureFlags = $ReadOnly<{
|
|
|
86
86
|
enableImmediateUpdateModeForContentOffsetChanges: Getter<boolean>,
|
|
87
87
|
enableImperativeFocus: Getter<boolean>,
|
|
88
88
|
enableInteropViewManagerClassLookUpOptimizationIOS: Getter<boolean>,
|
|
89
|
+
enableIntersectionObserverByDefault: Getter<boolean>,
|
|
89
90
|
enableKeyEvents: Getter<boolean>,
|
|
90
91
|
enableLayoutAnimationsOnAndroid: Getter<boolean>,
|
|
91
92
|
enableLayoutAnimationsOnIOS: Getter<boolean>,
|
|
@@ -203,7 +204,7 @@ export const shouldUseAnimatedObjectForTransform: Getter<boolean> = createJavaSc
|
|
|
203
204
|
/**
|
|
204
205
|
* Set accessibilityRole to "link" for pressable Text components by default.
|
|
205
206
|
*/
|
|
206
|
-
export const shouldUseLinkRoleForPressableText: Getter<boolean> = createJavaScriptFlagGetter('shouldUseLinkRoleForPressableText',
|
|
207
|
+
export const shouldUseLinkRoleForPressableText: Getter<boolean> = createJavaScriptFlagGetter('shouldUseLinkRoleForPressableText', true);
|
|
207
208
|
|
|
208
209
|
/**
|
|
209
210
|
* removeClippedSubviews prop will be used as the default in FlatList on iOS to match Android
|
|
@@ -364,6 +365,10 @@ export const enableImperativeFocus: Getter<boolean> = createNativeFlagGetter('en
|
|
|
364
365
|
* This is to fix the issue with interop view manager where component descriptor lookup is causing ViewManager to preload.
|
|
365
366
|
*/
|
|
366
367
|
export const enableInteropViewManagerClassLookUpOptimizationIOS: Getter<boolean> = createNativeFlagGetter('enableInteropViewManagerClassLookUpOptimizationIOS', false);
|
|
368
|
+
/**
|
|
369
|
+
* Enables the IntersectionObserver Web API in React Native.
|
|
370
|
+
*/
|
|
371
|
+
export const enableIntersectionObserverByDefault: Getter<boolean> = createNativeFlagGetter('enableIntersectionObserverByDefault', false);
|
|
367
372
|
/**
|
|
368
373
|
* Enables key up/down/press events to be sent to JS from components
|
|
369
374
|
*/
|
|
@@ -499,7 +504,7 @@ export const shouldPressibilityUseW3CPointerEventsForHover: Getter<boolean> = cr
|
|
|
499
504
|
/**
|
|
500
505
|
* Fix BaseViewManager to properly set view.setEnabled() based on accessibilityState.disabled.
|
|
501
506
|
*/
|
|
502
|
-
export const shouldSetEnabledBasedOnAccessibilityState: Getter<boolean> = createNativeFlagGetter('shouldSetEnabledBasedOnAccessibilityState',
|
|
507
|
+
export const shouldSetEnabledBasedOnAccessibilityState: Getter<boolean> = createNativeFlagGetter('shouldSetEnabledBasedOnAccessibilityState', true);
|
|
503
508
|
/**
|
|
504
509
|
* Do not emit touchcancel from Android ScrollView, instead native topScroll event will trigger responder transfer and terminate in RN renderer.
|
|
505
510
|
*/
|
|
@@ -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<<d5e09e0d1f62767dcc810d3295e1b724>>
|
|
8
8
|
* @flow strict
|
|
9
9
|
* @noformat
|
|
10
10
|
*/
|
|
@@ -60,6 +60,7 @@ export interface Spec extends TurboModule {
|
|
|
60
60
|
+enableImmediateUpdateModeForContentOffsetChanges?: () => boolean;
|
|
61
61
|
+enableImperativeFocus?: () => boolean;
|
|
62
62
|
+enableInteropViewManagerClassLookUpOptimizationIOS?: () => boolean;
|
|
63
|
+
+enableIntersectionObserverByDefault?: () => boolean;
|
|
63
64
|
+enableKeyEvents?: () => boolean;
|
|
64
65
|
+enableLayoutAnimationsOnAndroid?: () => boolean;
|
|
65
66
|
+enableLayoutAnimationsOnIOS?: () => boolean;
|
|
@@ -41,4 +41,10 @@ export default function setUpDefaltReactNativeEnvironment(
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
require('../../../Libraries/ReactNative/AppRegistry');
|
|
44
|
+
|
|
45
|
+
if (
|
|
46
|
+
require('../../../src/private/featureflags/ReactNativeFeatureFlags').enableIntersectionObserverByDefault()
|
|
47
|
+
) {
|
|
48
|
+
require('./setUpIntersectionObserver').default();
|
|
49
|
+
}
|
|
44
50
|
}
|