react-native 0.83.0-nightly-20251103-54047f891 → 0.83.0-nightly-20251104-502efe1cc
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/Libraries/Text/TextInput/RCTBaseTextInputView.mm +3 -0
- package/React/Base/RCTVersion.m +1 -1
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +0 -8
- package/ReactAndroid/api/ReactAndroid.api +12 -0
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/ReactHost.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +4 -0
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +1 -7
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +1 -11
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +1 -12
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +1 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.kt +17 -14
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +35 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.kt +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +5 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +1 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +1 -15
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +1 -4
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +0 -2
- package/ReactCommon/jsinspector-modern/tests/NetworkReporterTest.cpp +3 -55
- package/ReactCommon/jsinspector-modern/tests/TracingTest.h +82 -0
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +1 -5
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +1 -6
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +18 -36
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +2 -4
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +1 -5
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +1 -10
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +1 -2
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +1 -6
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +1 -3
- package/package.json +9 -9
- package/scripts/cocoapods/rndependencies.rb +30 -4
- package/sdks/hermes-engine/version.properties +2 -2
- package/src/private/featureflags/ReactNativeFeatureFlags.js +1 -6
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +1 -2
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +48 -0
|
@@ -29,7 +29,7 @@ export default class ReactNativeVersion {
|
|
|
29
29
|
static major: number = 0;
|
|
30
30
|
static minor: number = 83;
|
|
31
31
|
static patch: number = 0;
|
|
32
|
-
static prerelease: string | null = 'nightly-
|
|
32
|
+
static prerelease: string | null = 'nightly-20251104-502efe1cc';
|
|
33
33
|
|
|
34
34
|
static getVersionString(): string {
|
|
35
35
|
return `${this.major}.${this.minor}.${this.patch}${this.prerelease != null ? `-${this.prerelease}` : ''}`;
|
|
@@ -727,6 +727,9 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithFrame : (CGRect)frame)
|
|
|
727
727
|
return @"Join";
|
|
728
728
|
case UIReturnKeyEmergencyCall:
|
|
729
729
|
return @"Emergency Call";
|
|
730
|
+
case UIReturnKeyDefault:
|
|
731
|
+
case UIReturnKeyContinue:
|
|
732
|
+
case UIReturnKeyDone:
|
|
730
733
|
default:
|
|
731
734
|
return @"Done";
|
|
732
735
|
}
|
package/React/Base/RCTVersion.m
CHANGED
|
@@ -24,7 +24,7 @@ NSDictionary* RCTGetReactNativeVersion(void)
|
|
|
24
24
|
RCTVersionMajor: @(0),
|
|
25
25
|
RCTVersionMinor: @(83),
|
|
26
26
|
RCTVersionPatch: @(0),
|
|
27
|
-
RCTVersionPrerelease: @"nightly-
|
|
27
|
+
RCTVersionPrerelease: @"nightly-20251104-502efe1cc",
|
|
28
28
|
};
|
|
29
29
|
});
|
|
30
30
|
return __rnVersion;
|
|
@@ -289,7 +289,6 @@ protected:
|
|
|
289
289
|
methodMap_["shouldPressibilityUseW3CPointerEventsForHover"] = MethodMetadata {.argCount = 0, .invoker = __shouldPressibilityUseW3CPointerEventsForHover};
|
|
290
290
|
methodMap_["shouldTriggerResponderTransferOnScrollAndroid"] = MethodMetadata {.argCount = 0, .invoker = __shouldTriggerResponderTransferOnScrollAndroid};
|
|
291
291
|
methodMap_["skipActivityIdentityAssertionOnHostPause"] = MethodMetadata {.argCount = 0, .invoker = __skipActivityIdentityAssertionOnHostPause};
|
|
292
|
-
methodMap_["sweepActiveTouchOnChildNativeGesturesAndroid"] = MethodMetadata {.argCount = 0, .invoker = __sweepActiveTouchOnChildNativeGesturesAndroid};
|
|
293
292
|
methodMap_["traceTurboModulePromiseRejectionsOnAndroid"] = MethodMetadata {.argCount = 0, .invoker = __traceTurboModulePromiseRejectionsOnAndroid};
|
|
294
293
|
methodMap_["updateRuntimeShadowNodeReferencesOnCommit"] = MethodMetadata {.argCount = 0, .invoker = __updateRuntimeShadowNodeReferencesOnCommit};
|
|
295
294
|
methodMap_["useAlwaysAvailableJSErrorHandling"] = MethodMetadata {.argCount = 0, .invoker = __useAlwaysAvailableJSErrorHandling};
|
|
@@ -772,13 +771,6 @@ private:
|
|
|
772
771
|
return bridging::callFromJs<bool>(rt, &T::skipActivityIdentityAssertionOnHostPause, static_cast<NativeReactNativeFeatureFlagsCxxSpec*>(&turboModule)->jsInvoker_, static_cast<T*>(&turboModule));
|
|
773
772
|
}
|
|
774
773
|
|
|
775
|
-
static jsi::Value __sweepActiveTouchOnChildNativeGesturesAndroid(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* /*args*/, size_t /*count*/) {
|
|
776
|
-
static_assert(
|
|
777
|
-
bridging::getParameterCount(&T::sweepActiveTouchOnChildNativeGesturesAndroid) == 1,
|
|
778
|
-
"Expected sweepActiveTouchOnChildNativeGesturesAndroid(...) to have 1 parameters");
|
|
779
|
-
return bridging::callFromJs<bool>(rt, &T::sweepActiveTouchOnChildNativeGesturesAndroid, static_cast<NativeReactNativeFeatureFlagsCxxSpec*>(&turboModule)->jsInvoker_, static_cast<T*>(&turboModule));
|
|
780
|
-
}
|
|
781
|
-
|
|
782
774
|
static jsi::Value __traceTurboModulePromiseRejectionsOnAndroid(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* /*args*/, size_t /*count*/) {
|
|
783
775
|
static_assert(
|
|
784
776
|
bridging::getParameterCount(&T::traceTurboModulePromiseRejectionsOnAndroid) == 1,
|
|
@@ -239,6 +239,9 @@ public abstract interface class com/facebook/react/ReactHost {
|
|
|
239
239
|
public abstract fun reload (Ljava/lang/String;)Lcom/facebook/react/interfaces/TaskInterface;
|
|
240
240
|
public abstract fun removeBeforeDestroyListener (Lkotlin/jvm/functions/Function0;)V
|
|
241
241
|
public abstract fun removeReactInstanceEventListener (Lcom/facebook/react/ReactInstanceEventListener;)V
|
|
242
|
+
public fun setBundleSource (Ljava/lang/String;)V
|
|
243
|
+
public fun setBundleSource (Ljava/lang/String;Ljava/lang/String;Lkotlin/jvm/functions/Function1;)V
|
|
244
|
+
public static synthetic fun setBundleSource$default (Lcom/facebook/react/ReactHost;Ljava/lang/String;Ljava/lang/String;Lkotlin/jvm/functions/Function1;ILjava/lang/Object;)V
|
|
242
245
|
public fun setDevMenuConfiguration (Lcom/facebook/react/devsupport/DevMenuConfiguration;)V
|
|
243
246
|
public abstract fun start ()Lcom/facebook/react/interfaces/TaskInterface;
|
|
244
247
|
}
|
|
@@ -1943,6 +1946,7 @@ public abstract class com/facebook/react/devsupport/DevSupportManagerBase : com/
|
|
|
1943
1946
|
public fun downloadBundleResourceFromUrlSync (Ljava/lang/String;Ljava/io/File;)Ljava/io/File;
|
|
1944
1947
|
public final fun fetchSplitBundleAndCreateBundleLoader (Ljava/lang/String;Lcom/facebook/react/devsupport/DevSupportManagerBase$CallbackWithBundleLoader;)V
|
|
1945
1948
|
protected final fun getApplicationContext ()Landroid/content/Context;
|
|
1949
|
+
public fun getBundleFilePath ()Ljava/lang/String;
|
|
1946
1950
|
public fun getCurrentActivity ()Landroid/app/Activity;
|
|
1947
1951
|
public final fun getCurrentReactContext ()Lcom/facebook/react/bridge/ReactContext;
|
|
1948
1952
|
public final fun getDevLoadingViewManager ()Lcom/facebook/react/devsupport/interfaces/DevLoadingViewManager;
|
|
@@ -1977,11 +1981,13 @@ public abstract class com/facebook/react/devsupport/DevSupportManagerBase : com/
|
|
|
1977
1981
|
public fun reloadJSFromServer (Ljava/lang/String;Lcom/facebook/react/devsupport/interfaces/BundleLoadCallback;)V
|
|
1978
1982
|
public fun reloadSettings ()V
|
|
1979
1983
|
public fun setAdditionalOptionForPackager (Ljava/lang/String;Ljava/lang/String;)V
|
|
1984
|
+
public fun setBundleFilePath (Ljava/lang/String;)V
|
|
1980
1985
|
public final fun setDevLoadingViewManager (Lcom/facebook/react/devsupport/interfaces/DevLoadingViewManager;)V
|
|
1981
1986
|
public fun setDevMenuEnabled (Z)V
|
|
1982
1987
|
public final fun setDevSupportEnabled (Z)V
|
|
1983
1988
|
public fun setFpsDebugEnabled (Z)V
|
|
1984
1989
|
public fun setHotModuleReplacementEnabled (Z)V
|
|
1990
|
+
public final fun setJsAppBundleName (Ljava/lang/String;)V
|
|
1985
1991
|
public fun setKeyboardShortcutsEnabled (Z)V
|
|
1986
1992
|
public final fun setLastErrorCookie (I)V
|
|
1987
1993
|
public final fun setLastErrorStack ([Lcom/facebook/react/devsupport/interfaces/StackFrame;)V
|
|
@@ -2151,6 +2157,7 @@ public abstract interface class com/facebook/react/devsupport/interfaces/DevSupp
|
|
|
2151
2157
|
public abstract fun createSurfaceDelegate (Ljava/lang/String;)Lcom/facebook/react/common/SurfaceDelegate;
|
|
2152
2158
|
public abstract fun destroyRootView (Landroid/view/View;)V
|
|
2153
2159
|
public abstract fun downloadBundleResourceFromUrlSync (Ljava/lang/String;Ljava/io/File;)Ljava/io/File;
|
|
2160
|
+
public fun getBundleFilePath ()Ljava/lang/String;
|
|
2154
2161
|
public abstract fun getCurrentActivity ()Landroid/app/Activity;
|
|
2155
2162
|
public abstract fun getCurrentReactContext ()Lcom/facebook/react/bridge/ReactContext;
|
|
2156
2163
|
public fun getDevMenuEnabled ()Z
|
|
@@ -2180,6 +2187,7 @@ public abstract interface class com/facebook/react/devsupport/interfaces/DevSupp
|
|
|
2180
2187
|
public abstract fun reloadJSFromServer (Ljava/lang/String;Lcom/facebook/react/devsupport/interfaces/BundleLoadCallback;)V
|
|
2181
2188
|
public abstract fun reloadSettings ()V
|
|
2182
2189
|
public abstract fun setAdditionalOptionForPackager (Ljava/lang/String;Ljava/lang/String;)V
|
|
2190
|
+
public fun setBundleFilePath (Ljava/lang/String;)V
|
|
2183
2191
|
public fun setDevMenuEnabled (Z)V
|
|
2184
2192
|
public abstract fun setDevSupportEnabled (Z)V
|
|
2185
2193
|
public abstract fun setFpsDebugEnabled (Z)V
|
|
@@ -3021,6 +3029,8 @@ public class com/facebook/react/packagerconnection/PackagerConnectionSettings {
|
|
|
3021
3029
|
public fun resetDebugServerHost ()V
|
|
3022
3030
|
public final fun setAdditionalOptionForPackager (Ljava/lang/String;Ljava/lang/String;)V
|
|
3023
3031
|
public fun setDebugServerHost (Ljava/lang/String;)V
|
|
3032
|
+
public final fun setPackagerOptionsUpdater (Lkotlin/jvm/functions/Function1;)V
|
|
3033
|
+
public final fun updatePackagerOptions (Ljava/util/Map;)Ljava/util/Map;
|
|
3024
3034
|
}
|
|
3025
3035
|
|
|
3026
3036
|
public final class com/facebook/react/packagerconnection/ReconnectingWebSocket : okhttp3/WebSocketListener {
|
|
@@ -3099,6 +3109,8 @@ public final class com/facebook/react/runtime/ReactHostImpl : com/facebook/react
|
|
|
3099
3109
|
public fun reload (Ljava/lang/String;)Lcom/facebook/react/interfaces/TaskInterface;
|
|
3100
3110
|
public fun removeBeforeDestroyListener (Lkotlin/jvm/functions/Function0;)V
|
|
3101
3111
|
public fun removeReactInstanceEventListener (Lcom/facebook/react/ReactInstanceEventListener;)V
|
|
3112
|
+
public fun setBundleSource (Ljava/lang/String;)V
|
|
3113
|
+
public fun setBundleSource (Ljava/lang/String;Ljava/lang/String;Lkotlin/jvm/functions/Function1;)V
|
|
3102
3114
|
public fun setDevMenuConfiguration (Lcom/facebook/react/devsupport/DevMenuConfiguration;)V
|
|
3103
3115
|
public fun start ()Lcom/facebook/react/interfaces/TaskInterface;
|
|
3104
3116
|
}
|
|
@@ -193,4 +193,21 @@ public interface ReactHost {
|
|
|
193
193
|
|
|
194
194
|
/** Set the DevMenu configuration. */
|
|
195
195
|
public fun setDevMenuConfiguration(config: DevMenuConfiguration): Unit = Unit
|
|
196
|
+
|
|
197
|
+
/** Sets the source of the bundle to be loaded from the file system and reloads the app. */
|
|
198
|
+
public fun setBundleSource(filePath: String): Unit = Unit
|
|
199
|
+
|
|
200
|
+
/**
|
|
201
|
+
* Sets the source of the bundle to be loaded from the packager server, updates the packager
|
|
202
|
+
* connection and reloads the app.
|
|
203
|
+
*
|
|
204
|
+
* @param debugServerHost host and port of the server, for example "localhost:8081"
|
|
205
|
+
* @param moduleName the module name to load, for example "js/RNTesterApp.android"
|
|
206
|
+
* @param queryMapper a function that takes current packager options and returns updated options
|
|
207
|
+
*/
|
|
208
|
+
public fun setBundleSource(
|
|
209
|
+
debugServerHost: String,
|
|
210
|
+
moduleName: String,
|
|
211
|
+
queryMapper: (Map<String, String>) -> Map<String, String> = { it },
|
|
212
|
+
): Unit = Unit
|
|
196
213
|
}
|
|
@@ -280,7 +280,11 @@ public open class DevServerHelper(
|
|
|
280
280
|
): String {
|
|
281
281
|
val dev = devMode
|
|
282
282
|
val additionalOptionsBuilder = StringBuilder()
|
|
283
|
-
|
|
283
|
+
val packagerOptions =
|
|
284
|
+
packagerConnectionSettings.updatePackagerOptions(
|
|
285
|
+
packagerConnectionSettings.additionalOptionsForPackager
|
|
286
|
+
)
|
|
287
|
+
for ((key, value) in packagerOptions) {
|
|
284
288
|
if (value.isEmpty()) {
|
|
285
289
|
continue
|
|
286
290
|
}
|
|
@@ -85,7 +85,7 @@ import java.util.Locale
|
|
|
85
85
|
public abstract class DevSupportManagerBase(
|
|
86
86
|
protected val applicationContext: Context,
|
|
87
87
|
public val reactInstanceDevHelper: ReactInstanceDevHelper,
|
|
88
|
-
@get:JvmName("getJSAppBundleName") public
|
|
88
|
+
@get:JvmName("getJSAppBundleName") public var jsAppBundleName: String?,
|
|
89
89
|
enableOnCreate: Boolean,
|
|
90
90
|
public override val redBoxHandler: RedBoxHandler?,
|
|
91
91
|
private val devBundleDownloadListener: DevBundleDownloadListener?,
|
|
@@ -148,6 +148,12 @@ public abstract class DevSupportManagerBase(
|
|
|
148
148
|
field = value
|
|
149
149
|
}
|
|
150
150
|
|
|
151
|
+
override var bundleFilePath: String? = null
|
|
152
|
+
get() = field
|
|
153
|
+
set(value) {
|
|
154
|
+
field = value
|
|
155
|
+
}
|
|
156
|
+
|
|
151
157
|
override val sourceMapUrl: String
|
|
152
158
|
get() = jsAppBundleName?.let { devServerHelper.getSourceMapUrl(it) } ?: ""
|
|
153
159
|
|
package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt
CHANGED
|
@@ -48,6 +48,10 @@ public interface DevSupportManager : JSExceptionHandler {
|
|
|
48
48
|
get() = true
|
|
49
49
|
set(value) = Unit
|
|
50
50
|
|
|
51
|
+
public var bundleFilePath: String?
|
|
52
|
+
get() = null
|
|
53
|
+
set(value) = Unit
|
|
54
|
+
|
|
51
55
|
public var devSupportEnabled: Boolean
|
|
52
56
|
|
|
53
57
|
public fun showNewJavaError(message: String?, e: Throwable)
|
|
@@ -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<<15ede8025e516f2bdc0329efe49f4a62>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -420,12 +420,6 @@ public object ReactNativeFeatureFlags {
|
|
|
420
420
|
@JvmStatic
|
|
421
421
|
public fun skipActivityIdentityAssertionOnHostPause(): Boolean = accessor.skipActivityIdentityAssertionOnHostPause()
|
|
422
422
|
|
|
423
|
-
/**
|
|
424
|
-
* A flag to tell Fabric to sweep active touches from JSTouchDispatcher in Android when a child native gesture is started.
|
|
425
|
-
*/
|
|
426
|
-
@JvmStatic
|
|
427
|
-
public fun sweepActiveTouchOnChildNativeGesturesAndroid(): Boolean = accessor.sweepActiveTouchOnChildNativeGesturesAndroid()
|
|
428
|
-
|
|
429
423
|
/**
|
|
430
424
|
* Enables storing js caller stack when creating promise in native module. This is useful in case of Promise rejection and tracing the cause.
|
|
431
425
|
*/
|
|
@@ -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<<c62242068e649aa652b1a8f700bf0ab3>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -85,7 +85,6 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
85
85
|
private var shouldPressibilityUseW3CPointerEventsForHoverCache: Boolean? = null
|
|
86
86
|
private var shouldTriggerResponderTransferOnScrollAndroidCache: Boolean? = null
|
|
87
87
|
private var skipActivityIdentityAssertionOnHostPauseCache: Boolean? = null
|
|
88
|
-
private var sweepActiveTouchOnChildNativeGesturesAndroidCache: Boolean? = null
|
|
89
88
|
private var traceTurboModulePromiseRejectionsOnAndroidCache: Boolean? = null
|
|
90
89
|
private var updateRuntimeShadowNodeReferencesOnCommitCache: Boolean? = null
|
|
91
90
|
private var useAlwaysAvailableJSErrorHandlingCache: Boolean? = null
|
|
@@ -689,15 +688,6 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
689
688
|
return cached
|
|
690
689
|
}
|
|
691
690
|
|
|
692
|
-
override fun sweepActiveTouchOnChildNativeGesturesAndroid(): Boolean {
|
|
693
|
-
var cached = sweepActiveTouchOnChildNativeGesturesAndroidCache
|
|
694
|
-
if (cached == null) {
|
|
695
|
-
cached = ReactNativeFeatureFlagsCxxInterop.sweepActiveTouchOnChildNativeGesturesAndroid()
|
|
696
|
-
sweepActiveTouchOnChildNativeGesturesAndroidCache = cached
|
|
697
|
-
}
|
|
698
|
-
return cached
|
|
699
|
-
}
|
|
700
|
-
|
|
701
691
|
override fun traceTurboModulePromiseRejectionsOnAndroid(): Boolean {
|
|
702
692
|
var cached = traceTurboModulePromiseRejectionsOnAndroidCache
|
|
703
693
|
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<<9a1bdbc2a3ae299433e690b254d7bf0a>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -158,8 +158,6 @@ public object ReactNativeFeatureFlagsCxxInterop {
|
|
|
158
158
|
|
|
159
159
|
@DoNotStrip @JvmStatic public external fun skipActivityIdentityAssertionOnHostPause(): Boolean
|
|
160
160
|
|
|
161
|
-
@DoNotStrip @JvmStatic public external fun sweepActiveTouchOnChildNativeGesturesAndroid(): Boolean
|
|
162
|
-
|
|
163
161
|
@DoNotStrip @JvmStatic public external fun traceTurboModulePromiseRejectionsOnAndroid(): Boolean
|
|
164
162
|
|
|
165
163
|
@DoNotStrip @JvmStatic public external fun updateRuntimeShadowNodeReferencesOnCommit(): 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<<0d78a0405db2a10c14bd69aaf2a3708a>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -153,8 +153,6 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
|
|
|
153
153
|
|
|
154
154
|
override fun skipActivityIdentityAssertionOnHostPause(): Boolean = false
|
|
155
155
|
|
|
156
|
-
override fun sweepActiveTouchOnChildNativeGesturesAndroid(): Boolean = true
|
|
157
|
-
|
|
158
156
|
override fun traceTurboModulePromiseRejectionsOnAndroid(): Boolean = false
|
|
159
157
|
|
|
160
158
|
override fun updateRuntimeShadowNodeReferencesOnCommit(): 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<<98f16fd1bb180b247ee87bb24b10120e>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -89,7 +89,6 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
89
89
|
private var shouldPressibilityUseW3CPointerEventsForHoverCache: Boolean? = null
|
|
90
90
|
private var shouldTriggerResponderTransferOnScrollAndroidCache: Boolean? = null
|
|
91
91
|
private var skipActivityIdentityAssertionOnHostPauseCache: Boolean? = null
|
|
92
|
-
private var sweepActiveTouchOnChildNativeGesturesAndroidCache: Boolean? = null
|
|
93
92
|
private var traceTurboModulePromiseRejectionsOnAndroidCache: Boolean? = null
|
|
94
93
|
private var updateRuntimeShadowNodeReferencesOnCommitCache: Boolean? = null
|
|
95
94
|
private var useAlwaysAvailableJSErrorHandlingCache: Boolean? = null
|
|
@@ -758,16 +757,6 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
758
757
|
return cached
|
|
759
758
|
}
|
|
760
759
|
|
|
761
|
-
override fun sweepActiveTouchOnChildNativeGesturesAndroid(): Boolean {
|
|
762
|
-
var cached = sweepActiveTouchOnChildNativeGesturesAndroidCache
|
|
763
|
-
if (cached == null) {
|
|
764
|
-
cached = currentProvider.sweepActiveTouchOnChildNativeGesturesAndroid()
|
|
765
|
-
accessedFeatureFlags.add("sweepActiveTouchOnChildNativeGesturesAndroid")
|
|
766
|
-
sweepActiveTouchOnChildNativeGesturesAndroidCache = cached
|
|
767
|
-
}
|
|
768
|
-
return cached
|
|
769
|
-
}
|
|
770
|
-
|
|
771
760
|
override fun traceTurboModulePromiseRejectionsOnAndroid(): Boolean {
|
|
772
761
|
var cached = traceTurboModulePromiseRejectionsOnAndroidCache
|
|
773
762
|
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<<c810245ced5a83806ace12572e112a70>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -153,8 +153,6 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
153
153
|
|
|
154
154
|
@DoNotStrip public fun skipActivityIdentityAssertionOnHostPause(): Boolean
|
|
155
155
|
|
|
156
|
-
@DoNotStrip public fun sweepActiveTouchOnChildNativeGesturesAndroid(): Boolean
|
|
157
|
-
|
|
158
156
|
@DoNotStrip public fun traceTurboModulePromiseRejectionsOnAndroid(): Boolean
|
|
159
157
|
|
|
160
158
|
@DoNotStrip public fun updateRuntimeShadowNodeReferencesOnCommit(): Boolean
|
|
@@ -5,29 +5,24 @@
|
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
@file:Suppress("DEPRECATION") // PreferenceManager should be migrated to androidx
|
|
9
|
-
|
|
10
8
|
package com.facebook.react.packagerconnection
|
|
11
9
|
|
|
12
10
|
import android.content.Context
|
|
13
|
-
import android.content.SharedPreferences
|
|
14
|
-
import android.preference.PreferenceManager
|
|
15
11
|
import com.facebook.common.logging.FLog
|
|
16
12
|
import com.facebook.react.modules.systeminfo.AndroidInfoHelpers
|
|
17
13
|
|
|
18
14
|
public open class PackagerConnectionSettings(private val appContext: Context) {
|
|
19
|
-
private val preferences: SharedPreferences =
|
|
20
|
-
PreferenceManager.getDefaultSharedPreferences(appContext)
|
|
21
15
|
public val packageName: String = appContext.packageName
|
|
22
16
|
private val _additionalOptionsForPackager: MutableMap<String, String> = mutableMapOf()
|
|
17
|
+
private var _packagerOptionsUpdater: (Map<String, String>) -> Map<String, String> = { it }
|
|
18
|
+
private var cachedHost: String? = null
|
|
23
19
|
|
|
24
20
|
public open var debugServerHost: String
|
|
25
21
|
get() {
|
|
26
|
-
// Check host
|
|
22
|
+
// Check cached host first. If empty try to detect emulator type and use default
|
|
27
23
|
// hostname for those
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
return hostFromSettings
|
|
24
|
+
cachedHost?.let {
|
|
25
|
+
return it
|
|
31
26
|
}
|
|
32
27
|
val host = AndroidInfoHelpers.getServerHost(appContext)
|
|
33
28
|
if (host == AndroidInfoHelpers.DEVICE_LOCALHOST) {
|
|
@@ -36,20 +31,29 @@ public open class PackagerConnectionSettings(private val appContext: Context) {
|
|
|
36
31
|
"You seem to be running on device. Run '${AndroidInfoHelpers.getAdbReverseTcpCommand(appContext)}' to forward the debug server's port to the device.",
|
|
37
32
|
)
|
|
38
33
|
}
|
|
34
|
+
|
|
35
|
+
cachedHost = host
|
|
39
36
|
return host
|
|
40
37
|
}
|
|
41
38
|
set(host) {
|
|
42
39
|
if (host.isEmpty()) {
|
|
43
|
-
|
|
40
|
+
cachedHost = null
|
|
44
41
|
} else {
|
|
45
|
-
|
|
42
|
+
cachedHost = host
|
|
46
43
|
}
|
|
47
44
|
}
|
|
48
45
|
|
|
49
46
|
public open fun resetDebugServerHost() {
|
|
50
|
-
|
|
47
|
+
cachedHost = null
|
|
51
48
|
}
|
|
52
49
|
|
|
50
|
+
public fun setPackagerOptionsUpdater(queryMapper: (Map<String, String>) -> Map<String, String>) {
|
|
51
|
+
_packagerOptionsUpdater = queryMapper
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
public fun updatePackagerOptions(options: Map<String, String>): Map<String, String> =
|
|
55
|
+
_packagerOptionsUpdater(options)
|
|
56
|
+
|
|
53
57
|
public fun setAdditionalOptionForPackager(key: String, value: String) {
|
|
54
58
|
_additionalOptionsForPackager[key] = value
|
|
55
59
|
}
|
|
@@ -59,6 +63,5 @@ public open class PackagerConnectionSettings(private val appContext: Context) {
|
|
|
59
63
|
|
|
60
64
|
private companion object {
|
|
61
65
|
private val TAG = PackagerConnectionSettings::class.java.simpleName
|
|
62
|
-
private const val PREFS_DEBUG_SERVER_HOST_KEY = "debug_http_host"
|
|
63
66
|
}
|
|
64
67
|
}
|
|
@@ -74,6 +74,9 @@ import java.util.concurrent.atomic.AtomicInteger
|
|
|
74
74
|
import java.util.concurrent.atomic.AtomicReference
|
|
75
75
|
import kotlin.Unit
|
|
76
76
|
import kotlin.concurrent.Volatile
|
|
77
|
+
import kotlinx.coroutines.CoroutineScope
|
|
78
|
+
import kotlinx.coroutines.Dispatchers
|
|
79
|
+
import kotlinx.coroutines.launch
|
|
77
80
|
|
|
78
81
|
/**
|
|
79
82
|
* A ReactHost is an object that manages a single [ReactInstance]. A ReactHost can be constructed
|
|
@@ -650,6 +653,28 @@ public class ReactHostImpl(
|
|
|
650
653
|
}
|
|
651
654
|
}
|
|
652
655
|
|
|
656
|
+
@ThreadConfined(value = ThreadConfined.UI)
|
|
657
|
+
override fun setBundleSource(filePath: String) {
|
|
658
|
+
devSupportManager.bundleFilePath = filePath
|
|
659
|
+
reload("Change bundle source")
|
|
660
|
+
}
|
|
661
|
+
|
|
662
|
+
@ThreadConfined(value = ThreadConfined.UI)
|
|
663
|
+
override fun setBundleSource(
|
|
664
|
+
debugServerHost: String,
|
|
665
|
+
moduleName: String,
|
|
666
|
+
queryMapper: (Map<String, String>) -> Map<String, String>,
|
|
667
|
+
) {
|
|
668
|
+
CoroutineScope(Dispatchers.Default).launch {
|
|
669
|
+
(devSupportManager as DevSupportManagerBase).devServerHelper.closePackagerConnection()
|
|
670
|
+
val packagerConnectionSettings = devSupportManager.devSettings.packagerConnectionSettings
|
|
671
|
+
packagerConnectionSettings.setPackagerOptionsUpdater(queryMapper)
|
|
672
|
+
packagerConnectionSettings.debugServerHost = debugServerHost
|
|
673
|
+
devSupportManager.jsAppBundleName = moduleName
|
|
674
|
+
reload("Changed bundle source")
|
|
675
|
+
}
|
|
676
|
+
}
|
|
677
|
+
|
|
653
678
|
@ThreadConfined(ThreadConfined.UI)
|
|
654
679
|
override fun onConfigurationChanged(context: Context) {
|
|
655
680
|
val currentReactContext = this.currentReactContext
|
|
@@ -1064,6 +1089,16 @@ public class ReactHostImpl(
|
|
|
1064
1089
|
get() {
|
|
1065
1090
|
stateTracker.enterState("getJSBundleLoader()")
|
|
1066
1091
|
|
|
1092
|
+
if (devSupportManager.bundleFilePath != null) {
|
|
1093
|
+
return try {
|
|
1094
|
+
Task.forResult(
|
|
1095
|
+
JSBundleLoader.createFileLoader(checkNotNull(devSupportManager.bundleFilePath))
|
|
1096
|
+
)
|
|
1097
|
+
} catch (e: Exception) {
|
|
1098
|
+
Task.forError(e)
|
|
1099
|
+
}
|
|
1100
|
+
}
|
|
1101
|
+
|
|
1067
1102
|
if (useDevSupport && allowPackagerServerAccess) {
|
|
1068
1103
|
return isMetroRunning.onSuccessTask(
|
|
1069
1104
|
{ task ->
|
|
@@ -14,7 +14,6 @@ import com.facebook.infer.annotation.Assertions
|
|
|
14
14
|
import com.facebook.react.bridge.ReactContext
|
|
15
15
|
import com.facebook.react.common.ReactConstants
|
|
16
16
|
import com.facebook.react.common.annotations.UnstableReactNativeAPI
|
|
17
|
-
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags
|
|
18
17
|
import com.facebook.react.uimanager.common.UIManagerType
|
|
19
18
|
import com.facebook.react.uimanager.events.EventDispatcher
|
|
20
19
|
import com.facebook.react.uimanager.events.TouchEvent
|
|
@@ -59,7 +58,7 @@ public class JSTouchDispatcher(private val viewGroup: ViewGroup) {
|
|
|
59
58
|
dispatchCancelEvent(androidEvent, eventDispatcher)
|
|
60
59
|
childIsHandlingNativeGesture = true
|
|
61
60
|
|
|
62
|
-
if (targetTag != -1
|
|
61
|
+
if (targetTag != -1) {
|
|
63
62
|
val surfaceId = UIManagerHelper.getSurfaceId(viewGroup)
|
|
64
63
|
sweepActiveTouchForTag(surfaceId, targetTag, reactContext)
|
|
65
64
|
}
|
|
@@ -29,7 +29,7 @@ internal class PointerEvent private constructor() : Event<PointerEvent>() {
|
|
|
29
29
|
private lateinit var _eventName: String
|
|
30
30
|
private var coalescingKey = UNSET_COALESCING_KEY
|
|
31
31
|
private var pointersEventData: List<WritableMap>? = null
|
|
32
|
-
private
|
|
32
|
+
private var eventState: PointerEventState? = null
|
|
33
33
|
|
|
34
34
|
private fun init(
|
|
35
35
|
eventName: String,
|
|
@@ -84,7 +84,7 @@ internal class PointerEvent private constructor() : Event<PointerEvent>() {
|
|
|
84
84
|
return@EventAnimationDriverMatchSpec false
|
|
85
85
|
}
|
|
86
86
|
if (isBubblingEvent(eventName)) {
|
|
87
|
-
for (viewTarget in eventState.hitPathForActivePointer) {
|
|
87
|
+
for (viewTarget in checkNotNull(eventState).hitPathForActivePointer) {
|
|
88
88
|
if (viewTarget.getViewId() == viewTag) {
|
|
89
89
|
return@EventAnimationDriverMatchSpec true
|
|
90
90
|
}
|
|
@@ -97,10 +97,10 @@ internal class PointerEvent private constructor() : Event<PointerEvent>() {
|
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
override fun onDispose() {
|
|
100
|
+
eventState = null
|
|
100
101
|
pointersEventData = null
|
|
101
|
-
val motionEvent = motionEvent
|
|
102
|
-
this.motionEvent = null
|
|
103
102
|
motionEvent?.recycle()
|
|
103
|
+
motionEvent = null
|
|
104
104
|
|
|
105
105
|
// Either `this` is in the event pool, or motionEvent
|
|
106
106
|
// is null. It is in theory not possible for a PointerEvent to
|
|
@@ -137,6 +137,7 @@ internal class PointerEvent private constructor() : Event<PointerEvent>() {
|
|
|
137
137
|
val pointerEvent = Arguments.createMap()
|
|
138
138
|
val motionEvent = checkNotNull(motionEvent)
|
|
139
139
|
val pointerId = motionEvent.getPointerId(index)
|
|
140
|
+
val eventState = checkNotNull(eventState)
|
|
140
141
|
|
|
141
142
|
// https://www.w3.org/TR/pointerevents/#pointerevent-interface
|
|
142
143
|
pointerEvent.putDouble("pointerId", pointerId.toDouble())
|
|
@@ -1367,7 +1367,7 @@ public class ReactScrollView extends ScrollView
|
|
|
1367
1367
|
|
|
1368
1368
|
mScroller.fling(getScrollX(), scrollY, 0, (int) flingVelocityY, 0, 0, 0, Integer.MAX_VALUE);
|
|
1369
1369
|
} else {
|
|
1370
|
-
scrollTo(getScrollX(), scrollY + (mScroller.
|
|
1370
|
+
scrollTo(getScrollX(), scrollY + (mScroller.getCurrY() - scrollerYBeforeTick));
|
|
1371
1371
|
}
|
|
1372
1372
|
}
|
|
1373
1373
|
}
|
|
@@ -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<<b83a74b94f72ed85c7a5323bb56a38a0>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -429,12 +429,6 @@ class ReactNativeFeatureFlagsJavaProvider
|
|
|
429
429
|
return method(javaProvider_);
|
|
430
430
|
}
|
|
431
431
|
|
|
432
|
-
bool sweepActiveTouchOnChildNativeGesturesAndroid() override {
|
|
433
|
-
static const auto method =
|
|
434
|
-
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("sweepActiveTouchOnChildNativeGesturesAndroid");
|
|
435
|
-
return method(javaProvider_);
|
|
436
|
-
}
|
|
437
|
-
|
|
438
432
|
bool traceTurboModulePromiseRejectionsOnAndroid() override {
|
|
439
433
|
static const auto method =
|
|
440
434
|
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("traceTurboModulePromiseRejectionsOnAndroid");
|
|
@@ -866,11 +860,6 @@ bool JReactNativeFeatureFlagsCxxInterop::skipActivityIdentityAssertionOnHostPaus
|
|
|
866
860
|
return ReactNativeFeatureFlags::skipActivityIdentityAssertionOnHostPause();
|
|
867
861
|
}
|
|
868
862
|
|
|
869
|
-
bool JReactNativeFeatureFlagsCxxInterop::sweepActiveTouchOnChildNativeGesturesAndroid(
|
|
870
|
-
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
|
|
871
|
-
return ReactNativeFeatureFlags::sweepActiveTouchOnChildNativeGesturesAndroid();
|
|
872
|
-
}
|
|
873
|
-
|
|
874
863
|
bool JReactNativeFeatureFlagsCxxInterop::traceTurboModulePromiseRejectionsOnAndroid(
|
|
875
864
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
|
|
876
865
|
return ReactNativeFeatureFlags::traceTurboModulePromiseRejectionsOnAndroid();
|
|
@@ -1182,9 +1171,6 @@ void JReactNativeFeatureFlagsCxxInterop::registerNatives() {
|
|
|
1182
1171
|
makeNativeMethod(
|
|
1183
1172
|
"skipActivityIdentityAssertionOnHostPause",
|
|
1184
1173
|
JReactNativeFeatureFlagsCxxInterop::skipActivityIdentityAssertionOnHostPause),
|
|
1185
|
-
makeNativeMethod(
|
|
1186
|
-
"sweepActiveTouchOnChildNativeGesturesAndroid",
|
|
1187
|
-
JReactNativeFeatureFlagsCxxInterop::sweepActiveTouchOnChildNativeGesturesAndroid),
|
|
1188
1174
|
makeNativeMethod(
|
|
1189
1175
|
"traceTurboModulePromiseRejectionsOnAndroid",
|
|
1190
1176
|
JReactNativeFeatureFlagsCxxInterop::traceTurboModulePromiseRejectionsOnAndroid),
|
|
@@ -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<<6238eb0739467af8477aa8fa79a023bf>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -225,9 +225,6 @@ class JReactNativeFeatureFlagsCxxInterop
|
|
|
225
225
|
static bool skipActivityIdentityAssertionOnHostPause(
|
|
226
226
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
227
227
|
|
|
228
|
-
static bool sweepActiveTouchOnChildNativeGesturesAndroid(
|
|
229
|
-
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
230
|
-
|
|
231
228
|
static bool traceTurboModulePromiseRejectionsOnAndroid(
|
|
232
229
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
233
230
|
|
|
@@ -22,7 +22,7 @@ constexpr struct {
|
|
|
22
22
|
int32_t Major = 0;
|
|
23
23
|
int32_t Minor = 83;
|
|
24
24
|
int32_t Patch = 0;
|
|
25
|
-
std::string_view Prerelease = "nightly-
|
|
25
|
+
std::string_view Prerelease = "nightly-20251104-502efe1cc";
|
|
26
26
|
} ReactNativeVersion;
|
|
27
27
|
|
|
28
28
|
} // namespace facebook::react
|
|
@@ -53,7 +53,6 @@ TracingAgent::~TracingAgent() {
|
|
|
53
53
|
|
|
54
54
|
bool TracingAgent::handleRequest(const cdp::PreparsedRequest& req) {
|
|
55
55
|
if (req.method == "Tracing.start") {
|
|
56
|
-
// @cdp Tracing.start support is experimental.
|
|
57
56
|
if (sessionState_.isDebuggerDomainEnabled) {
|
|
58
57
|
frontendChannel_(
|
|
59
58
|
cdp::jsonError(
|
|
@@ -81,7 +80,6 @@ bool TracingAgent::handleRequest(const cdp::PreparsedRequest& req) {
|
|
|
81
80
|
|
|
82
81
|
return true;
|
|
83
82
|
} else if (req.method == "Tracing.end") {
|
|
84
|
-
// @cdp Tracing.end support is experimental.
|
|
85
83
|
auto state = hostTargetController_.stopTracing();
|
|
86
84
|
|
|
87
85
|
sessionState_.hasPendingTraceRecording = false;
|