react-native 0.84.0-nightly-20251114-dd6805dec → 0.84.0-nightly-20251116-d52b9d2f8
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 +8 -0
- package/ReactAndroid/api/ReactAndroid.api +1 -0
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +7 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +11 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +12 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +84 -2
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +12 -9
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +15 -1
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +4 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
- package/ReactCommon/jsi/jsi/jsi.h +6 -0
- package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +10 -5
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +6 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +93 -75
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +4 -2
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +10 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +2 -1
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +0 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +6 -1
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +3 -1
- package/ReactCommon/react/renderer/components/image/ImageProps.cpp +2 -2
- package/ReactCommon/react/renderer/components/image/ImageProps.h +2 -2
- package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +9 -2
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +9 -4
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +8 -4
- package/package.json +9 -9
- package/sdks/hermes-engine/version.properties +1 -1
- package/src/private/featureflags/ReactNativeFeatureFlags.js +6 -1
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +2 -1
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +0 -212
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.h +0 -40
|
@@ -29,7 +29,7 @@ export default class ReactNativeVersion {
|
|
|
29
29
|
static major: number = 0;
|
|
30
30
|
static minor: number = 84;
|
|
31
31
|
static patch: number = 0;
|
|
32
|
-
static prerelease: string | null = 'nightly-
|
|
32
|
+
static prerelease: string | null = 'nightly-20251116-d52b9d2f8';
|
|
33
33
|
|
|
34
34
|
static getVersionString(): string {
|
|
35
35
|
return `${this.major}.${this.minor}.${this.patch}${this.prerelease != null ? `-${this.prerelease}` : ''}`;
|
|
@@ -54,9 +54,9 @@ typedef NSMutableArray<NSURLQueryItem *> *_Nullable (^RCTPackagerOptionsUpdater)
|
|
|
54
54
|
|
|
55
55
|
- (nullable NSURL *)getBundleURL;
|
|
56
56
|
|
|
57
|
-
- (
|
|
57
|
+
- (nonnull NSString *)getPackagerServerScheme;
|
|
58
58
|
|
|
59
|
-
- (
|
|
59
|
+
- (nonnull NSString *)getPackagerServerHost;
|
|
60
60
|
|
|
61
61
|
@end
|
|
62
62
|
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
#import "RCTBundleManager.h"
|
|
9
9
|
#import <React/RCTBundleURLProvider.h>
|
|
10
|
+
#import <React/RCTDevLoadingViewSetEnabled.h>
|
|
10
11
|
#import "RCTAssert.h"
|
|
11
12
|
#import "RCTBridge+Private.h"
|
|
12
13
|
#import "RCTBridge.h"
|
|
@@ -48,6 +49,12 @@
|
|
|
48
49
|
{
|
|
49
50
|
return options;
|
|
50
51
|
};
|
|
52
|
+
|
|
53
|
+
// When the bundleFilePath is set in the RCTBundleConfiguration the Metro connection
|
|
54
|
+
// shouldn't be suggested/required.
|
|
55
|
+
if (_bundleFilePath != nil) {
|
|
56
|
+
RCTDevLoadingViewSetEnabled(false);
|
|
57
|
+
}
|
|
51
58
|
}
|
|
52
59
|
|
|
53
60
|
return self;
|
|
@@ -160,7 +167,13 @@
|
|
|
160
167
|
_bridgelessBundleURLGetter != nil,
|
|
161
168
|
@"RCTBundleManager: In bridgeless mode, RCTBridgelessBundleURLGetter must not be nil.");
|
|
162
169
|
|
|
163
|
-
|
|
170
|
+
NSURL *bundleURL = [_bundleConfig getBundleURL];
|
|
171
|
+
|
|
172
|
+
if (bundleURL == nil) {
|
|
173
|
+
return _bridgelessBundleURLGetter();
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
return bundleURL;
|
|
164
177
|
}
|
|
165
178
|
|
|
166
179
|
- (void)resetBundleURL
|
package/React/Base/RCTVersion.m
CHANGED
|
@@ -24,7 +24,7 @@ NSDictionary* RCTGetReactNativeVersion(void)
|
|
|
24
24
|
RCTVersionMajor: @(0),
|
|
25
25
|
RCTVersionMinor: @(84),
|
|
26
26
|
RCTVersionPatch: @(0),
|
|
27
|
-
RCTVersionPrerelease: @"nightly-
|
|
27
|
+
RCTVersionPrerelease: @"nightly-20251116-d52b9d2f8",
|
|
28
28
|
};
|
|
29
29
|
});
|
|
30
30
|
return __rnVersion;
|
|
@@ -11,6 +11,14 @@
|
|
|
11
11
|
#import <React/RCTEventEmitter.h>
|
|
12
12
|
#import <React/RCTInitializing.h>
|
|
13
13
|
|
|
14
|
+
@class RCTPackagerClientResponder;
|
|
15
|
+
typedef uint32_t RCTHandlerToken;
|
|
16
|
+
typedef void (^RCTNotificationHandler)(NSDictionary<NSString *, id> *);
|
|
17
|
+
typedef void (^RCTRequestHandler)(NSDictionary<NSString *, id> *, RCTPackagerClientResponder *);
|
|
18
|
+
typedef void (^RCTConnectedHandler)(void);
|
|
19
|
+
|
|
20
|
+
@class RCTPackagerConnection;
|
|
21
|
+
|
|
14
22
|
@protocol RCTPackagerClientMethod;
|
|
15
23
|
|
|
16
24
|
/**
|
|
@@ -85,6 +93,10 @@
|
|
|
85
93
|
*/
|
|
86
94
|
@property (nonatomic, assign) BOOL isPerfMonitorShown;
|
|
87
95
|
|
|
96
|
+
#if RCT_DEV
|
|
97
|
+
@property (nonatomic, readonly) RCTPackagerConnection *packagerConnection;
|
|
98
|
+
#endif
|
|
99
|
+
|
|
88
100
|
/**
|
|
89
101
|
* Toggle the element inspector.
|
|
90
102
|
*/
|
|
@@ -102,7 +114,30 @@
|
|
|
102
114
|
|
|
103
115
|
#if RCT_DEV_MENU
|
|
104
116
|
- (void)addHandler:(id<RCTPackagerClientMethod>)handler
|
|
105
|
-
forPackagerMethod:(NSString *)name __deprecated_msg("Use
|
|
117
|
+
forPackagerMethod:(NSString *)name __deprecated_msg("Use addRequestHandler or addNotificationHandler instead");
|
|
118
|
+
#endif
|
|
119
|
+
|
|
120
|
+
#if RCT_DEV
|
|
121
|
+
/**
|
|
122
|
+
* Registers a handler for a notification broadcast from the packager. An
|
|
123
|
+
* example is "reload" - an instruction to reload from the packager.
|
|
124
|
+
* If multiple notification handlers are registered for the same method, they
|
|
125
|
+
* will all be invoked sequentially.
|
|
126
|
+
*/
|
|
127
|
+
- (RCTHandlerToken)addNotificationHandler:(RCTNotificationHandler)handler
|
|
128
|
+
queue:(dispatch_queue_t)queue
|
|
129
|
+
forMethod:(NSString *)method;
|
|
130
|
+
|
|
131
|
+
/**
|
|
132
|
+
* Registers a handler for a request from the packager. An example is
|
|
133
|
+
* pokeSamplingProfiler; it asks for profile data from the client.
|
|
134
|
+
* Only one handler can be registered for a given method; calling this
|
|
135
|
+
* displaces any previous request handler registered for that method.
|
|
136
|
+
*/
|
|
137
|
+
- (RCTHandlerToken)addRequestHandler:(RCTRequestHandler)handler
|
|
138
|
+
queue:(dispatch_queue_t)queue
|
|
139
|
+
forMethod:(NSString *)method;
|
|
140
|
+
|
|
106
141
|
#endif
|
|
107
142
|
|
|
108
143
|
@end
|
|
@@ -32,9 +32,12 @@ static NSString *const kRCTDevSettingIsPerfMonitorShown = @"RCTPerfMonitorKey";
|
|
|
32
32
|
|
|
33
33
|
static NSString *const kRCTDevSettingsUserDefaultsKey = @"RCTDevMenu";
|
|
34
34
|
|
|
35
|
+
#if RCT_DEV
|
|
36
|
+
#import <React/RCTPackagerConnection.h>
|
|
37
|
+
#endif
|
|
38
|
+
|
|
35
39
|
#if RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION
|
|
36
40
|
#import <React/RCTPackagerClient.h>
|
|
37
|
-
#import <React/RCTPackagerConnection.h>
|
|
38
41
|
#endif
|
|
39
42
|
|
|
40
43
|
#if RCT_ENABLE_INSPECTOR
|
|
@@ -52,7 +55,7 @@ void RCTDevSettingsSetEnabled(BOOL enabled)
|
|
|
52
55
|
devSettingsMenuEnabled = enabled;
|
|
53
56
|
}
|
|
54
57
|
|
|
55
|
-
#if
|
|
58
|
+
#if RCT_DEV || RCT_REMOTE_PROFILE
|
|
56
59
|
|
|
57
60
|
@interface RCTDevSettingsUserDefaultsDataSource : NSObject <RCTDevSettingsDataSource>
|
|
58
61
|
|
|
@@ -145,6 +148,9 @@ RCT_EXPORT_MODULE()
|
|
|
145
148
|
};
|
|
146
149
|
RCTDevSettingsUserDefaultsDataSource *dataSource =
|
|
147
150
|
[[RCTDevSettingsUserDefaultsDataSource alloc] initWithDefaultValues:defaultValues];
|
|
151
|
+
#if RCT_DEV
|
|
152
|
+
_packagerConnection = [RCTPackagerConnection new];
|
|
153
|
+
#endif
|
|
148
154
|
_isShakeGestureEnabled = true;
|
|
149
155
|
return [self initWithDataSource:dataSource];
|
|
150
156
|
}
|
|
@@ -178,18 +184,27 @@ RCT_EXPORT_MODULE()
|
|
|
178
184
|
|
|
179
185
|
- (void)initialize
|
|
180
186
|
{
|
|
187
|
+
#if RCT_DEV
|
|
188
|
+
[_packagerConnection startWithBundleManager:_bundleManager];
|
|
189
|
+
#endif
|
|
190
|
+
|
|
181
191
|
#if RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION
|
|
182
192
|
if (numInitializedModules++ == 0) {
|
|
183
|
-
reloadToken = [
|
|
193
|
+
reloadToken = [self
|
|
184
194
|
addNotificationHandler:^(id params) {
|
|
185
195
|
RCTTriggerReloadCommandListeners(@"Global hotkey");
|
|
186
196
|
}
|
|
187
197
|
queue:dispatch_get_main_queue()
|
|
188
198
|
forMethod:@"reload"];
|
|
189
199
|
#if RCT_DEV_MENU
|
|
190
|
-
|
|
200
|
+
__weak __typeof(self) weakSelf = self;
|
|
201
|
+
devMenuToken = [self
|
|
191
202
|
addNotificationHandler:^(id params) {
|
|
192
|
-
|
|
203
|
+
__typeof(self) strongSelf = weakSelf;
|
|
204
|
+
if (strongSelf == nullptr) {
|
|
205
|
+
return;
|
|
206
|
+
}
|
|
207
|
+
[[strongSelf.moduleRegistry moduleForName:"DevMenu"] show];
|
|
193
208
|
}
|
|
194
209
|
queue:dispatch_get_main_queue()
|
|
195
210
|
forMethod:@"devMenu"];
|
|
@@ -240,9 +255,9 @@ RCT_EXPORT_MODULE()
|
|
|
240
255
|
[super invalidate];
|
|
241
256
|
#if RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION
|
|
242
257
|
if (--numInitializedModules == 0) {
|
|
243
|
-
[
|
|
258
|
+
[_packagerConnection removeHandler:reloadToken];
|
|
244
259
|
#if RCT_DEV_MENU
|
|
245
|
-
[
|
|
260
|
+
[_packagerConnection removeHandler:devMenuToken];
|
|
246
261
|
#endif
|
|
247
262
|
}
|
|
248
263
|
#endif
|
|
@@ -422,10 +437,27 @@ RCT_EXPORT_METHOD(addMenuItem : (NSString *)title)
|
|
|
422
437
|
}
|
|
423
438
|
}
|
|
424
439
|
|
|
440
|
+
#if RCT_DEV
|
|
441
|
+
- (RCTHandlerToken)addNotificationHandler:(RCTNotificationHandler)handler
|
|
442
|
+
queue:(dispatch_queue_t)queue
|
|
443
|
+
forMethod:(NSString *)method
|
|
444
|
+
{
|
|
445
|
+
return [_packagerConnection addNotificationHandler:handler queue:queue forMethod:method];
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
- (RCTHandlerToken)addRequestHandler:(RCTRequestHandler)handler
|
|
449
|
+
queue:(dispatch_queue_t)queue
|
|
450
|
+
forMethod:(NSString *)method
|
|
451
|
+
{
|
|
452
|
+
return [_packagerConnection addRequestHandler:handler queue:queue forMethod:method];
|
|
453
|
+
}
|
|
454
|
+
|
|
455
|
+
#endif
|
|
456
|
+
|
|
425
457
|
- (void)addHandler:(id<RCTPackagerClientMethod>)handler forPackagerMethod:(NSString *)name
|
|
426
458
|
{
|
|
427
459
|
#if RCT_DEV_SETTINGS_ENABLE_PACKAGER_CONNECTION
|
|
428
|
-
[
|
|
460
|
+
[_packagerConnection addHandler:handler forMethod:name];
|
|
429
461
|
#endif
|
|
430
462
|
}
|
|
431
463
|
|
|
@@ -512,7 +544,7 @@ RCT_EXPORT_METHOD(openDebugger)
|
|
|
512
544
|
|
|
513
545
|
@end
|
|
514
546
|
|
|
515
|
-
#else // #if
|
|
547
|
+
#else // #if RCT_DEV || RCT_REMOTE_PROFILE
|
|
516
548
|
|
|
517
549
|
@interface RCTDevSettings () <NativeDevSettingsSpec>
|
|
518
550
|
@end
|
|
@@ -578,6 +610,10 @@ RCT_EXPORT_METHOD(openDebugger)
|
|
|
578
610
|
return std::make_shared<facebook::react::NativeDevSettingsSpecJSI>(params);
|
|
579
611
|
}
|
|
580
612
|
|
|
613
|
+
- (void)addHandler:(id<RCTPackagerClientMethod>)handler forPackagerMethod:(NSString *)name
|
|
614
|
+
{
|
|
615
|
+
}
|
|
616
|
+
|
|
581
617
|
@end
|
|
582
618
|
|
|
583
619
|
#endif // #if RCT_DEV_MENU
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
#import <Foundation/Foundation.h>
|
|
9
9
|
|
|
10
|
+
#import <React/RCTBundleManager.h>
|
|
10
11
|
#import <React/RCTDefines.h>
|
|
11
12
|
|
|
12
13
|
#if RCT_DEV
|
|
@@ -24,8 +25,6 @@ typedef void (^RCTConnectedHandler)(void);
|
|
|
24
25
|
/** Encapsulates singleton connection to React Native packager. */
|
|
25
26
|
@interface RCTPackagerConnection : NSObject
|
|
26
27
|
|
|
27
|
-
+ (instancetype)sharedPackagerConnection;
|
|
28
|
-
|
|
29
28
|
/**
|
|
30
29
|
* Registers a handler for a notification broadcast from the packager. An
|
|
31
30
|
* example is "reload" - an instruction to reload from the packager.
|
|
@@ -62,6 +61,9 @@ typedef void (^RCTConnectedHandler)(void);
|
|
|
62
61
|
/** Reconnect with given packager server, if packagerServerHostPort has changed. */
|
|
63
62
|
- (void)reconnect:(NSString *)packagerServerHostPort;
|
|
64
63
|
|
|
64
|
+
/** starts packager connection with configuration from the bundle manager */
|
|
65
|
+
- (void)startWithBundleManager:(RCTBundleManager *)bundleManager;
|
|
66
|
+
|
|
65
67
|
/**
|
|
66
68
|
* Historically no distinction was made between notification and request
|
|
67
69
|
* handlers. If you use this method, it will be registered as *both* a
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
#import <React/RCTAssert.h>
|
|
15
15
|
#import <React/RCTBridge.h>
|
|
16
|
+
#import <React/RCTBundleManager.h>
|
|
16
17
|
#import <React/RCTBundleURLProvider.h>
|
|
17
18
|
#import <React/RCTConstants.h>
|
|
18
19
|
#import <React/RCTConvert.h>
|
|
@@ -50,43 +51,13 @@ struct Registration {
|
|
|
50
51
|
std::vector<Registration<RCTNotificationHandler>> _notificationRegistrations;
|
|
51
52
|
std::vector<Registration<RCTRequestHandler>> _requestRegistrations;
|
|
52
53
|
std::vector<Registration<RCTConnectedHandler>> _connectedRegistrations;
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
+ (instancetype)sharedPackagerConnection
|
|
56
|
-
{
|
|
57
|
-
static RCTPackagerConnection *connection;
|
|
58
|
-
static dispatch_once_t onceToken;
|
|
59
|
-
dispatch_once(&onceToken, ^{
|
|
60
|
-
connection = [RCTPackagerConnection new];
|
|
61
|
-
});
|
|
62
|
-
return connection;
|
|
54
|
+
RCTBundleManager *_bundleManager;
|
|
63
55
|
}
|
|
64
56
|
|
|
65
57
|
- (instancetype)init
|
|
66
58
|
{
|
|
67
59
|
if (self = [super init]) {
|
|
68
60
|
_nextToken = 1; // Prevent randomly erasing a handler if you pass a bogus 0 token
|
|
69
|
-
_serverHostPortForSocket = [[RCTBundleURLProvider sharedSettings] packagerServerHostPort];
|
|
70
|
-
_serverSchemeForSocket = [[RCTBundleURLProvider sharedSettings] packagerScheme];
|
|
71
|
-
_socket = socketForLocation(_serverHostPortForSocket, _serverSchemeForSocket);
|
|
72
|
-
_socket.delegate = self;
|
|
73
|
-
[_socket start];
|
|
74
|
-
|
|
75
|
-
RCTPackagerConnection *const __weak weakSelf = self;
|
|
76
|
-
_bundleURLChangeObserver =
|
|
77
|
-
[[NSNotificationCenter defaultCenter] addObserverForName:RCTBundleURLProviderUpdatedNotification
|
|
78
|
-
object:nil
|
|
79
|
-
queue:[NSOperationQueue mainQueue]
|
|
80
|
-
usingBlock:^(NSNotification *_Nonnull __unused note) {
|
|
81
|
-
[weakSelf bundleURLSettingsChanged];
|
|
82
|
-
}];
|
|
83
|
-
_reloadWithPotentiallyNewURLObserver =
|
|
84
|
-
[[NSNotificationCenter defaultCenter] addObserverForName:RCTTriggerReloadCommandNotification
|
|
85
|
-
object:nil
|
|
86
|
-
queue:[NSOperationQueue mainQueue]
|
|
87
|
-
usingBlock:^(NSNotification *_Nonnull __unused note) {
|
|
88
|
-
[weakSelf bundleURLSettingsChanged];
|
|
89
|
-
}];
|
|
90
61
|
}
|
|
91
62
|
return self;
|
|
92
63
|
}
|
|
@@ -119,6 +90,32 @@ static RCTReconnectingWebSocket *socketForLocation(NSString *const serverHostPor
|
|
|
119
90
|
return [[RCTReconnectingWebSocket alloc] initWithURL:components.URL queue:queue];
|
|
120
91
|
}
|
|
121
92
|
|
|
93
|
+
- (void)startWithBundleManager:(RCTBundleManager *)bundleManager
|
|
94
|
+
{
|
|
95
|
+
_serverHostPortForSocket = [bundleManager.bundleConfig getPackagerServerHost];
|
|
96
|
+
_serverSchemeForSocket = [bundleManager.bundleConfig getPackagerServerScheme];
|
|
97
|
+
_socket = socketForLocation(_serverHostPortForSocket, _serverSchemeForSocket);
|
|
98
|
+
_socket.delegate = self;
|
|
99
|
+
[_socket start];
|
|
100
|
+
_bundleManager = bundleManager;
|
|
101
|
+
|
|
102
|
+
RCTPackagerConnection *const __weak weakSelf = self;
|
|
103
|
+
_bundleURLChangeObserver =
|
|
104
|
+
[[NSNotificationCenter defaultCenter] addObserverForName:RCTBundleURLProviderUpdatedNotification
|
|
105
|
+
object:nil
|
|
106
|
+
queue:[NSOperationQueue mainQueue]
|
|
107
|
+
usingBlock:^(NSNotification *_Nonnull __unused note) {
|
|
108
|
+
[weakSelf bundleURLSettingsChanged];
|
|
109
|
+
}];
|
|
110
|
+
_reloadWithPotentiallyNewURLObserver =
|
|
111
|
+
[[NSNotificationCenter defaultCenter] addObserverForName:RCTTriggerReloadCommandNotification
|
|
112
|
+
object:nil
|
|
113
|
+
queue:[NSOperationQueue mainQueue]
|
|
114
|
+
usingBlock:^(NSNotification *_Nonnull __unused note) {
|
|
115
|
+
[weakSelf bundleURLSettingsChanged];
|
|
116
|
+
}];
|
|
117
|
+
}
|
|
118
|
+
|
|
122
119
|
- (void)stop
|
|
123
120
|
{
|
|
124
121
|
std::lock_guard<std::mutex> l(_mutex);
|
|
@@ -144,7 +141,7 @@ static RCTReconnectingWebSocket *socketForLocation(NSString *const serverHostPor
|
|
|
144
141
|
return; // already stopped
|
|
145
142
|
}
|
|
146
143
|
|
|
147
|
-
NSString *const serverScheme = [
|
|
144
|
+
NSString *const serverScheme = [_bundleManager.bundleConfig getPackagerServerScheme];
|
|
148
145
|
if ([packagerServerHostPort isEqual:_serverHostPortForSocket] && [serverScheme isEqual:_serverSchemeForSocket]) {
|
|
149
146
|
return; // unchanged
|
|
150
147
|
}
|
|
@@ -161,7 +158,7 @@ static RCTReconnectingWebSocket *socketForLocation(NSString *const serverHostPor
|
|
|
161
158
|
- (void)bundleURLSettingsChanged
|
|
162
159
|
{
|
|
163
160
|
// Will only reconnect if `packagerServerHostPort` has actually changed
|
|
164
|
-
[self reconnect:[
|
|
161
|
+
[self reconnect:[_bundleManager.bundleConfig getPackagerServerHost]];
|
|
165
162
|
}
|
|
166
163
|
|
|
167
164
|
- (RCTHandlerToken)addNotificationHandler:(RCTNotificationHandler)handler
|
|
@@ -238,6 +238,7 @@ protected:
|
|
|
238
238
|
methodMap_["disableViewPreallocationAndroid"] = MethodMetadata {.argCount = 0, .invoker = __disableViewPreallocationAndroid};
|
|
239
239
|
methodMap_["enableAccessibilityOrder"] = MethodMetadata {.argCount = 0, .invoker = __enableAccessibilityOrder};
|
|
240
240
|
methodMap_["enableAccumulatedUpdatesInRawPropsAndroid"] = MethodMetadata {.argCount = 0, .invoker = __enableAccumulatedUpdatesInRawPropsAndroid};
|
|
241
|
+
methodMap_["enableAndroidAntialiasedBorderRadiusClipping"] = MethodMetadata {.argCount = 0, .invoker = __enableAndroidAntialiasedBorderRadiusClipping};
|
|
241
242
|
methodMap_["enableAndroidLinearText"] = MethodMetadata {.argCount = 0, .invoker = __enableAndroidLinearText};
|
|
242
243
|
methodMap_["enableAndroidTextMeasurementOptimizations"] = MethodMetadata {.argCount = 0, .invoker = __enableAndroidTextMeasurementOptimizations};
|
|
243
244
|
methodMap_["enableBridgelessArchitecture"] = MethodMetadata {.argCount = 0, .invoker = __enableBridgelessArchitecture};
|
|
@@ -420,6 +421,13 @@ private:
|
|
|
420
421
|
return bridging::callFromJs<bool>(rt, &T::enableAccumulatedUpdatesInRawPropsAndroid, static_cast<NativeReactNativeFeatureFlagsCxxSpec*>(&turboModule)->jsInvoker_, static_cast<T*>(&turboModule));
|
|
421
422
|
}
|
|
422
423
|
|
|
424
|
+
static jsi::Value __enableAndroidAntialiasedBorderRadiusClipping(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* /*args*/, size_t /*count*/) {
|
|
425
|
+
static_assert(
|
|
426
|
+
bridging::getParameterCount(&T::enableAndroidAntialiasedBorderRadiusClipping) == 1,
|
|
427
|
+
"Expected enableAndroidAntialiasedBorderRadiusClipping(...) to have 1 parameters");
|
|
428
|
+
return bridging::callFromJs<bool>(rt, &T::enableAndroidAntialiasedBorderRadiusClipping, static_cast<NativeReactNativeFeatureFlagsCxxSpec*>(&turboModule)->jsInvoker_, static_cast<T*>(&turboModule));
|
|
429
|
+
}
|
|
430
|
+
|
|
423
431
|
static jsi::Value __enableAndroidLinearText(jsi::Runtime &rt, TurboModule &turboModule, const jsi::Value* /*args*/, size_t /*count*/) {
|
|
424
432
|
static_assert(
|
|
425
433
|
bridging::getParameterCount(&T::enableAndroidLinearText) == 1,
|
|
@@ -3228,6 +3228,7 @@ public abstract interface class com/facebook/react/turbomodule/core/interfaces/T
|
|
|
3228
3228
|
public final class com/facebook/react/uimanager/BackgroundStyleApplicator {
|
|
3229
3229
|
public static final field INSTANCE Lcom/facebook/react/uimanager/BackgroundStyleApplicator;
|
|
3230
3230
|
public static final fun clipToPaddingBox (Landroid/view/View;Landroid/graphics/Canvas;)V
|
|
3231
|
+
public static final fun clipToPaddingBoxWithAntiAliasing (Landroid/view/View;Landroid/graphics/Canvas;Lkotlin/jvm/functions/Function0;)V
|
|
3231
3232
|
public static final fun getBackgroundColor (Landroid/view/View;)Ljava/lang/Integer;
|
|
3232
3233
|
public static final fun getBorderColor (Landroid/view/View;Lcom/facebook/react/uimanager/style/LogicalEdge;)Ljava/lang/Integer;
|
|
3233
3234
|
public static final fun getBorderRadius (Landroid/view/View;Lcom/facebook/react/uimanager/style/BorderRadiusProp;)Lcom/facebook/react/uimanager/LengthPercentage;
|
|
@@ -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<<b1469e448ca6f773a3095ec2cbf4bc00>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -114,6 +114,12 @@ public object ReactNativeFeatureFlags {
|
|
|
114
114
|
@JvmStatic
|
|
115
115
|
public fun enableAccumulatedUpdatesInRawPropsAndroid(): Boolean = accessor.enableAccumulatedUpdatesInRawPropsAndroid()
|
|
116
116
|
|
|
117
|
+
/**
|
|
118
|
+
* Enable antialiased border radius clipping for Android API 28 and below using manual masking with Porter-Duff compositing
|
|
119
|
+
*/
|
|
120
|
+
@JvmStatic
|
|
121
|
+
public fun enableAndroidAntialiasedBorderRadiusClipping(): Boolean = accessor.enableAndroidAntialiasedBorderRadiusClipping()
|
|
122
|
+
|
|
117
123
|
/**
|
|
118
124
|
* Enables linear text rendering on Android wherever subpixel text rendering is enabled
|
|
119
125
|
*/
|
|
@@ -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<<b2c2e874b05283e0ebd62899f7c417d8>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -34,6 +34,7 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
34
34
|
private var disableViewPreallocationAndroidCache: Boolean? = null
|
|
35
35
|
private var enableAccessibilityOrderCache: Boolean? = null
|
|
36
36
|
private var enableAccumulatedUpdatesInRawPropsAndroidCache: Boolean? = null
|
|
37
|
+
private var enableAndroidAntialiasedBorderRadiusClippingCache: Boolean? = null
|
|
37
38
|
private var enableAndroidLinearTextCache: Boolean? = null
|
|
38
39
|
private var enableAndroidTextMeasurementOptimizationsCache: Boolean? = null
|
|
39
40
|
private var enableBridgelessArchitectureCache: Boolean? = null
|
|
@@ -235,6 +236,15 @@ internal class ReactNativeFeatureFlagsCxxAccessor : ReactNativeFeatureFlagsAcces
|
|
|
235
236
|
return cached
|
|
236
237
|
}
|
|
237
238
|
|
|
239
|
+
override fun enableAndroidAntialiasedBorderRadiusClipping(): Boolean {
|
|
240
|
+
var cached = enableAndroidAntialiasedBorderRadiusClippingCache
|
|
241
|
+
if (cached == null) {
|
|
242
|
+
cached = ReactNativeFeatureFlagsCxxInterop.enableAndroidAntialiasedBorderRadiusClipping()
|
|
243
|
+
enableAndroidAntialiasedBorderRadiusClippingCache = cached
|
|
244
|
+
}
|
|
245
|
+
return cached
|
|
246
|
+
}
|
|
247
|
+
|
|
238
248
|
override fun enableAndroidLinearText(): Boolean {
|
|
239
249
|
var cached = enableAndroidLinearTextCache
|
|
240
250
|
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<<ccb22ddcd1a76b7c52cf0f1b23e6152b>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -56,6 +56,8 @@ public object ReactNativeFeatureFlagsCxxInterop {
|
|
|
56
56
|
|
|
57
57
|
@DoNotStrip @JvmStatic public external fun enableAccumulatedUpdatesInRawPropsAndroid(): Boolean
|
|
58
58
|
|
|
59
|
+
@DoNotStrip @JvmStatic public external fun enableAndroidAntialiasedBorderRadiusClipping(): Boolean
|
|
60
|
+
|
|
59
61
|
@DoNotStrip @JvmStatic public external fun enableAndroidLinearText(): Boolean
|
|
60
62
|
|
|
61
63
|
@DoNotStrip @JvmStatic public external fun enableAndroidTextMeasurementOptimizations(): 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<<30ca2685ceb6f2733531f5e7fce4416d>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -51,6 +51,8 @@ public open class ReactNativeFeatureFlagsDefaults : ReactNativeFeatureFlagsProvi
|
|
|
51
51
|
|
|
52
52
|
override fun enableAccumulatedUpdatesInRawPropsAndroid(): Boolean = false
|
|
53
53
|
|
|
54
|
+
override fun enableAndroidAntialiasedBorderRadiusClipping(): Boolean = false
|
|
55
|
+
|
|
54
56
|
override fun enableAndroidLinearText(): Boolean = false
|
|
55
57
|
|
|
56
58
|
override fun enableAndroidTextMeasurementOptimizations(): 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<<6d1a15e64f42cc7d8869300720276215>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -38,6 +38,7 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
38
38
|
private var disableViewPreallocationAndroidCache: Boolean? = null
|
|
39
39
|
private var enableAccessibilityOrderCache: Boolean? = null
|
|
40
40
|
private var enableAccumulatedUpdatesInRawPropsAndroidCache: Boolean? = null
|
|
41
|
+
private var enableAndroidAntialiasedBorderRadiusClippingCache: Boolean? = null
|
|
41
42
|
private var enableAndroidLinearTextCache: Boolean? = null
|
|
42
43
|
private var enableAndroidTextMeasurementOptimizationsCache: Boolean? = null
|
|
43
44
|
private var enableBridgelessArchitectureCache: Boolean? = null
|
|
@@ -253,6 +254,16 @@ internal class ReactNativeFeatureFlagsLocalAccessor : ReactNativeFeatureFlagsAcc
|
|
|
253
254
|
return cached
|
|
254
255
|
}
|
|
255
256
|
|
|
257
|
+
override fun enableAndroidAntialiasedBorderRadiusClipping(): Boolean {
|
|
258
|
+
var cached = enableAndroidAntialiasedBorderRadiusClippingCache
|
|
259
|
+
if (cached == null) {
|
|
260
|
+
cached = currentProvider.enableAndroidAntialiasedBorderRadiusClipping()
|
|
261
|
+
accessedFeatureFlags.add("enableAndroidAntialiasedBorderRadiusClipping")
|
|
262
|
+
enableAndroidAntialiasedBorderRadiusClippingCache = cached
|
|
263
|
+
}
|
|
264
|
+
return cached
|
|
265
|
+
}
|
|
266
|
+
|
|
256
267
|
override fun enableAndroidLinearText(): Boolean {
|
|
257
268
|
var cached = enableAndroidLinearTextCache
|
|
258
269
|
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<<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
|