react-native 0.84.0-nightly-20251113-6ddba300b → 0.84.0-nightly-20251115-e08abbcb9
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/RCTBundleManager.h +2 -2
- package/React/Base/RCTBundleManager.m +14 -1
- package/React/Base/RCTVersion.m +1 -1
- package/React/CoreModules/RCTDevSettings.h +36 -1
- package/React/CoreModules/RCTDevSettings.mm +45 -9
- package/React/DevSupport/RCTPackagerConnection.h +4 -2
- package/React/DevSupport/RCTPackagerConnection.mm +30 -33
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +16 -0
- package/ReactAndroid/api/ReactAndroid.api +1 -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 +13 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +21 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +5 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +6 -2
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +23 -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 +5 -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/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +84 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +12 -9
- package/ReactAndroid/src/main/jni/CMakeLists.txt +5 -0
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +29 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +7 -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 +9 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +11 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +110 -74
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +6 -2
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +10 -2
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +19 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSCanary.h +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +3 -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 +11 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +5 -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 +13 -3
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +3 -1
- package/src/private/setup/setUpDefaultReactNativeEnvironment.js +6 -0
|
@@ -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<<2912fe4c90e3b493770bf14e70264656>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -27,6 +27,8 @@ public open class ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android : ReactN
|
|
|
27
27
|
|
|
28
28
|
override fun enableFabricRenderer(): Boolean = true
|
|
29
29
|
|
|
30
|
+
override fun enableIntersectionObserverByDefault(): Boolean = true
|
|
31
|
+
|
|
30
32
|
override fun useNativeViewConfigsInBridgelessMode(): Boolean = true
|
|
31
33
|
|
|
32
34
|
override fun useTurboModuleInterop(): Boolean = true
|
|
@@ -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<<48d0d5486793b60914cfd595f0fc78d1>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -51,6 +51,8 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
51
51
|
|
|
52
52
|
@DoNotStrip public fun enableAccumulatedUpdatesInRawPropsAndroid(): Boolean
|
|
53
53
|
|
|
54
|
+
@DoNotStrip public fun enableAndroidAntialiasedBorderRadiusClipping(): Boolean
|
|
55
|
+
|
|
54
56
|
@DoNotStrip public fun enableAndroidLinearText(): Boolean
|
|
55
57
|
|
|
56
58
|
@DoNotStrip public fun enableAndroidTextMeasurementOptimizations(): Boolean
|
|
@@ -93,6 +95,8 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
93
95
|
|
|
94
96
|
@DoNotStrip public fun enableInteropViewManagerClassLookUpOptimizationIOS(): Boolean
|
|
95
97
|
|
|
98
|
+
@DoNotStrip public fun enableIntersectionObserverByDefault(): Boolean
|
|
99
|
+
|
|
96
100
|
@DoNotStrip public fun enableKeyEvents(): Boolean
|
|
97
101
|
|
|
98
102
|
@DoNotStrip public fun enableLayoutAnimationsOnAndroid(): Boolean
|
|
@@ -42,6 +42,29 @@ internal object NetworkEventUtil {
|
|
|
42
42
|
}
|
|
43
43
|
}
|
|
44
44
|
|
|
45
|
+
@Deprecated("Compatibility overload")
|
|
46
|
+
@JvmStatic
|
|
47
|
+
fun onCreateRequest(
|
|
48
|
+
devToolsRequestId: String,
|
|
49
|
+
requestUrl: String,
|
|
50
|
+
requestMethod: String,
|
|
51
|
+
requestHeaders: Map<String, String>,
|
|
52
|
+
requestBody: String,
|
|
53
|
+
encodedDataLength: Long,
|
|
54
|
+
) {
|
|
55
|
+
if (ReactNativeFeatureFlags.enableNetworkEventReporting()) {
|
|
56
|
+
InspectorNetworkReporter.reportRequestStart(
|
|
57
|
+
devToolsRequestId,
|
|
58
|
+
requestUrl,
|
|
59
|
+
requestMethod,
|
|
60
|
+
requestHeaders,
|
|
61
|
+
requestBody,
|
|
62
|
+
encodedDataLength,
|
|
63
|
+
)
|
|
64
|
+
InspectorNetworkReporter.reportConnectionTiming(devToolsRequestId, requestHeaders)
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
45
68
|
@JvmStatic
|
|
46
69
|
fun onDataSend(
|
|
47
70
|
reactContext: ReactApplicationContext?,
|
package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt
CHANGED
|
@@ -9,7 +9,10 @@ package com.facebook.react.uimanager
|
|
|
9
9
|
|
|
10
10
|
import android.graphics.Canvas
|
|
11
11
|
import android.graphics.Color
|
|
12
|
+
import android.graphics.Paint
|
|
12
13
|
import android.graphics.Path
|
|
14
|
+
import android.graphics.PorterDuff
|
|
15
|
+
import android.graphics.PorterDuffXfermode
|
|
13
16
|
import android.graphics.Rect
|
|
14
17
|
import android.graphics.RectF
|
|
15
18
|
import android.graphics.drawable.Drawable
|
|
@@ -19,6 +22,7 @@ import android.widget.ImageView
|
|
|
19
22
|
import androidx.annotation.ColorInt
|
|
20
23
|
import com.facebook.react.bridge.ReadableArray
|
|
21
24
|
import com.facebook.react.common.annotations.UnstableReactNativeAPI
|
|
25
|
+
import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags
|
|
22
26
|
import com.facebook.react.uimanager.PixelUtil.dpToPx
|
|
23
27
|
import com.facebook.react.uimanager.PixelUtil.pxToDp
|
|
24
28
|
import com.facebook.react.uimanager.common.UIManagerType
|
|
@@ -481,12 +485,36 @@ public object BackgroundStyleApplicator {
|
|
|
481
485
|
*/
|
|
482
486
|
@JvmStatic
|
|
483
487
|
public fun clipToPaddingBox(view: View, canvas: Canvas) {
|
|
488
|
+
clipToPaddingBoxWithAntiAliasing(view, canvas, null)
|
|
489
|
+
}
|
|
490
|
+
|
|
491
|
+
/**
|
|
492
|
+
* Clips the canvas to the padding box of the view.
|
|
493
|
+
*
|
|
494
|
+
* The padding box is the area within the borders of the view, accounting for border radius if
|
|
495
|
+
* present.
|
|
496
|
+
*
|
|
497
|
+
* On Android 28 and below, when border radius is present, this uses an antialiased clipping
|
|
498
|
+
* approach with Porter-Duff compositing to avoid jagged edges. The drawContent lambda is invoked
|
|
499
|
+
* to draw the actual content after setting up the layer but before applying the mask.
|
|
500
|
+
*
|
|
501
|
+
* @param view The view whose padding box defines the clipping region
|
|
502
|
+
* @param canvas The canvas to clip
|
|
503
|
+
* @param drawContent Lambda that draws the content after clipping is set up
|
|
504
|
+
*/
|
|
505
|
+
@JvmStatic
|
|
506
|
+
public fun clipToPaddingBoxWithAntiAliasing(
|
|
507
|
+
view: View,
|
|
508
|
+
canvas: Canvas,
|
|
509
|
+
drawContent: (() -> Unit)?,
|
|
510
|
+
) {
|
|
484
511
|
val drawingRect = Rect()
|
|
485
512
|
view.getDrawingRect(drawingRect)
|
|
486
513
|
|
|
487
514
|
val composite = getCompositeBackgroundDrawable(view)
|
|
488
515
|
if (composite == null) {
|
|
489
516
|
canvas.clipRect(drawingRect)
|
|
517
|
+
drawContent?.invoke()
|
|
490
518
|
return
|
|
491
519
|
}
|
|
492
520
|
|
|
@@ -508,15 +536,69 @@ public object BackgroundStyleApplicator {
|
|
|
508
536
|
paddingBoxRect,
|
|
509
537
|
computedBorderInsets,
|
|
510
538
|
)
|
|
511
|
-
|
|
512
539
|
paddingBoxPath.offset(drawingRect.left.toFloat(), drawingRect.top.toFloat())
|
|
513
|
-
|
|
540
|
+
|
|
541
|
+
// On Android 28 and below, use antialiased clipping with Porter-Duff compositing. On newer
|
|
542
|
+
// Android versions, use the standard clipPath.
|
|
543
|
+
if (
|
|
544
|
+
ReactNativeFeatureFlags.enableAndroidAntialiasedBorderRadiusClipping() &&
|
|
545
|
+
Build.VERSION.SDK_INT <= Build.VERSION_CODES.P &&
|
|
546
|
+
view.width > 0 &&
|
|
547
|
+
view.height > 0 &&
|
|
548
|
+
drawContent != null
|
|
549
|
+
) {
|
|
550
|
+
clipWithAntiAliasing(
|
|
551
|
+
view,
|
|
552
|
+
canvas,
|
|
553
|
+
paddingBoxPath,
|
|
554
|
+
drawContent,
|
|
555
|
+
)
|
|
556
|
+
} else {
|
|
557
|
+
canvas.clipPath(paddingBoxPath)
|
|
558
|
+
drawContent?.invoke()
|
|
559
|
+
}
|
|
514
560
|
} else {
|
|
515
561
|
paddingBoxRect.offset(drawingRect.left.toFloat(), drawingRect.top.toFloat())
|
|
516
562
|
canvas.clipRect(paddingBoxRect)
|
|
563
|
+
drawContent?.invoke()
|
|
517
564
|
}
|
|
518
565
|
}
|
|
519
566
|
|
|
567
|
+
/**
|
|
568
|
+
* Applies antialiased clipping using Porter-Duff compositing for Android 28 and below. This draws
|
|
569
|
+
* content to a layer, then applies an antialiased mask to clip it.
|
|
570
|
+
*/
|
|
571
|
+
private fun clipWithAntiAliasing(
|
|
572
|
+
view: View,
|
|
573
|
+
canvas: Canvas,
|
|
574
|
+
paddingBoxPath: Path,
|
|
575
|
+
drawContent: () -> Unit,
|
|
576
|
+
) {
|
|
577
|
+
// Save the layer for Porter-Duff compositing
|
|
578
|
+
val saveCount = canvas.saveLayer(0f, 0f, view.width.toFloat(), view.height.toFloat(), null)
|
|
579
|
+
|
|
580
|
+
// Draw the content first
|
|
581
|
+
drawContent()
|
|
582
|
+
|
|
583
|
+
// Create the antialiased mask path with Porter-Duff DST_IN to clip
|
|
584
|
+
val maskPaint = Paint(Paint.ANTI_ALIAS_FLAG)
|
|
585
|
+
maskPaint.style = Paint.Style.FILL
|
|
586
|
+
maskPaint.xfermode = PorterDuffXfermode(PorterDuff.Mode.DST_IN)
|
|
587
|
+
|
|
588
|
+
// Transparent pixels with INVERSE_WINDING only works on API 28
|
|
589
|
+
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
|
|
590
|
+
maskPaint.color = Color.TRANSPARENT
|
|
591
|
+
paddingBoxPath.setFillType(Path.FillType.INVERSE_WINDING)
|
|
592
|
+
} else {
|
|
593
|
+
maskPaint.color = Color.BLACK
|
|
594
|
+
}
|
|
595
|
+
|
|
596
|
+
canvas.drawPath(paddingBoxPath, maskPaint)
|
|
597
|
+
|
|
598
|
+
// Restore the layer
|
|
599
|
+
canvas.restoreToCount(saveCount)
|
|
600
|
+
}
|
|
601
|
+
|
|
520
602
|
/**
|
|
521
603
|
* Resets the background styling of the view to its original state.
|
|
522
604
|
*
|
|
@@ -372,15 +372,18 @@ public class ReactImageView(
|
|
|
372
372
|
public override fun hasOverlappingRendering(): Boolean = false
|
|
373
373
|
|
|
374
374
|
public override fun onDraw(canvas: Canvas) {
|
|
375
|
-
BackgroundStyleApplicator.
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
375
|
+
BackgroundStyleApplicator.clipToPaddingBoxWithAntiAliasing(this, canvas) {
|
|
376
|
+
try {
|
|
377
|
+
super.onDraw(canvas)
|
|
378
|
+
} catch (e: RuntimeException) {
|
|
379
|
+
// Only provide updates if downloadListener is set (shouldNotify is true)
|
|
380
|
+
if (downloadListener != null) {
|
|
381
|
+
val eventDispatcher =
|
|
382
|
+
UIManagerHelper.getEventDispatcherForReactTag(context as ReactContext, id)
|
|
383
|
+
eventDispatcher?.dispatchEvent(
|
|
384
|
+
createErrorEvent(UIManagerHelper.getSurfaceId(this), id, e)
|
|
385
|
+
)
|
|
386
|
+
}
|
|
384
387
|
}
|
|
385
388
|
}
|
|
386
389
|
}
|
|
@@ -114,6 +114,7 @@ add_react_common_subdir(react/renderer/components/scrollview)
|
|
|
114
114
|
add_react_common_subdir(react/renderer/components/safeareaview)
|
|
115
115
|
add_react_common_subdir(react/renderer/leakchecker)
|
|
116
116
|
add_react_common_subdir(react/renderer/observers/events)
|
|
117
|
+
add_react_common_subdir(react/renderer/observers/intersection)
|
|
117
118
|
add_react_common_subdir(react/renderer/textlayoutmanager)
|
|
118
119
|
add_react_common_subdir(react/utils)
|
|
119
120
|
add_react_common_subdir(react/bridging)
|
|
@@ -124,6 +125,7 @@ add_react_common_subdir(react/nativemodule/dom)
|
|
|
124
125
|
add_react_common_subdir(react/nativemodule/featureflags)
|
|
125
126
|
add_react_common_subdir(react/nativemodule/microtasks)
|
|
126
127
|
add_react_common_subdir(react/nativemodule/idlecallbacks)
|
|
128
|
+
add_react_common_subdir(react/nativemodule/intersectionobserver)
|
|
127
129
|
add_react_common_subdir(react/nativemodule/webperformance)
|
|
128
130
|
add_react_common_subdir(react/networking)
|
|
129
131
|
add_react_common_subdir(jserrorhandler)
|
|
@@ -192,6 +194,7 @@ add_library(reactnative
|
|
|
192
194
|
$<TARGET_OBJECTS:react_nativemodule_dom>
|
|
193
195
|
$<TARGET_OBJECTS:react_nativemodule_featureflags>
|
|
194
196
|
$<TARGET_OBJECTS:react_nativemodule_idlecallbacks>
|
|
197
|
+
$<TARGET_OBJECTS:react_nativemodule_intersectionobserver>
|
|
195
198
|
$<TARGET_OBJECTS:react_nativemodule_microtasks>
|
|
196
199
|
$<TARGET_OBJECTS:react_nativemodule_webperformance>
|
|
197
200
|
$<TARGET_OBJECTS:react_networking>
|
|
@@ -213,6 +216,7 @@ add_library(reactnative
|
|
|
213
216
|
$<TARGET_OBJECTS:react_renderer_mapbuffer>
|
|
214
217
|
$<TARGET_OBJECTS:react_renderer_mounting>
|
|
215
218
|
$<TARGET_OBJECTS:react_renderer_observers_events>
|
|
219
|
+
$<TARGET_OBJECTS:react_renderer_observers_intersection>
|
|
216
220
|
$<TARGET_OBJECTS:react_renderer_runtimescheduler>
|
|
217
221
|
$<TARGET_OBJECTS:react_renderer_scheduler>
|
|
218
222
|
$<TARGET_OBJECTS:react_renderer_telemetry>
|
|
@@ -284,6 +288,7 @@ target_include_directories(reactnative
|
|
|
284
288
|
$<TARGET_PROPERTY:react_nativemodule_dom,INTERFACE_INCLUDE_DIRECTORIES>
|
|
285
289
|
$<TARGET_PROPERTY:react_nativemodule_featureflags,INTERFACE_INCLUDE_DIRECTORIES>
|
|
286
290
|
$<TARGET_PROPERTY:react_nativemodule_idlecallbacks,INTERFACE_INCLUDE_DIRECTORIES>
|
|
291
|
+
$<TARGET_PROPERTY:react_nativemodule_intersectionobserver,INTERFACE_INCLUDE_DIRECTORIES>
|
|
287
292
|
$<TARGET_PROPERTY:react_nativemodule_microtasks,INTERFACE_INCLUDE_DIRECTORIES>
|
|
288
293
|
$<TARGET_PROPERTY:react_nativemodule_webperformance,INTERFACE_INCLUDE_DIRECTORIES>
|
|
289
294
|
$<TARGET_PROPERTY:react_networking,INTERFACE_INCLUDE_DIRECTORIES>
|
|
@@ -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<<5e4e22e976ce1724191c7b7e381ea5a1>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -123,6 +123,12 @@ class ReactNativeFeatureFlagsJavaProvider
|
|
|
123
123
|
return method(javaProvider_);
|
|
124
124
|
}
|
|
125
125
|
|
|
126
|
+
bool enableAndroidAntialiasedBorderRadiusClipping() override {
|
|
127
|
+
static const auto method =
|
|
128
|
+
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("enableAndroidAntialiasedBorderRadiusClipping");
|
|
129
|
+
return method(javaProvider_);
|
|
130
|
+
}
|
|
131
|
+
|
|
126
132
|
bool enableAndroidLinearText() override {
|
|
127
133
|
static const auto method =
|
|
128
134
|
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("enableAndroidLinearText");
|
|
@@ -249,6 +255,12 @@ class ReactNativeFeatureFlagsJavaProvider
|
|
|
249
255
|
return method(javaProvider_);
|
|
250
256
|
}
|
|
251
257
|
|
|
258
|
+
bool enableIntersectionObserverByDefault() override {
|
|
259
|
+
static const auto method =
|
|
260
|
+
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("enableIntersectionObserverByDefault");
|
|
261
|
+
return method(javaProvider_);
|
|
262
|
+
}
|
|
263
|
+
|
|
252
264
|
bool enableKeyEvents() override {
|
|
253
265
|
static const auto method =
|
|
254
266
|
getReactNativeFeatureFlagsProviderJavaClass()->getMethod<jboolean()>("enableKeyEvents");
|
|
@@ -635,6 +647,11 @@ bool JReactNativeFeatureFlagsCxxInterop::enableAccumulatedUpdatesInRawPropsAndro
|
|
|
635
647
|
return ReactNativeFeatureFlags::enableAccumulatedUpdatesInRawPropsAndroid();
|
|
636
648
|
}
|
|
637
649
|
|
|
650
|
+
bool JReactNativeFeatureFlagsCxxInterop::enableAndroidAntialiasedBorderRadiusClipping(
|
|
651
|
+
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
|
|
652
|
+
return ReactNativeFeatureFlags::enableAndroidAntialiasedBorderRadiusClipping();
|
|
653
|
+
}
|
|
654
|
+
|
|
638
655
|
bool JReactNativeFeatureFlagsCxxInterop::enableAndroidLinearText(
|
|
639
656
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
|
|
640
657
|
return ReactNativeFeatureFlags::enableAndroidLinearText();
|
|
@@ -740,6 +757,11 @@ bool JReactNativeFeatureFlagsCxxInterop::enableInteropViewManagerClassLookUpOpti
|
|
|
740
757
|
return ReactNativeFeatureFlags::enableInteropViewManagerClassLookUpOptimizationIOS();
|
|
741
758
|
}
|
|
742
759
|
|
|
760
|
+
bool JReactNativeFeatureFlagsCxxInterop::enableIntersectionObserverByDefault(
|
|
761
|
+
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
|
|
762
|
+
return ReactNativeFeatureFlags::enableIntersectionObserverByDefault();
|
|
763
|
+
}
|
|
764
|
+
|
|
743
765
|
bool JReactNativeFeatureFlagsCxxInterop::enableKeyEvents(
|
|
744
766
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop> /*unused*/) {
|
|
745
767
|
return ReactNativeFeatureFlags::enableKeyEvents();
|
|
@@ -1073,6 +1095,9 @@ void JReactNativeFeatureFlagsCxxInterop::registerNatives() {
|
|
|
1073
1095
|
makeNativeMethod(
|
|
1074
1096
|
"enableAccumulatedUpdatesInRawPropsAndroid",
|
|
1075
1097
|
JReactNativeFeatureFlagsCxxInterop::enableAccumulatedUpdatesInRawPropsAndroid),
|
|
1098
|
+
makeNativeMethod(
|
|
1099
|
+
"enableAndroidAntialiasedBorderRadiusClipping",
|
|
1100
|
+
JReactNativeFeatureFlagsCxxInterop::enableAndroidAntialiasedBorderRadiusClipping),
|
|
1076
1101
|
makeNativeMethod(
|
|
1077
1102
|
"enableAndroidLinearText",
|
|
1078
1103
|
JReactNativeFeatureFlagsCxxInterop::enableAndroidLinearText),
|
|
@@ -1136,6 +1161,9 @@ void JReactNativeFeatureFlagsCxxInterop::registerNatives() {
|
|
|
1136
1161
|
makeNativeMethod(
|
|
1137
1162
|
"enableInteropViewManagerClassLookUpOptimizationIOS",
|
|
1138
1163
|
JReactNativeFeatureFlagsCxxInterop::enableInteropViewManagerClassLookUpOptimizationIOS),
|
|
1164
|
+
makeNativeMethod(
|
|
1165
|
+
"enableIntersectionObserverByDefault",
|
|
1166
|
+
JReactNativeFeatureFlagsCxxInterop::enableIntersectionObserverByDefault),
|
|
1139
1167
|
makeNativeMethod(
|
|
1140
1168
|
"enableKeyEvents",
|
|
1141
1169
|
JReactNativeFeatureFlagsCxxInterop::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<<1cb8ed4a72e9d2b8dd34694485704f60>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -72,6 +72,9 @@ class JReactNativeFeatureFlagsCxxInterop
|
|
|
72
72
|
static bool enableAccumulatedUpdatesInRawPropsAndroid(
|
|
73
73
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
74
74
|
|
|
75
|
+
static bool enableAndroidAntialiasedBorderRadiusClipping(
|
|
76
|
+
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
77
|
+
|
|
75
78
|
static bool enableAndroidLinearText(
|
|
76
79
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
77
80
|
|
|
@@ -135,6 +138,9 @@ class JReactNativeFeatureFlagsCxxInterop
|
|
|
135
138
|
static bool enableInteropViewManagerClassLookUpOptimizationIOS(
|
|
136
139
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
137
140
|
|
|
141
|
+
static bool enableIntersectionObserverByDefault(
|
|
142
|
+
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
143
|
+
|
|
138
144
|
static bool enableKeyEvents(
|
|
139
145
|
facebook::jni::alias_ref<JReactNativeFeatureFlagsCxxInterop>);
|
|
140
146
|
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
<string name="imagebutton_description" gender="unknown">बटन, फोटो</string>
|
|
9
9
|
<string name="combobox_description" gender="unknown">कम्बो बक्स</string>
|
|
10
10
|
<string name="menu_description" gender="unknown">मेनु</string>
|
|
11
|
+
<string name="rn_tab_description" gender="unknown">टयाब</string>
|
|
11
12
|
<string name="state_expanded_description" gender="unknown">विस्तार गरियो</string>
|
|
12
13
|
<string name="state_on_description" gender="unknown">अन</string>
|
|
13
14
|
<string name="state_off_description" gender="unknown">अफ</string>
|
|
@@ -54,7 +54,7 @@ Pod::Spec.new do |s|
|
|
|
54
54
|
depend_on_js_engine(s)
|
|
55
55
|
add_rn_third_party_dependencies(s)
|
|
56
56
|
add_rncore_dependency(s)
|
|
57
|
-
|
|
57
|
+
|
|
58
58
|
s.subspec "animated" do |ss|
|
|
59
59
|
ss.source_files = podspec_sources("react/renderer/animated/**/*.{m,mm,cpp,h}", "react/renderer/animated/**/*.{h}")
|
|
60
60
|
ss.exclude_files = "react/renderer/animated/tests"
|
|
@@ -66,7 +66,7 @@ Pod::Spec.new do |s|
|
|
|
66
66
|
ss.exclude_files = "react/renderer/animations/tests"
|
|
67
67
|
ss.header_dir = "react/renderer/animations"
|
|
68
68
|
end
|
|
69
|
-
|
|
69
|
+
|
|
70
70
|
s.subspec "animationbackend" do |ss|
|
|
71
71
|
ss.source_files = podspec_sources("react/renderer/animationbackend/**/*.{m,mm,cpp,h}", "react/renderer/animationbackend/**/*.{h}")
|
|
72
72
|
ss.header_dir = "react/renderer/animationbackend"
|
|
@@ -179,6 +179,12 @@ Pod::Spec.new do |s|
|
|
|
179
179
|
sss.exclude_files = "react/renderer/observers/events/tests"
|
|
180
180
|
sss.header_dir = "react/renderer/observers/events"
|
|
181
181
|
end
|
|
182
|
+
|
|
183
|
+
ss.subspec "intersection" do |sss|
|
|
184
|
+
sss.source_files = podspec_sources("react/renderer/observers/intersection/**/*.{m,mm,cpp,h}", "react/renderer/observers/intersection/**/*.h")
|
|
185
|
+
sss.exclude_files = "react/renderer/observers/intersection/tests"
|
|
186
|
+
sss.header_dir = "react/renderer/observers/intersection"
|
|
187
|
+
end
|
|
182
188
|
end
|
|
183
189
|
|
|
184
190
|
s.subspec "templateprocessor" do |ss|
|
|
@@ -22,7 +22,7 @@ constexpr struct {
|
|
|
22
22
|
int32_t Major = 0;
|
|
23
23
|
int32_t Minor = 84;
|
|
24
24
|
int32_t Patch = 0;
|
|
25
|
-
std::string_view Prerelease = "nightly-
|
|
25
|
+
std::string_view Prerelease = "nightly-20251115-e08abbcb9";
|
|
26
26
|
} ReactNativeVersion;
|
|
27
27
|
|
|
28
28
|
} // namespace facebook::react
|
|
@@ -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<<9c10486574fdff78933aed6acd90533c>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -82,6 +82,10 @@ bool ReactNativeFeatureFlags::enableAccumulatedUpdatesInRawPropsAndroid() {
|
|
|
82
82
|
return getAccessor().enableAccumulatedUpdatesInRawPropsAndroid();
|
|
83
83
|
}
|
|
84
84
|
|
|
85
|
+
bool ReactNativeFeatureFlags::enableAndroidAntialiasedBorderRadiusClipping() {
|
|
86
|
+
return getAccessor().enableAndroidAntialiasedBorderRadiusClipping();
|
|
87
|
+
}
|
|
88
|
+
|
|
85
89
|
bool ReactNativeFeatureFlags::enableAndroidLinearText() {
|
|
86
90
|
return getAccessor().enableAndroidLinearText();
|
|
87
91
|
}
|
|
@@ -166,6 +170,10 @@ bool ReactNativeFeatureFlags::enableInteropViewManagerClassLookUpOptimizationIOS
|
|
|
166
170
|
return getAccessor().enableInteropViewManagerClassLookUpOptimizationIOS();
|
|
167
171
|
}
|
|
168
172
|
|
|
173
|
+
bool ReactNativeFeatureFlags::enableIntersectionObserverByDefault() {
|
|
174
|
+
return getAccessor().enableIntersectionObserverByDefault();
|
|
175
|
+
}
|
|
176
|
+
|
|
169
177
|
bool ReactNativeFeatureFlags::enableKeyEvents() {
|
|
170
178
|
return getAccessor().enableKeyEvents();
|
|
171
179
|
}
|
|
@@ -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<<72ed560f90d44db777469315e0865c6c>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -109,6 +109,11 @@ class ReactNativeFeatureFlags {
|
|
|
109
109
|
*/
|
|
110
110
|
RN_EXPORT static bool enableAccumulatedUpdatesInRawPropsAndroid();
|
|
111
111
|
|
|
112
|
+
/**
|
|
113
|
+
* Enable antialiased border radius clipping for Android API 28 and below using manual masking with Porter-Duff compositing
|
|
114
|
+
*/
|
|
115
|
+
RN_EXPORT static bool enableAndroidAntialiasedBorderRadiusClipping();
|
|
116
|
+
|
|
112
117
|
/**
|
|
113
118
|
* Enables linear text rendering on Android wherever subpixel text rendering is enabled
|
|
114
119
|
*/
|
|
@@ -214,6 +219,11 @@ class ReactNativeFeatureFlags {
|
|
|
214
219
|
*/
|
|
215
220
|
RN_EXPORT static bool enableInteropViewManagerClassLookUpOptimizationIOS();
|
|
216
221
|
|
|
222
|
+
/**
|
|
223
|
+
* Enables the IntersectionObserver Web API in React Native.
|
|
224
|
+
*/
|
|
225
|
+
RN_EXPORT static bool enableIntersectionObserverByDefault();
|
|
226
|
+
|
|
217
227
|
/**
|
|
218
228
|
* Enables key up/down/press events to be sent to JS from components
|
|
219
229
|
*/
|