react-native-tvos 0.83.6-0 → 0.83.10-0
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/ActionSheetIOS/React-RCTActionSheet.podspec +1 -1
- package/Libraries/Animated/components/AnimatedScrollView.js +1 -1
- package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +1 -1
- package/Libraries/Blob/React-RCTBlob.podspec +1 -1
- package/Libraries/Components/Button.js +2 -2
- package/Libraries/Components/ScrollView/ScrollView.d.ts +1 -1
- package/Libraries/Components/ScrollView/ScrollView.js +1 -1
- package/Libraries/Components/TV/TVViewPropTypes.js +9 -0
- package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +1 -1
- package/Libraries/Components/TextInput/TextInput.flow.js +1 -1
- package/Libraries/Components/Touchable/Touchable.d.ts +1 -1
- package/Libraries/Components/View/View.js +7 -3
- package/Libraries/Components/View/ViewAccessibility.d.ts +1 -1
- package/Libraries/Components/View/ViewAccessibility.js +1 -1
- package/Libraries/Core/ReactNativeVersion.js +1 -1
- package/Libraries/Core/Timers/JSTimers.js +1 -1
- package/Libraries/Core/setUpNavigator.js +1 -1
- package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +1 -1
- package/Libraries/FBLazyVector/FBLazyVector.podspec +1 -1
- package/Libraries/Image/ImageSource.d.ts +1 -1
- package/Libraries/Image/RCTImageLoader.mm +1 -1
- package/Libraries/Image/React-RCTImage.podspec +1 -1
- package/Libraries/Interaction/PanResponder.js +1 -1
- package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -1
- package/Libraries/NativeComponent/TVViewConfig.js +1 -0
- package/Libraries/Network/React-RCTNetwork.podspec +1 -1
- package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -1
- package/Libraries/Renderer/README.md +2 -2
- package/Libraries/Required/RCTRequired.podspec +1 -1
- package/Libraries/Settings/React-RCTSettings.podspec +1 -1
- package/Libraries/Text/React-RCTText.podspec +1 -1
- package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
- package/Libraries/Utilities/PolyfillFunctions.js +1 -1
- package/Libraries/Vibration/React-RCTVibration.podspec +1 -1
- package/README-core.md +6 -6
- package/README.md +13 -1
- package/React/Base/RCTVersion.m +1 -1
- package/React/CoreModules/RCTJscSafeUrl+Internal.h +23 -0
- package/React/CoreModules/RCTJscSafeUrl.mm +38 -0
- package/React/CoreModules/RCTRedBox+Internal.h +42 -0
- package/React/CoreModules/RCTRedBox.mm +30 -471
- package/React/CoreModules/RCTRedBox2AnsiParser+Internal.h +22 -0
- package/React/CoreModules/RCTRedBox2AnsiParser.mm +55 -0
- package/React/CoreModules/RCTRedBox2Controller+Internal.h +34 -0
- package/React/CoreModules/RCTRedBox2Controller.mm +764 -0
- package/React/CoreModules/RCTRedBox2ErrorParser+Internal.h +46 -0
- package/React/CoreModules/RCTRedBox2ErrorParser.mm +57 -0
- package/React/CoreModules/RCTRedBoxController+Internal.h +31 -0
- package/React/CoreModules/RCTRedBoxController.mm +447 -0
- package/React/CoreModules/RCTRedBoxHMRClient+Internal.h +26 -0
- package/React/CoreModules/RCTRedBoxHMRClient.mm +125 -0
- package/React/CoreModules/React-CoreModules.podspec +2 -1
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +24 -0
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +49 -17
- package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +12 -1
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +35 -7
- package/React/React-RCTFBReactNativeSpec.podspec +1 -1
- package/React/React-RCTFabric.podspec +1 -1
- package/React/Runtime/React-RCTRuntime.podspec +1 -1
- package/React/Tests/Mounting/RCTViewComponentViewTests.mm +145 -0
- package/React/Views/ScrollView/RCTScrollView.m +1 -1
- package/React-Core.podspec +1 -1
- package/React.podspec +1 -1
- package/ReactAndroid/build.gradle.kts +1 -1
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/hermes-engine/build.gradle.kts +6 -0
- package/ReactAndroid/publish.gradle +20 -46
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +99 -9
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +19 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +31 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +34 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactAndroidHWInputDeviceHelper.java +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +14 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +14 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +46 -6
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextSelectionWatcher.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +1 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +5 -0
- package/ReactAndroid/src/main/jni/CMakeLists.txt +7 -0
- package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocket.cpp +29 -2
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +43 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +10 -1
- package/ReactApple/Libraries/RCTFoundation/RCTDeprecation/RCTDeprecation.podspec +1 -1
- package/ReactApple/RCTSwiftUI/RCTSwiftUI.podspec +1 -1
- package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIWrapper.podspec +1 -1
- package/ReactCommon/React-Fabric.podspec +7 -1
- package/ReactCommon/React-FabricComponents.podspec +1 -1
- package/ReactCommon/React-FabricImage.podspec +1 -1
- package/ReactCommon/React-Mapbuffer.podspec +1 -1
- package/ReactCommon/ReactCommon.podspec +1 -1
- package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
- package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
- package/ReactCommon/hermes/React-hermes.podspec +1 -1
- package/ReactCommon/hermes/executor/React-jsitracing.podspec +1 -1
- package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +1 -1
- package/ReactCommon/jsi/React-jsi.podspec +1 -1
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -1
- package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +7 -3
- package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +1 -1
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +1 -5
- package/ReactCommon/jsinspector-modern/cdp/React-jsinspectorcdp.podspec +1 -1
- package/ReactCommon/jsinspector-modern/network/React-jsinspectornetwork.podspec +1 -1
- package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +1 -1
- package/ReactCommon/jsitooling/React-jsitooling.podspec +1 -1
- package/ReactCommon/logger/React-logger.podspec +1 -1
- package/ReactCommon/oscompat/React-oscompat.podspec +1 -1
- package/ReactCommon/react/debug/CMakeLists.txt +2 -1
- package/ReactCommon/react/debug/React-debug.podspec +8 -2
- package/ReactCommon/react/debug/redbox/AnsiParser.cpp +139 -0
- package/ReactCommon/react/debug/redbox/AnsiParser.h +35 -0
- package/ReactCommon/react/debug/redbox/JscSafeUrl.cpp +179 -0
- package/ReactCommon/react/debug/redbox/JscSafeUrl.h +27 -0
- package/ReactCommon/react/debug/redbox/RedBoxErrorParser.cpp +171 -0
- package/ReactCommon/react/debug/redbox/RedBoxErrorParser.h +40 -0
- package/ReactCommon/react/debug/redbox/tests/AnsiParserTest.cpp +97 -0
- package/ReactCommon/react/debug/redbox/tests/JscSafeUrlTest.cpp +173 -0
- package/ReactCommon/react/debug/redbox/tests/RedBoxErrorParserTest.cpp +107 -0
- package/ReactCommon/react/featureflags/React-featureflags.podspec +1 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +13 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +16 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +106 -52
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +8 -2
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +13 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +28 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +4 -1
- package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +1 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +1 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +1 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +1 -1
- 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 +2 -1
- package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +1 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +16 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +7 -1
- package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +1 -1
- package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +1 -1
- package/ReactCommon/react/nativemodule/intersectionobserver/React-intersectionobservernativemodule.podspec +1 -1
- package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +1 -1
- package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.h +4 -0
- package/ReactCommon/react/nativemodule/mutationobserver/React-mutationobservernativemodule.podspec +66 -0
- package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -1
- package/ReactCommon/react/nativemodule/webperformance/React-webperformancenativemodule.podspec +1 -1
- package/ReactCommon/react/networking/React-networking.podspec +1 -1
- package/ReactCommon/react/performance/cdpmetrics/React-performancecdpmetrics.podspec +1 -1
- package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -1
- package/ReactCommon/react/renderer/animated/internal/primitives.h +1 -1
- package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +7 -0
- package/ReactCommon/react/renderer/components/view/BaseViewProps.h +1 -0
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +18 -0
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +1 -0
- package/ReactCommon/react/renderer/consistency/React-rendererconsistency.podspec +1 -1
- package/ReactCommon/react/renderer/css/React-renderercss.podspec +1 -1
- package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +1 -1
- package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -1
- package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +1 -1
- package/ReactCommon/react/renderer/mounting/internal/CullingContext.cpp +1 -1
- package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +1 -1
- package/ReactCommon/react/runtime/React-RuntimeCore.podspec +1 -1
- package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +1 -1
- package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +1 -1
- package/ReactCommon/react/timing/React-timing.podspec +1 -1
- package/ReactCommon/react/utils/React-utils.podspec +1 -1
- package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
- package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
- package/ReactCommon/yoga/Yoga.podspec +2 -2
- package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +2 -0
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +11 -7
- package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +2 -0
- package/ReactCommon/yoga/yoga/node/Node.cpp +6 -1
- package/package.json +9 -9
- package/scripts/cocoapods/rncore.rb +26 -8
- package/scripts/cocoapods/rndependencies.rb +26 -5
- package/scripts/cocoapods/spm.rb +1 -1
- package/scripts/cocoapods/utils.rb +2 -2
- package/scripts/codegen/templates/ReactAppDependencyProvider.podspec.template +1 -1
- package/scripts/codegen/templates/ReactCodegen.podspec.template +1 -1
- package/scripts/ios-configure-glog.sh +1 -1
- package/scripts/react_native_pods.rb +1 -0
- package/sdks/hermes-engine/hermes-engine.podspec +6 -1
- package/sdks/hermes-engine/hermes-utils.rb +27 -5
- package/src/private/featureflags/ReactNativeFeatureFlags.js +16 -1
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +4 -1
- package/src/private/setup/setUpDefaultReactNativeEnvironment.js +6 -0
- package/src/private/types/HostInstance.js +1 -1
- package/src/types/globals.d.ts +2 -2
- package/third-party-podspecs/RCT-Folly.podspec +1 -1
- package/third-party-podspecs/ReactNativeDependencies.podspec +1 -1
- package/third-party-podspecs/glog.podspec +1 -1
- package/types/public/ReactNativeTVTypes.d.ts +9 -0
- package/types/public/ReactNativeTypes.d.ts +2 -2
|
@@ -3,25 +3,17 @@
|
|
|
3
3
|
*
|
|
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
|
-
*
|
|
7
|
-
* This file is modified from the original Meta source to work in the
|
|
8
|
-
* `react-native-ci` project.
|
|
9
6
|
*/
|
|
10
|
-
/* groovylint-disable CompileStatic, DuplicateStringLiteral, LineLength, NestedBlockDepth, NoDef, UnusedVariable, VariableTypeRequired */
|
|
11
7
|
|
|
12
8
|
apply plugin: 'maven-publish'
|
|
13
9
|
apply plugin: 'signing'
|
|
14
10
|
|
|
15
|
-
def isSnapshot =
|
|
16
|
-
|
|
17
|
-
def
|
|
18
|
-
def signingPwd = findProperty('SIGNING_PWD')
|
|
19
|
-
def sonatypeUsername = findProperty('SONATYPE_USERNAME')
|
|
20
|
-
def sonatypePassword = findProperty('SONATYPE_PASSWORD')
|
|
11
|
+
def isSnapshot = findProperty("isSnapshot")?.toBoolean()
|
|
12
|
+
def signingKey = findProperty("SIGNING_KEY")
|
|
13
|
+
def signingPwd = findProperty("SIGNING_PWD")
|
|
21
14
|
|
|
22
15
|
def reactAndroidProjectDir = project(':packages:react-native:ReactAndroid').projectDir
|
|
23
|
-
def mavenTempLocalUrl =
|
|
24
|
-
// Rewritten when copying this to ReactAndroid/publish.gradle
|
|
16
|
+
def mavenTempLocalUrl = "file:///tmp/maven-local"
|
|
25
17
|
|
|
26
18
|
publishing {
|
|
27
19
|
publications {
|
|
@@ -29,7 +21,7 @@ publishing {
|
|
|
29
21
|
afterEvaluate {
|
|
30
22
|
// We do a multi variant release, so for Android libraries
|
|
31
23
|
// we publish `components.release`
|
|
32
|
-
if (plugins.hasPlugin(
|
|
24
|
+
if (plugins.hasPlugin("com.android.library")) {
|
|
33
25
|
from components.default
|
|
34
26
|
}
|
|
35
27
|
}
|
|
@@ -37,35 +29,35 @@ publishing {
|
|
|
37
29
|
// We populate the publishing version using the project version,
|
|
38
30
|
// appending -SNAPSHOT if on nightly or prerelase.
|
|
39
31
|
if (isSnapshot) {
|
|
40
|
-
version = this.version +
|
|
32
|
+
version = this.version + "-SNAPSHOT"
|
|
41
33
|
} else {
|
|
42
34
|
version = this.version
|
|
43
35
|
}
|
|
44
36
|
|
|
45
37
|
pom {
|
|
46
|
-
name =
|
|
47
|
-
description =
|
|
48
|
-
url =
|
|
38
|
+
name = "react-native"
|
|
39
|
+
description = "A framework for building native apps with React"
|
|
40
|
+
url = "https://github.com/react/react-native"
|
|
49
41
|
|
|
50
42
|
developers {
|
|
51
43
|
developer {
|
|
52
|
-
id =
|
|
53
|
-
name =
|
|
44
|
+
id = "facebook"
|
|
45
|
+
name = "Facebook"
|
|
54
46
|
}
|
|
55
47
|
}
|
|
56
48
|
|
|
57
49
|
licenses {
|
|
58
50
|
license {
|
|
59
|
-
name =
|
|
60
|
-
url =
|
|
61
|
-
distribution =
|
|
51
|
+
name = "MIT License"
|
|
52
|
+
url = "https://github.com/react/react-native/blob/HEAD/LICENSE"
|
|
53
|
+
distribution = "repo"
|
|
62
54
|
}
|
|
63
55
|
}
|
|
64
56
|
|
|
65
57
|
scm {
|
|
66
|
-
url =
|
|
67
|
-
connection =
|
|
68
|
-
developerConnection =
|
|
58
|
+
url = "https://github.com/react/react-native.git"
|
|
59
|
+
connection = "scm:git:https://github.com/react/react-native.git"
|
|
60
|
+
developerConnection = "scm:git:git@github.com:react/react-native.git"
|
|
69
61
|
}
|
|
70
62
|
}
|
|
71
63
|
}
|
|
@@ -73,36 +65,18 @@ publishing {
|
|
|
73
65
|
|
|
74
66
|
repositories {
|
|
75
67
|
maven {
|
|
76
|
-
name =
|
|
68
|
+
name = "mavenTempLocal"
|
|
77
69
|
url = mavenTempLocalUrl
|
|
78
70
|
}
|
|
79
|
-
maven {
|
|
80
|
-
name = 'sonatypeRelease'
|
|
81
|
-
url = 'https://ossrh-staging-api.central.sonatype.com/service/local/staging/deploy/maven2/'
|
|
82
|
-
// url = 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/'
|
|
83
|
-
credentials(PasswordCredentials) {
|
|
84
|
-
username = sonatypeUsername
|
|
85
|
-
password = sonatypePassword
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
maven {
|
|
89
|
-
name = 'sonatypeSnapshot'
|
|
90
|
-
url = 'https://central.sonatype.com/repository/maven-snapshots/'
|
|
91
|
-
// url = 'https://s01.oss.sonatype.org/content/repositories/snapshots/'
|
|
92
|
-
credentials(PasswordCredentials) {
|
|
93
|
-
username = sonatypeUsername
|
|
94
|
-
password = sonatypePassword
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
71
|
}
|
|
98
72
|
|
|
99
73
|
if (signingKey && signingPwd) {
|
|
100
|
-
logger.info(
|
|
74
|
+
logger.info("PGP Key found - Signing enabled")
|
|
101
75
|
signing {
|
|
102
76
|
useInMemoryPgpKeys(signingKey, signingPwd)
|
|
103
77
|
sign(publishing.publications.release)
|
|
104
78
|
}
|
|
105
79
|
} else {
|
|
106
|
-
logger.info(
|
|
80
|
+
logger.info("Signing disabled as the PGP key was not found")
|
|
107
81
|
}
|
|
108
82
|
}
|
package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt
CHANGED
|
@@ -9,12 +9,18 @@ package com.facebook.react.devsupport
|
|
|
9
9
|
|
|
10
10
|
import android.os.Handler
|
|
11
11
|
import android.os.Looper
|
|
12
|
+
import com.facebook.common.logging.FLog
|
|
12
13
|
import com.facebook.jni.HybridData
|
|
13
14
|
import com.facebook.proguard.annotations.DoNotStrip
|
|
14
15
|
import com.facebook.proguard.annotations.DoNotStripAny
|
|
16
|
+
import com.facebook.react.common.annotations.VisibleForTesting
|
|
15
17
|
import com.facebook.react.devsupport.inspector.DevSupportHttpClient
|
|
16
18
|
import com.facebook.soloader.SoLoader
|
|
17
19
|
import java.io.Closeable
|
|
20
|
+
import java.nio.ByteBuffer
|
|
21
|
+
import java.nio.charset.StandardCharsets
|
|
22
|
+
import java.util.ArrayDeque
|
|
23
|
+
import java.util.Queue
|
|
18
24
|
import okhttp3.Request
|
|
19
25
|
import okhttp3.Response
|
|
20
26
|
import okhttp3.WebSocket
|
|
@@ -66,7 +72,7 @@ internal class CxxInspectorPackagerConnection(
|
|
|
66
72
|
*/
|
|
67
73
|
@DoNotStripAny
|
|
68
74
|
private interface IWebSocket : Closeable {
|
|
69
|
-
fun send(
|
|
75
|
+
fun send(chunk: ByteBuffer)
|
|
70
76
|
|
|
71
77
|
/**
|
|
72
78
|
* Close the WebSocket connection. NOTE: There is no close() method in the C++ interface.
|
|
@@ -75,6 +81,95 @@ internal class CxxInspectorPackagerConnection(
|
|
|
75
81
|
override fun close()
|
|
76
82
|
}
|
|
77
83
|
|
|
84
|
+
/**
|
|
85
|
+
* A simple WebSocket wrapper that prevents having more than 16MiB of messages queued
|
|
86
|
+
* simultaneously. This is done to stop OkHttp from closing the WebSocket connection.
|
|
87
|
+
*
|
|
88
|
+
* https://github.com/react/react-native/issues/39651.
|
|
89
|
+
* https://github.com/square/okhttp/blob/4e7dbec1ea6c9cf8d80422ac9d44b9b185c749a3/okhttp/src/commonJvmAndroid/kotlin/okhttp3/internal/ws/RealWebSocket.kt#L684.
|
|
90
|
+
*/
|
|
91
|
+
private class InspectorPackagerWebSocketImpl(
|
|
92
|
+
private val nativeWebSocket: WebSocket,
|
|
93
|
+
private val handler: Handler,
|
|
94
|
+
) : IWebSocket {
|
|
95
|
+
private val messageQueue: Queue<Pair<String, Int>> = ArrayDeque()
|
|
96
|
+
private val queueLock = Any()
|
|
97
|
+
private val drainRunnable =
|
|
98
|
+
object : Runnable {
|
|
99
|
+
override fun run() {
|
|
100
|
+
FLog.d(TAG, "Attempting to drain the message queue after ${drainDelayMs}ms")
|
|
101
|
+
tryDrainQueue()
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* We are providing a String to OkHttp's WebSocket, because there is no guarantee that all CDP
|
|
107
|
+
* clients will support binary data format.
|
|
108
|
+
*/
|
|
109
|
+
override fun send(chunk: ByteBuffer) {
|
|
110
|
+
synchronized(queueLock) {
|
|
111
|
+
val messageSize = chunk.capacity()
|
|
112
|
+
val message = StandardCharsets.UTF_8.decode(chunk).toString()
|
|
113
|
+
val currentQueueSize = nativeWebSocket.queueSize()
|
|
114
|
+
|
|
115
|
+
if (currentQueueSize + messageSize > MAX_QUEUE_SIZE) {
|
|
116
|
+
FLog.d(TAG, "Reached queue size limit. Queueing the message.")
|
|
117
|
+
messageQueue.offer(Pair(message, messageSize))
|
|
118
|
+
scheduleDrain()
|
|
119
|
+
} else {
|
|
120
|
+
if (messageQueue.isEmpty()) {
|
|
121
|
+
nativeWebSocket.send(message)
|
|
122
|
+
} else {
|
|
123
|
+
messageQueue.offer(Pair(message, messageSize))
|
|
124
|
+
tryDrainQueue()
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
override fun close() {
|
|
131
|
+
synchronized(queueLock) {
|
|
132
|
+
handler.removeCallbacks(drainRunnable)
|
|
133
|
+
messageQueue.clear()
|
|
134
|
+
nativeWebSocket.close(1000, "End of session")
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
private fun tryDrainQueue() {
|
|
139
|
+
synchronized(queueLock) {
|
|
140
|
+
while (messageQueue.isNotEmpty()) {
|
|
141
|
+
val (nextMessage, nextMessageSize) = messageQueue.peek() ?: break
|
|
142
|
+
val currentQueueSize = nativeWebSocket.queueSize()
|
|
143
|
+
|
|
144
|
+
if (currentQueueSize + nextMessageSize <= MAX_QUEUE_SIZE) {
|
|
145
|
+
messageQueue.poll()
|
|
146
|
+
if (!nativeWebSocket.send(nextMessage)) {
|
|
147
|
+
// The WebSocket is closing, closed, or cancelled.
|
|
148
|
+
handler.removeCallbacks(drainRunnable)
|
|
149
|
+
messageQueue.clear()
|
|
150
|
+
|
|
151
|
+
break
|
|
152
|
+
}
|
|
153
|
+
} else {
|
|
154
|
+
scheduleDrain()
|
|
155
|
+
break
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
private fun scheduleDrain() {
|
|
162
|
+
FLog.d(TAG, "Scheduled a task to drain messages queue.")
|
|
163
|
+
handler.removeCallbacks(drainRunnable)
|
|
164
|
+
handler.postDelayed(drainRunnable, drainDelayMs)
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
companion object {
|
|
168
|
+
private val TAG: String = InspectorPackagerWebSocketImpl::class.java.simpleName
|
|
169
|
+
private const val drainDelayMs: Long = 100
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
|
|
78
173
|
/** Java implementation of the C++ InspectorPackagerConnectionDelegate interface. */
|
|
79
174
|
private class DelegateImpl {
|
|
80
175
|
private val httpClient = DevSupportHttpClient.websocketClient
|
|
@@ -124,15 +219,8 @@ internal class CxxInspectorPackagerConnection(
|
|
|
124
219
|
}
|
|
125
220
|
},
|
|
126
221
|
)
|
|
127
|
-
return object : IWebSocket {
|
|
128
|
-
override fun send(message: String) {
|
|
129
|
-
webSocket.send(message)
|
|
130
|
-
}
|
|
131
222
|
|
|
132
|
-
|
|
133
|
-
webSocket.close(1000, "End of session")
|
|
134
|
-
}
|
|
135
|
-
}
|
|
223
|
+
return InspectorPackagerWebSocketImpl(webSocket, handler)
|
|
136
224
|
}
|
|
137
225
|
|
|
138
226
|
@DoNotStrip
|
|
@@ -146,6 +234,8 @@ internal class CxxInspectorPackagerConnection(
|
|
|
146
234
|
SoLoader.loadLibrary("react_devsupportjni")
|
|
147
235
|
}
|
|
148
236
|
|
|
237
|
+
@VisibleForTesting internal const val MAX_QUEUE_SIZE = 16L * 1024 * 1024 // 16MiB
|
|
238
|
+
|
|
149
239
|
@JvmStatic
|
|
150
240
|
private external fun initHybrid(
|
|
151
241
|
url: String,
|
package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt
CHANGED
|
@@ -55,7 +55,7 @@ internal object InspectorNetworkHelper {
|
|
|
55
55
|
response.body().use { responseBody ->
|
|
56
56
|
if (responseBody != null) {
|
|
57
57
|
val inputStream = responseBody.byteStream()
|
|
58
|
-
val chunkSize = 1024
|
|
58
|
+
val chunkSize = 8 * 1024 // 8Kb
|
|
59
59
|
val buffer = ByteArray(chunkSize)
|
|
60
60
|
var bytesRead: Int
|
|
61
61
|
|
package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java
CHANGED
|
@@ -1190,8 +1190,8 @@ public class SurfaceMountingManager {
|
|
|
1190
1190
|
// If the view that went offscreen is still being touched, we can't delete it yet.
|
|
1191
1191
|
// We have to delay the deletion till the touch is completed.
|
|
1192
1192
|
// This is causing bugs like those otherwise:
|
|
1193
|
-
// - https://github.com/
|
|
1194
|
-
// - https://github.com/
|
|
1193
|
+
// - https://github.com/react/react-native/issues/44610
|
|
1194
|
+
// - https://github.com/react/react-native/issues/45126
|
|
1195
1195
|
mViewsToDeleteAfterTouchFinishes.add(reactTag);
|
|
1196
1196
|
} else {
|
|
1197
1197
|
// To delete we simply remove the tag from the registry.
|
|
@@ -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<<b700a02133f84260647574d2f7a0f165>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -246,6 +246,12 @@ public object ReactNativeFeatureFlags {
|
|
|
246
246
|
@JvmStatic
|
|
247
247
|
public fun enableModuleArgumentNSNullConversionIOS(): Boolean = accessor.enableModuleArgumentNSNullConversionIOS()
|
|
248
248
|
|
|
249
|
+
/**
|
|
250
|
+
* Enables the MutationObserver Web API in React Native.
|
|
251
|
+
*/
|
|
252
|
+
@JvmStatic
|
|
253
|
+
public fun enableMutationObserverByDefault(): Boolean = accessor.enableMutationObserverByDefault()
|
|
254
|
+
|
|
249
255
|
/**
|
|
250
256
|
* Parse CSS strings using the Fabric CSS parser instead of ViewConfig processing
|
|
251
257
|
*/
|
|
@@ -426,6 +432,18 @@ public object ReactNativeFeatureFlags {
|
|
|
426
432
|
@JvmStatic
|
|
427
433
|
public fun preventShadowTreeCommitExhaustion(): Boolean = accessor.preventShadowTreeCommitExhaustion()
|
|
428
434
|
|
|
435
|
+
/**
|
|
436
|
+
* Use the redesigned RedBox error overlay on Android, styled to match the LogBox visual language.
|
|
437
|
+
*/
|
|
438
|
+
@JvmStatic
|
|
439
|
+
public fun redBoxV2Android(): Boolean = accessor.redBoxV2Android()
|
|
440
|
+
|
|
441
|
+
/**
|
|
442
|
+
* Use the redesigned RedBox error overlay on iOS, styled to match the LogBox visual language.
|
|
443
|
+
*/
|
|
444
|
+
@JvmStatic
|
|
445
|
+
public fun redBoxV2IOS(): Boolean = accessor.redBoxV2IOS()
|
|
446
|
+
|
|
429
447
|
/**
|
|
430
448
|
* Function used to enable / disable Pressibility from using W3C Pointer Events for its hover callbacks
|
|
431
449
|
*/
|
|
@@ -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<<d9309c7f772c314b78b329e5d1ad7216>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -56,6 +56,7 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
56
56
|
private var enableLayoutAnimationsOnIOSCache: Boolean? = null
|
|
57
57
|
private var enableMainQueueCoordinatorOnIOSCache: Boolean? = null
|
|
58
58
|
private var enableModuleArgumentNSNullConversionIOSCache: Boolean? = null
|
|
59
|
+
private var enableMutationObserverByDefaultCache: Boolean? = null
|
|
59
60
|
private var enableNativeCSSParsingCache: Boolean? = null
|
|
60
61
|
private var enableNetworkEventReportingCache: Boolean? = null
|
|
61
62
|
private var enablePreparedTextLayoutCache: Boolean? = null
|
|
@@ -86,6 +87,8 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
86
87
|
private var perfMonitorV2EnabledCache: Boolean? = null
|
|
87
88
|
private var preparedTextCacheSizeCache: Double? = null
|
|
88
89
|
private var preventShadowTreeCommitExhaustionCache: Boolean? = null
|
|
90
|
+
private var redBoxV2AndroidCache: Boolean? = null
|
|
91
|
+
private var redBoxV2IOSCache: Boolean? = null
|
|
89
92
|
private var shouldPressibilityUseW3CPointerEventsForHoverCache: Boolean? = null
|
|
90
93
|
private var shouldTriggerResponderTransferOnScrollAndroidCache: Boolean? = null
|
|
91
94
|
private var skipActivityIdentityAssertionOnHostPauseCache: Boolean? = null
|
|
@@ -432,6 +435,15 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
432
435
|
return cached
|
|
433
436
|
}
|
|
434
437
|
|
|
438
|
+
override fun enableMutationObserverByDefault(): Boolean {
|
|
439
|
+
var cached = enableMutationObserverByDefaultCache
|
|
440
|
+
if (cached == null) {
|
|
441
|
+
cached = ReactNativeFeatureFlagsCxxInterop.enableMutationObserverByDefault()
|
|
442
|
+
enableMutationObserverByDefaultCache = cached
|
|
443
|
+
}
|
|
444
|
+
return cached
|
|
445
|
+
}
|
|
446
|
+
|
|
435
447
|
override fun enableNativeCSSParsing(): Boolean {
|
|
436
448
|
var cached = enableNativeCSSParsingCache
|
|
437
449
|
if (cached == null) {
|
|
@@ -702,6 +714,24 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
702
714
|
return cached
|
|
703
715
|
}
|
|
704
716
|
|
|
717
|
+
override fun redBoxV2Android(): Boolean {
|
|
718
|
+
var cached = redBoxV2AndroidCache
|
|
719
|
+
if (cached == null) {
|
|
720
|
+
cached = ReactNativeFeatureFlagsCxxInterop.redBoxV2Android()
|
|
721
|
+
redBoxV2AndroidCache = cached
|
|
722
|
+
}
|
|
723
|
+
return cached
|
|
724
|
+
}
|
|
725
|
+
|
|
726
|
+
override fun redBoxV2IOS(): Boolean {
|
|
727
|
+
var cached = redBoxV2IOSCache
|
|
728
|
+
if (cached == null) {
|
|
729
|
+
cached = ReactNativeFeatureFlagsCxxInterop.redBoxV2IOS()
|
|
730
|
+
redBoxV2IOSCache = cached
|
|
731
|
+
}
|
|
732
|
+
return cached
|
|
733
|
+
}
|
|
734
|
+
|
|
705
735
|
override fun shouldPressibilityUseW3CPointerEventsForHover(): Boolean {
|
|
706
736
|
var cached = shouldPressibilityUseW3CPointerEventsForHoverCache
|
|
707
737
|
if (cached == null) {
|
|
@@ -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<<1081d2d4673967a11e8f9ac287c89f02>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -100,6 +100,8 @@ public object ReactNativeFeatureFlagsCxxInterop {
|
|
|
100
100
|
|
|
101
101
|
@DoNotStrip @JvmStatic public external fun enableModuleArgumentNSNullConversionIOS(): Boolean
|
|
102
102
|
|
|
103
|
+
@DoNotStrip @JvmStatic public external fun enableMutationObserverByDefault(): Boolean
|
|
104
|
+
|
|
103
105
|
@DoNotStrip @JvmStatic public external fun enableNativeCSSParsing(): Boolean
|
|
104
106
|
|
|
105
107
|
@DoNotStrip @JvmStatic public external fun enableNetworkEventReporting(): Boolean
|
|
@@ -160,6 +162,10 @@ public object ReactNativeFeatureFlagsCxxInterop {
|
|
|
160
162
|
|
|
161
163
|
@DoNotStrip @JvmStatic public external fun preventShadowTreeCommitExhaustion(): Boolean
|
|
162
164
|
|
|
165
|
+
@DoNotStrip @JvmStatic public external fun redBoxV2Android(): Boolean
|
|
166
|
+
|
|
167
|
+
@DoNotStrip @JvmStatic public external fun redBoxV2IOS(): Boolean
|
|
168
|
+
|
|
163
169
|
@DoNotStrip @JvmStatic public external fun shouldPressibilityUseW3CPointerEventsForHover(): Boolean
|
|
164
170
|
|
|
165
171
|
@DoNotStrip @JvmStatic public external fun shouldTriggerResponderTransferOnScrollAndroid(): Boolean
|
|
@@ -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<<e40518ddbe70d708d85e504be47a2d82>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -95,6 +95,8 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
|
|
|
95
95
|
|
|
96
96
|
override fun enableModuleArgumentNSNullConversionIOS(): Boolean = false
|
|
97
97
|
|
|
98
|
+
override fun enableMutationObserverByDefault(): Boolean = false
|
|
99
|
+
|
|
98
100
|
override fun enableNativeCSSParsing(): Boolean = false
|
|
99
101
|
|
|
100
102
|
override fun enableNetworkEventReporting(): Boolean = true
|
|
@@ -155,6 +157,10 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
|
|
|
155
157
|
|
|
156
158
|
override fun preventShadowTreeCommitExhaustion(): Boolean = false
|
|
157
159
|
|
|
160
|
+
override fun redBoxV2Android(): Boolean = false
|
|
161
|
+
|
|
162
|
+
override fun redBoxV2IOS(): Boolean = false
|
|
163
|
+
|
|
158
164
|
override fun shouldPressibilityUseW3CPointerEventsForHover(): Boolean = false
|
|
159
165
|
|
|
160
166
|
override fun shouldTriggerResponderTransferOnScrollAndroid(): Boolean = false
|
|
@@ -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<<6deac57c7f55d6d7406f7dffb1abe487>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -60,6 +60,7 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
60
60
|
private var enableLayoutAnimationsOnIOSCache: Boolean? = null
|
|
61
61
|
private var enableMainQueueCoordinatorOnIOSCache: Boolean? = null
|
|
62
62
|
private var enableModuleArgumentNSNullConversionIOSCache: Boolean? = null
|
|
63
|
+
private var enableMutationObserverByDefaultCache: Boolean? = null
|
|
63
64
|
private var enableNativeCSSParsingCache: Boolean? = null
|
|
64
65
|
private var enableNetworkEventReportingCache: Boolean? = null
|
|
65
66
|
private var enablePreparedTextLayoutCache: Boolean? = null
|
|
@@ -90,6 +91,8 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
90
91
|
private var perfMonitorV2EnabledCache: Boolean? = null
|
|
91
92
|
private var preparedTextCacheSizeCache: Double? = null
|
|
92
93
|
private var preventShadowTreeCommitExhaustionCache: Boolean? = null
|
|
94
|
+
private var redBoxV2AndroidCache: Boolean? = null
|
|
95
|
+
private var redBoxV2IOSCache: Boolean? = null
|
|
93
96
|
private var shouldPressibilityUseW3CPointerEventsForHoverCache: Boolean? = null
|
|
94
97
|
private var shouldTriggerResponderTransferOnScrollAndroidCache: Boolean? = null
|
|
95
98
|
private var skipActivityIdentityAssertionOnHostPauseCache: Boolean? = null
|
|
@@ -472,6 +475,16 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
472
475
|
return cached
|
|
473
476
|
}
|
|
474
477
|
|
|
478
|
+
override fun enableMutationObserverByDefault(): Boolean {
|
|
479
|
+
var cached = enableMutationObserverByDefaultCache
|
|
480
|
+
if (cached == null) {
|
|
481
|
+
cached = currentProvider.enableMutationObserverByDefault()
|
|
482
|
+
accessedFeatureFlags.add("enableMutationObserverByDefault")
|
|
483
|
+
enableMutationObserverByDefaultCache = cached
|
|
484
|
+
}
|
|
485
|
+
return cached
|
|
486
|
+
}
|
|
487
|
+
|
|
475
488
|
override fun enableNativeCSSParsing(): Boolean {
|
|
476
489
|
var cached = enableNativeCSSParsingCache
|
|
477
490
|
if (cached == null) {
|
|
@@ -772,6 +785,26 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
772
785
|
return cached
|
|
773
786
|
}
|
|
774
787
|
|
|
788
|
+
override fun redBoxV2Android(): Boolean {
|
|
789
|
+
var cached = redBoxV2AndroidCache
|
|
790
|
+
if (cached == null) {
|
|
791
|
+
cached = currentProvider.redBoxV2Android()
|
|
792
|
+
accessedFeatureFlags.add("redBoxV2Android")
|
|
793
|
+
redBoxV2AndroidCache = cached
|
|
794
|
+
}
|
|
795
|
+
return cached
|
|
796
|
+
}
|
|
797
|
+
|
|
798
|
+
override fun redBoxV2IOS(): Boolean {
|
|
799
|
+
var cached = redBoxV2IOSCache
|
|
800
|
+
if (cached == null) {
|
|
801
|
+
cached = currentProvider.redBoxV2IOS()
|
|
802
|
+
accessedFeatureFlags.add("redBoxV2IOS")
|
|
803
|
+
redBoxV2IOSCache = cached
|
|
804
|
+
}
|
|
805
|
+
return cached
|
|
806
|
+
}
|
|
807
|
+
|
|
775
808
|
override fun shouldPressibilityUseW3CPointerEventsForHover(): Boolean {
|
|
776
809
|
var cached = shouldPressibilityUseW3CPointerEventsForHoverCache
|
|
777
810
|
if (cached == null) {
|
|
@@ -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<<99e9d1149773ffdb867c2abed02b0302>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -95,6 +95,8 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
95
95
|
|
|
96
96
|
@DoNotStrip public fun enableModuleArgumentNSNullConversionIOS(): Boolean
|
|
97
97
|
|
|
98
|
+
@DoNotStrip public fun enableMutationObserverByDefault(): Boolean
|
|
99
|
+
|
|
98
100
|
@DoNotStrip public fun enableNativeCSSParsing(): Boolean
|
|
99
101
|
|
|
100
102
|
@DoNotStrip public fun enableNetworkEventReporting(): Boolean
|
|
@@ -155,6 +157,10 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
155
157
|
|
|
156
158
|
@DoNotStrip public fun preventShadowTreeCommitExhaustion(): Boolean
|
|
157
159
|
|
|
160
|
+
@DoNotStrip public fun redBoxV2Android(): Boolean
|
|
161
|
+
|
|
162
|
+
@DoNotStrip public fun redBoxV2IOS(): Boolean
|
|
163
|
+
|
|
158
164
|
@DoNotStrip public fun shouldPressibilityUseW3CPointerEventsForHover(): Boolean
|
|
159
165
|
|
|
160
166
|
@DoNotStrip public fun shouldTriggerResponderTransferOnScrollAndroid(): Boolean
|
|
@@ -326,7 +326,7 @@ public open class JavaTimerManager(
|
|
|
326
326
|
|
|
327
327
|
// If the JS thread is busy for multiple frames we cancel any other pending runnable.
|
|
328
328
|
// We also capture the idleCallbackRunnable to tentatively fix:
|
|
329
|
-
// https://github.com/
|
|
329
|
+
// https://github.com/react/react-native/issues/44842
|
|
330
330
|
currentIdleCallbackRunnable?.cancel()
|
|
331
331
|
currentIdleCallbackRunnable = IdleCallbackRunnable(frameTimeNanos)
|
|
332
332
|
reactApplicationContext.runOnJSQueueThread(currentIdleCallbackRunnable)
|
|
@@ -63,6 +63,7 @@ public class ReactAndroidHWInputDeviceHelper {
|
|
|
63
63
|
.put(KeyEvent.KEYCODE_9, "9")
|
|
64
64
|
.put(KeyEvent.KEYCODE_CHANNEL_DOWN, "channelDown")
|
|
65
65
|
.put(KeyEvent.KEYCODE_CHANNEL_UP, "channelUp")
|
|
66
|
+
.put(KeyEvent.KEYCODE_DEL, "delete")
|
|
66
67
|
.put(KeyEvent.KEYCODE_BOOKMARK, "bookmark")
|
|
67
68
|
.put(KeyEvent.KEYCODE_AVR_INPUT, "avrInput")
|
|
68
69
|
.put(KeyEvent.KEYCODE_AVR_POWER, "avrPower")
|
|
@@ -223,7 +223,7 @@ public open class IntentModule(reactContext: ReactApplicationContext) :
|
|
|
223
223
|
}
|
|
224
224
|
ReadableType.Number -> {
|
|
225
225
|
// We cannot know from JS if is an Integer or Double
|
|
226
|
-
// See: https://github.com/
|
|
226
|
+
// See: https://github.com/react/react-native/issues/4141
|
|
227
227
|
// We might need to find a workaround if this is really an issue
|
|
228
228
|
val number = map.getDouble(EXTRA_MAP_KEY_FOR_VALUE)
|
|
229
229
|
intent.putExtra(name, number)
|
|
@@ -165,7 +165,7 @@ public class NetworkingModule(
|
|
|
165
165
|
|
|
166
166
|
@Deprecated(
|
|
167
167
|
"""To be removed in a future release. See
|
|
168
|
-
https://github.com/
|
|
168
|
+
https://github.com/react/react-native/pull/37798#pullrequestreview-1518338914"""
|
|
169
169
|
)
|
|
170
170
|
public interface CustomClientBuilder : com.facebook.react.modules.network.CustomClientBuilder
|
|
171
171
|
|
|
@@ -479,7 +479,7 @@ public class NetworkingModule(
|
|
|
479
479
|
} else {
|
|
480
480
|
// Use getBytes() to convert the body into a byte[], preventing okhttp from
|
|
481
481
|
// appending the character set to the Content-Type header when otherwise unspecified
|
|
482
|
-
// https://github.com/
|
|
482
|
+
// https://github.com/react/react-native/issues/8237
|
|
483
483
|
val charset =
|
|
484
484
|
if (contentMediaType == null) {
|
|
485
485
|
StandardCharsets.UTF_8
|
|
@@ -636,7 +636,7 @@ public class NetworkingModule(
|
|
|
636
636
|
reactApplicationContext,
|
|
637
637
|
requestId,
|
|
638
638
|
devToolsRequestId,
|
|
639
|
-
url,
|
|
639
|
+
response.request().url().toString(),
|
|
640
640
|
response.code(),
|
|
641
641
|
NetworkEventUtil.okHttpHeadersToMap(response.headers()),
|
|
642
642
|
response.body()?.contentLength() ?: 0L,
|
|
@@ -563,7 +563,7 @@ internal class ReactInstance(
|
|
|
563
563
|
// We need to null check here because some Java implementation of the
|
|
564
564
|
// `ViewManagerOnDemandReactPackage` interface could still return null even
|
|
565
565
|
// if the method is marked as returning a non-nullable collection in Kotlin.
|
|
566
|
-
// See https://github.com/
|
|
566
|
+
// See https://github.com/react/react-native/issues/52014
|
|
567
567
|
@Suppress("SENSELESS_COMPARISON")
|
|
568
568
|
if (names == null) {
|
|
569
569
|
RNLog.w(
|
|
@@ -631,7 +631,7 @@ public abstract class BaseViewManager<T extends View, C extends LayoutShadowNode
|
|
|
631
631
|
// The native Android implementation removed the screen density from the
|
|
632
632
|
// calculation, so squaring and a normalization value of
|
|
633
633
|
// sqrt(5) produces an exact replica with iOS.
|
|
634
|
-
// For more information, see https://github.com/
|
|
634
|
+
// For more information, see https://github.com/react/react-native/pull/18302
|
|
635
635
|
float normalizedCameraDistance =
|
|
636
636
|
sanitizeFloatPropertyValue(
|
|
637
637
|
scale * scale * cameraDistance * CAMERA_DISTANCE_NORMALIZATION_MULTIPLIER);
|